Spaces:
Sleeping
Sleeping
File size: 4,262 Bytes
d28c36c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
"""
Test simple pour évaluer les capacités MCP de Qwen2.5 0.5B
"""
import sys
import os
# Ajouter le chemin pour importer les modules locaux
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
def test_basic_capability():
"""Test de capacité MCP de base"""
print("=== Test de capacité MCP de base ===")
# Test 1: Compréhension des outils MCP
prompt1 = """
Tu es un assistant IA qui contrôle un jeu RTS via MCP.
Outils disponibles:
- get_game_state(): Obtenir l'état du jeu
- move_units(unit_ids, target_x, target_y): Déplacer des unités
Commande utilisateur: "Montre-moi l'état du jeu"
Réponds avec un objet JSON contenant l'appel d'outil à exécuter.
"""
print("Test 1 - Compréhension des outils:")
print(f"Prompt: {prompt1[:100]}...")
# Test 2: Traduction d'action simple
prompt2 = """
Tu es un assistant IA qui contrôle un jeu RTS via MCP.
Outils disponibles:
- move_units(unit_ids, target_x, target_y): Déplacer des unités
Commande utilisateur: "Déplace mon infanterie vers la position 100, 200"
Réponds avec un objet JSON contenant l'appel d'outil à exécuter.
"""
print("\nTest 2 - Traduction d'action:")
print(f"Prompt: {prompt2[:100]}...")
# Test 3: Planification complexe
prompt3 = """
Tu es un assistant IA qui contrôle un jeu RTS via MCP.
Outils disponibles:
- get_game_state(): Obtenir l'état du jeu
- move_units(): Déplacer des unités
- attack_unit(): Attaquer une unité ennemie
- build_building(): Construire un bâtiment
Commande utilisateur: "Je veux construire une base près du champ de minerai et la défendre avec des tourelles"
Décompose cette commande en une séquence d'appels d'outils MCP.
"""
print("\nTest 3 - Planification complexe:")
print(f"Prompt: {prompt3[:100]}...")
return {
"test1": {"prompt": prompt1, "expected": "get_game_state"},
"test2": {"prompt": prompt2, "expected": "move_units avec paramètres"},
"test3": {"prompt": prompt3, "expected": "séquence d'actions"}
}
def test_with_ai_model():
"""Test avec le modèle AI réel"""
try:
from ai_analysis import query_llm
print("\n=== Test avec le modèle Qwen2.5 0.5B ===")
# Test simple
test_prompt = """
Tu es un assistant IA. Réponds simplement avec "TEST_RÉUSSI" si tu comprends cette instruction.
"""
print("Test de connexion au modèle...")
response = query_llm(
prompt=test_prompt,
max_tokens=50,
temperature=0.1
)
print(f"Réponse du modèle: {response}")
if "TEST_RÉUSSI" in response:
print("✅ Modèle fonctionne correctement")
return True
else:
print("❌ Problème avec le modèle")
return False
except Exception as e:
print(f"❌ Erreur lors du test du modèle: {e}")
return False
def main():
"""Fonction principale"""
print("🔍 Évaluation des capacités MCP de Qwen2.5 0.5B")
print("=" * 60)
# Test de base
tests = test_basic_capability()
# Test avec le modèle
model_working = test_with_ai_model()
# Résumé
print("\n" + "=" * 60)
print("📊 RÉSUMÉ DE L'ÉVALUATION")
print("=" * 60)
print("\n1. CAPACITÉS MCP DE BASE:")
print(" ✅ Compréhension des outils MCP: Test défini")
print(" ✅ Traduction d'actions simples: Test défini")
print(" ✅ Planification complexe: Test défini")
print(f"\n2. ÉTAT DU MODÈLE: {'✅ OPÉRATIONNEL' if model_working else '❌ PROBLÈME'}")
print("\n3. RECOMMANDATIONS:")
if model_working:
print(" • Le modèle peut être utilisé pour la traduction MCP")
print(" • Commencez par des commandes simples")
print(" • Ajoutez une validation pour les actions complexes")
else:
print(" • Vérifiez que le modèle est téléchargé")
print(" • Assurez-vous que llama-cpp-python est installé")
print(" • Testez avec des commandes plus simples d'abord")
if __name__ == "__main__":
main() |