Instructions to use Danswer/intent-model with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Keras
How to use Danswer/intent-model with Keras:
# Available backend options are: "jax", "torch", "tensorflow". import os os.environ["KERAS_BACKEND"] = "jax" import keras model = keras.saving.load_model("hf://Danswer/intent-model") - Notebooks
- Google Colab
- Kaggle
| license: mit | |
| language: | |
| - en | |
| library_name: keras | |
| # Model Card for Model ID | |
| <!-- Provide a quick summary of what the model is/does. --> | |
| This model is used to classify the user-intent for the Danswer project, visit https://github.com/danswer-ai/danswer. | |
| ## Model Details | |
| Multiclass classifier on top of distilbert-base-uncased | |
| ### Model Description | |
| <!-- Provide a longer summary of what this model is. --> | |
| Classifies user intent of queries into categories including: | |
| 0: Keyword Search | |
| 1: Semantic Search | |
| 2: Direct Question Answering | |
| - **Developed by:** [DanswerAI] | |
| - **License:** [MIT] | |
| - **Finetuned from model [optional]:** [distilbert-base-uncased] | |
| ### Model Sources [optional] | |
| <!-- Provide the basic links for the model. --> | |
| - **Repository:** [https://github.com/danswer-ai/danswer] | |
| - **Demo [optional]:** [Upcoming!] | |
| ## Uses | |
| <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. --> | |
| This model is intended to be used in the Danswer Question-Answering System | |
| ## Bias, Risks, and Limitations | |
| <!-- This section is meant to convey both technical and sociotechnical limitations. --> | |
| This model has a very small dataset maintained by DanswerAI. If interested, reach out to danswer.dev@gmail.com. | |
| ### Recommendations | |
| <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. --> | |
| This model is intended to be used in the Danswer (QA System) | |
| ## How to Get Started with the Model | |
| ``` | |
| from transformers import AutoTokenizer | |
| from transformers import TFDistilBertForSequenceClassification | |
| import tensorflow as tf | |
| model = TFDistilBertForSequenceClassification.from_pretrained("danswer/intent-model") | |
| tokenizer = AutoTokenizer.from_pretrained("danswer/intent-model") | |
| class_semantic_mapping = { | |
| 0: "Keyword Search", | |
| 1: "Semantic Search", | |
| 2: "Question Answer" | |
| } | |
| # Get user input | |
| user_query = "How do I set up Danswer to run on my local environment?" | |
| # Encode the user input | |
| inputs = tokenizer(user_query, return_tensors="tf", truncation=True, padding=True) | |
| # Get model predictions | |
| predictions = model(inputs)[0] | |
| # Get predicted class | |
| predicted_class = tf.math.argmax(predictions, axis=-1) | |
| print(f"Predicted class: {class_semantic_mapping[int(predicted_class)]}") | |
| ``` |