import gradio as gr, pickle, random from sentence_transformers import SentenceTransformer with open("intent_model.pkl","rb") as f: data = pickle.load(f) clf = data["classifier"] id2label = data["id2label"] embedder = SentenceTransformer(data["embed_model"]) intents_meta = data["intents_meta"] def predict(text): emb = embedder.encode([text]) pred = clf.predict(emb)[0] intent = id2label[pred] meta = intents_meta[intent] return f"Intent: {intent}\nResponse: {random.choice(meta['responses'])}\nAction: {meta['action']}" gr.Interface(fn=predict, inputs="text", outputs="text", title="🧠 Jarvis Intent Classifier").launch()