| from transformers import pipeline |
| import gradio as gr |
|
|
| classifier = pipeline("zero-shot-classification", model="facebook/bart-large-mnli") |
|
|
| labels = ["service request", "complaint", "general discussion"] |
|
|
| def classify_text(text): |
| result = classifier(text, labels) |
| return {label: round(score, 4) for label, score in zip(result["labels"], result["scores"])} |
|
|
| demo = gr.Interface( |
| fn=classify_text, |
| inputs=gr.Textbox(lines=4, placeholder="Enter text to classify..."), |
| outputs=gr.Label(num_top_classes=3), |
| title="Zero-Shot Text Classifier", |
| description="Classify text into 'service request', 'complaint', or 'general discussion' using Hugging Face's zero-shot classification pipeline.", |
| ) |
|
|
| if __name__ == "__main__": |
| demo.launch(share=True) |
|
|