Download examples/basic_inference.py from RavinduSen/JaneGPT-v2: direct link, hf CLI and curl.
- Browser
- Download file 1.77 kB
-
https://huggingface.co/RavinduSen/JaneGPT-v2/resolve/main/examples/basic_inference.py
- Command line
-
hf download hf://RavinduSen/JaneGPT-v2/examples/basic_inference.py
-
curl -L -o basic_inference.py https://huggingface.co/RavinduSen/JaneGPT-v2/resolve/main/examples/basic_inference.py
1.77 kB
| """ | |
| Basic inference example for JaneGPT v2 Intent Classifier. | |
| """ | |
| import sys | |
| import os | |
| sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | |
| from model.classifier import JaneGPTClassifier | |
| def main(): | |
| # Load model | |
| classifier = JaneGPTClassifier() | |
| print(f"Model loaded: {classifier}") | |
| print(f"Supported intents: {len(classifier.get_supported_intents())}\n") | |
| # Test commands | |
| test_inputs = [ | |
| "turn up the volume", | |
| "make it louder", | |
| "set volume to 50", | |
| "mute", | |
| "turn down the brightness", | |
| "open chrome", | |
| "play shape of you on youtube", | |
| "search for python tutorials", | |
| "set a reminder for 10 minutes", | |
| "take a screenshot", | |
| "read this for me", | |
| "explain what's on my screen", | |
| "undo that", | |
| "shut down", | |
| "hello", | |
| "what time is it", | |
| ] | |
| print(f"{'Input':<45} {'Intent':<20} {'Confidence':<10}") | |
| print("-" * 75) | |
| for text in test_inputs: | |
| intent, confidence = classifier.predict(text) | |
| print(f"{text:<45} {intent:<20} {confidence:.1%}") | |
| # Context-aware classification | |
| print("\n--- Context-Aware ---") | |
| # After volume up, user says "not enough" | |
| intent, conf = classifier.predict( | |
| "not enough", | |
| context={"last_intent": "volume_up"} | |
| ) | |
| print(f"{'not enough [after volume_up]':<45} {intent:<20} {conf:.1%}") | |
| # Top-k predictions | |
| print("\n--- Top-3 Predictions ---") | |
| results = classifier.predict_top_k("play something nice", k=3) | |
| for intent, conf in results: | |
| print(f" {intent}: {conf:.1%}") | |
| if __name__ == "__main__": | |
| main() |