| | --- |
| | language: en |
| | license: mit |
| | tags: |
| | - text-classification |
| | - intent-classification |
| | - contact-management |
| | - roberta |
| | base_model: roberta-base |
| | datasets: |
| | - custom |
| | model-index: |
| | - name: assistant-bot-intent-classifier |
| | results: |
| | - task: |
| | type: text-classification |
| | name: Intent Classification |
| | metrics: |
| | - type: accuracy |
| | value: 0.95 |
| | name: Accuracy |
| | --- |
| | |
| | # Intent Classifier for Contact Management Assistant Bot |
| |
|
| | This model is a fine-tuned RoBERTa-base model for intent classification in contact management tasks. |
| |
|
| | ## Model Description |
| |
|
| | - **Developed by:** Mykyta Kotenko |
| | - **Base Model:** [roberta-base](https://huggingface.co/roberta-base) by Facebook AI |
| | - **Task:** Text Classification (Intent Recognition) |
| | - **Language:** English |
| | - **License:** MIT |
| |
|
| | ## Supported Intents |
| |
|
| | This model recognizes 15+ different intents for contact management: |
| |
|
| | ### Contact Management |
| | - `add_contact` - Add new contact with name, phone, email, address, birthday |
| | - `edit_phone` - Update contact's phone number |
| | - `edit_email` - Update contact's email address |
| | - `edit_address` - Update contact's address |
| | - `delete_contact` - Delete a contact |
| | - `show_contact` - Show details of a specific contact |
| | - `show_contacts` - List all contacts |
| | - `search_contacts` - Search for contacts |
| |
|
| | ### Notes |
| | - `add_note` - Add a note to a contact |
| | - `show_notes` - Show all notes or notes for a contact |
| | - `edit_note` - Edit an existing note |
| | - `delete_note` - Delete a note |
| |
|
| | ### Tags |
| | - `add_tag` - Add a tag to a contact |
| | - `remove_tag` - Remove a tag from a contact |
| |
|
| | ### Other |
| | - `show_birthdays` - Show upcoming birthdays |
| | - `help` - Show help message |
| | - `exit` - Exit the application |
| |
|
| | ## Usage |
| |
|
| | ```python |
| | from transformers import AutoTokenizer, AutoModelForSequenceClassification, pipeline |
| | |
| | # Load model and tokenizer |
| | tokenizer = AutoTokenizer.from_pretrained("kms-engineer/assistant-bot-intent-classifier") |
| | model = AutoModelForSequenceClassification.from_pretrained("kms-engineer/assistant-bot-intent-classifier") |
| | |
| | # Create classification pipeline |
| | classifier = pipeline("text-classification", model=model, tokenizer=tokenizer) |
| | |
| | # Classify intent |
| | text = "add contact John Smith 212-555-0123 john@example.com" |
| | result = classifier(text) |
| | print(result) |
| | # Output: [{'label': 'add_contact', 'score': 0.98}] |
| | |
| | # More examples |
| | examples = [ |
| | "update phone for Sarah to 555-1234", |
| | "show all my contacts", |
| | "delete contact Bob", |
| | "add note for Alice: Call back tomorrow" |
| | ] |
| | |
| | for text in examples: |
| | result = classifier(text) |
| | print(f"{text} → {result[0]['label']} ({result[0]['score']:.2f})") |
| | ``` |
| |
|
| | ## Training Details |
| |
|
| | - **Base Model:** roberta-base |
| | - **Training Dataset:** Custom dataset with contact management commands |
| | - **Learning Rate:** 2e-5 |
| | - **Batch Size:** 16 |
| | - **Epochs:** 3-5 |
| | - **Optimizer:** AdamW |
| |
|
| | ## Intended Use |
| |
|
| | This model is designed for: |
| | - Contact management applications |
| | - Personal assistant bots |
| | - CRM systems with natural language interface |
| | - Voice-controlled contact management |
| |
|
| | ## Limitations |
| |
|
| | - Optimized for English language only |
| | - Best performance on contact management domain |
| | - May not generalize well to other domains without fine-tuning |
| |
|
| | ## Example Predictions |
| |
|
| | ``` |
| | Input: "add new contact John Doe 555-1234 john@email.com" |
| | Output: add_contact (confidence: 0.99) |
| | |
| | Input: "change email for Sarah to sarah@newmail.com" |
| | Output: edit_email (confidence: 0.97) |
| | |
| | Input: "show me all contacts" |
| | Output: show_contacts (confidence: 0.98) |
| | |
| | Input: "delete contact Bob" |
| | Output: delete_contact (confidence: 0.96) |
| | |
| | Input: "add tag 'work' to Alice" |
| | Output: add_tag (confidence: 0.95) |
| | ``` |
| |
|
| | ## Model Architecture |
| |
|
| | Based on RoBERTa (Robustly Optimized BERT Pretraining Approach): |
| | - 12 transformer layers |
| | - 768 hidden dimensions |
| | - 12 attention heads |
| | - ~125M parameters |
| |
|
| | ## Citation |
| |
|
| | If you use this model, please cite: |
| |
|
| | ```bibtex |
| | @misc{kotenko2025intentclassifier, |
| | author = {Kotenko, Mykyta}, |
| | title = {Intent Classifier for Contact Management Assistant Bot}, |
| | year = {2025}, |
| | publisher = {Hugging Face}, |
| | howpublished = {\url{https://huggingface.co/kms-engineer/assistant-bot-intent-classifier}}, |
| | note = {Based on RoBERTa by Facebook AI} |
| | } |
| | ``` |
| |
|
| | ## Acknowledgments |
| |
|
| | - **Base Model:** RoBERTa by Facebook AI Research |
| | - **Framework:** Hugging Face Transformers |
| | - **Inspiration:** Contact management and personal assistant applications |
| |
|
| | ## License |
| |
|
| | MIT License - See LICENSE file for details. |
| |
|
| | This model is a derivative work based on RoBERTa, which is licensed under MIT License by Facebook, Inc. |
| |
|
| | ## Contact |
| |
|
| | - **Author:** Mykyta Kotenko |
| | - **Repository:** [assistant-bot](https://github.com/kms-engineer/assistant-bot) |
| | - **Issues:** Please report issues on GitHub |
| |
|