3.8 KiB
Phase de test tri image
python main_llama.py <ticket_id> --skip-ticket-analysis --skip-image-analysis --skip-report
🧩 1. Préparation initiale (via main_llama.py)
🔹 Entrées :
-
ID du ticket (
T11143) -
Arguments éventuels :
--skip-*
🔹 Appels internes :
OrchestratorLlama.executer(ticket_id, config)
🧠 Pipeline complet orchestré
▶️ Étape 1 : Chargement des données
📁 Fichier : ticket_data_loader.py
-
Charge :
-
Données du ticket (
ticket.json) -
Captures d’écran (
*.png,*.jpg,*.gif)
-
-
Transmet :
-
ticket(dict) -
images(list[str]) ← chemins absolus
-
▶️ Étape 2 : Dédoublonnage
📁 Fichier : image_dedup.py
-
Entrée :
images -
Méthode : distance de Hamming
-
Sortie :
images_uniques(filtrées)
✅ À partir d’ici, on ne traite plus que les images utiles
▶️ Étape 3 : OCR + Traduction
📁 Fichiers : ocr_utils.py + translate_utils.py
Pour chaque image :
-
ocr_utils.extraire_texte_fr(image_path)- → texte brut FR
-
translate_utils.fr_to_en()- → traduction EN
-
translate_utils.en_to_fr()(optionnel)- → re-traduction EN→FR
-
translate_utils.sauvegarder_ocr_traduction()-
🔽 Sauvegarde :
-
ocr_traduction/<image>.json -
ocr_traduction.txt(append)
-
-
🤖 CHAÎNE D’AGENTS
▶️ Étape 4 : AgentImageSorter
📁 Fichier : agent_image_sorter.py
Reçoit :
-
1 image à la fois
-
OCR_FR + EN injecté dans prompt
Fonction :
-
Génère un prompt en anglais
-
Analyse via
llama_vision.interroger_avec_image()
Rend :
-
JSON avec :
-
is_relevant: bool -
reason -
raw_response -
ocr_fr,ocr_en
-
-
🔽 Sauvegarde :
-
tri_image_llama_*.json -
tri_image_llama_*.txt
-
▶️ Étape 5 : AgentImageAnalyser
📁 Fichier : agent_image_analyser.py
Reçoit :
-
Liste des images pertinentes
-
(via
image_sorter)
Fonction :
-
Prompt visuel spécifique par image
-
Analyse ce que montre l’image
-
Peut enrichir le contenu visuel à inclure dans le rapport
Rend :
-
Pour chaque image :
-
Résumé structuré
-
Mots-clés, erreurs détectées, éléments visuels
-
-
🔽 Sauvegarde :
-
analyse_image_llama_*.json -
analyse_image_llama_*.txt
-
▶️ Étape 6 : AgentTicketAnalyser
📁 Fichier : agent_ticket_analyser.py
Reçoit :
-
Texte du ticket
-
Analyse des images pertinentes
Fonction :
-
Génère des Q&R contextuelles
-
Résume le besoin utilisateur ou les problèmes détectés
Rend :
-
Liste de Q/R
-
Résumé en texte libre
-
🔽 Sauvegarde :
-
analyse_ticket_llama_*.json -
analyse_ticket_llama_*.txt
-
▶️ Étape 7 : AgentReportGenerator
📁 Fichier : agent_report_generator.py
Reçoit :
-
Analyse du ticket
-
Analyse des images
Fonction :
-
Génère un rapport final structuré
-
Peut créer des tableaux CSV/Q&A
Rend :
-
rapport_final_llama_*.json -
rapport_final_llama_*.txt -
CSV généré si demandé
🧾 Étapes transverses
Tous les agents :
-
Appellent
sauvegarder_donnees()depipeline_logger.py -
Le chemin est déterminé par
ticket_id,timestamp,base_dir="reports"→output/ticket_TXXXX/TXXXX_YYYYMMDD_HHMMSS/TXXXX_rapports/pipeline/