kms-engineer's picture
Update README.md
765fa9a verified
---
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 [email protected]"
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 [email protected]"
Output: add_contact (confidence: 0.99)
Input: "change email for Sarah to [email protected]"
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