mirror of
https://github.com/Ladebeze66/llm_lab_perso.git
synced 2025-12-15 19:26:52 +01:00
52 lines
1.8 KiB
Python
52 lines
1.8 KiB
Python
"""
|
|
Exemple de comparaison des différents modèles LLM sur un même prompt
|
|
"""
|
|
from core.factory import LLMFactory
|
|
import os
|
|
|
|
def compare_models(prompt, models=None):
|
|
"""Compare les réponses de différents modèles sur un même prompt"""
|
|
if models is None:
|
|
models = ["mistral7b", "codellama13b-python", "llama2-13b"]
|
|
|
|
results = {}
|
|
|
|
print(f"Comparaison des modèles sur le prompt:\n{prompt}\n")
|
|
print("=" * 80)
|
|
|
|
for model_name in models:
|
|
print(f"\nTesting {model_name}...")
|
|
try:
|
|
# Création du modèle via la factory
|
|
model = LLMFactory.create(model_name)
|
|
|
|
# Génération avec le prompt donné
|
|
result = model.generate(prompt)
|
|
results[model_name] = result
|
|
|
|
# Affichage d'une partie de la réponse
|
|
preview = result[:200] + "..." if len(result) > 200 else result
|
|
print(f"✓ Réponse ({len(result)} caractères):\n{preview}")
|
|
|
|
except Exception as e:
|
|
print(f"✗ Erreur: {str(e)}")
|
|
|
|
return results
|
|
|
|
if __name__ == "__main__":
|
|
# Création du dossier examples si nécessaire
|
|
os.makedirs("examples", exist_ok=True)
|
|
|
|
# Prompts de test pour différents cas d'usage
|
|
prompts = {
|
|
"génération_texte": "Écris un poème sur l'intelligence artificielle en 4 vers.",
|
|
"programmation": "Écris une fonction Python qui calcule la suite de Fibonacci de manière récursive.",
|
|
"raisonnement": "Si j'ai 5 pommes et que je donne 2 pommes à Marie, puis que Jean me donne 3 pommes, combien de pommes ai-je maintenant?"
|
|
}
|
|
|
|
# Exécution des tests
|
|
for task, prompt in prompts.items():
|
|
print(f"\n\n{'#' * 80}")
|
|
print(f"# TEST: {task}")
|
|
print(f"{'#' * 80}")
|
|
compare_models(prompt) |