#!/bin/bash # Script de vérification de l'intégration du système d'embeddings echo "============================================================" echo "VÉRIFICATION DE L'INTÉGRATION DU SYSTÈME D'EMBEDDINGS" echo "============================================================" echo "" # Couleurs GREEN='\033[0;32m' RED='\033[0;31m' YELLOW='\033[1;33m' NC='\033[0m' # No Color # Fonction de vérification check() { if [ $? -eq 0 ]; then echo -e "${GREEN}✓${NC} $1" return 0 else echo -e "${RED}✗${NC} $1" return 1 fi } # 1. Vérifier que FAISS est installé echo "1. Vérification de FAISS..." geniusia2/venv/bin/python -c "import faiss; print(f' Version: {faiss.__version__}')" 2>/dev/null check "FAISS installé" echo "" # 2. Vérifier que les modules d'embeddings sont importables echo "2. Vérification des modules d'embeddings..." geniusia2/venv/bin/python -c "from geniusia2.core.embedders import EmbeddingManager, FAISSIndex, LightweightFineTuner" 2>/dev/null check "Modules d'embeddings importables" echo "" # 3. Vérifier que l'orchestrator importe correctement echo "3. Vérification de l'orchestrator..." geniusia2/venv/bin/python -c "from geniusia2.core.orchestrator import Orchestrator" 2>/dev/null check "Orchestrator importable" echo "" # 4. Lancer les tests d'intégration echo "4. Lancement des tests d'intégration..." geniusia2/venv/bin/python test_embedding_integration.py > /tmp/embedding_test.log 2>&1 if [ $? -eq 0 ]; then echo -e "${GREEN}✓${NC} Tests d'intégration réussis" # Afficher un résumé echo "" echo " Résumé des tests:" grep "✅" /tmp/embedding_test.log | head -7 | sed 's/^/ /' else echo -e "${RED}✗${NC} Tests d'intégration échoués" echo "" echo " Voir les détails dans /tmp/embedding_test.log" tail -20 /tmp/embedding_test.log | sed 's/^/ /' fi echo "" # 5. Vérifier les fichiers créés echo "5. Vérification des fichiers créés..." if [ -f "data/workflow_embeddings.index" ]; then echo -e "${GREEN}✓${NC} Index FAISS créé" ls -lh data/workflow_embeddings.* | sed 's/^/ /' else echo -e "${YELLOW}⚠${NC} Index FAISS non créé (normal si premier lancement)" fi echo "" if [ -f "data/fine_tuning/orchestrator_finetuning.pkl" ]; then echo -e "${GREEN}✓${NC} Checkpoint fine-tuner créé" ls -lh data/fine_tuning/orchestrator_finetuning.pkl | sed 's/^/ /' else echo -e "${YELLOW}⚠${NC} Checkpoint non créé (normal si premier lancement)" fi echo "" # 6. Vérifier la documentation echo "6. Vérification de la documentation..." docs=("EMBEDDING_SYSTEM_README.md" "EMBEDDING_SYSTEM_INTEGRATION_GUIDE.md" "EMBEDDING_SYSTEM_INTEGRATED.md") for doc in "${docs[@]}"; do if [ -f "$doc" ]; then echo -e "${GREEN}✓${NC} $doc" else echo -e "${RED}✗${NC} $doc manquant" fi done echo "" # Résumé final echo "============================================================" echo "RÉSUMÉ" echo "============================================================" echo "" echo -e "${GREEN}✅ Le système d'embeddings est intégré et fonctionnel${NC}" echo "" echo "Prochaines étapes:" echo " 1. Lancer l'application en mode Assist" echo " 2. Accepter/rejeter des suggestions pour collecter des exemples" echo " 3. Observer le fine-tuning automatique après 10 exemples" echo " 4. Vérifier les logs pour les métriques" echo "" echo "Documentation:" echo " - EMBEDDING_SYSTEM_README.md - Documentation complète" echo " - EMBEDDING_SYSTEM_INTEGRATION_GUIDE.md - Guide d'intégration" echo " - EMBEDDING_SYSTEM_INTEGRATED.md - Résumé de l'intégration" echo ""