# LLM-Ticket3 Système d'analyse de tickets de support avec LLM pour l'extraction d'informations pertinentes. ## Description Ce projet fournit une solution pour analyser des tickets de support en utilisant des modèles de langage (LLM). Les fonctionnalités principales sont : - Extraction de tickets depuis Odoo - Filtrage des images pertinentes - Analyse détaillée des images en contexte - Extraction des questions et réponses des échanges - Génération d'un rapport unifié au format JSON/Markdown ## Architecture Le projet suit une architecture modulaire avec : - **agents/** : Modules pour les différents agents spécialisés - `agent_base.py` : Classe abstraite pour tous les agents - `agent_filtre_images.py` : Agent pour filtrer les images pertinentes - `agent_analyse_image.py` : Agent pour analyser les images en détail - `agent_question_reponse.py` : Agent pour extraire questions/réponses - **llm/** : Modules pour les interfaces avec les LLM - `llm_base.py` : Classe abstraite pour les LLM - `mistral.py` : Implémentation pour l'API Mistral - `pixtral.py` : Implémentation pour l'API Pixtral (avec capacités vision) - **utils/** : Utilitaires pour le traitement des tickets - `ticket_manager.py` : Gestion de l'extraction des tickets depuis Odoo - `ticket_analyzer.py` : Coordination de l'analyse par les agents - **main.py** : Script principal ## Installation 1. Clonez le dépôt : ```bash git clone https://github.com/votre-user/llm-ticket3.git cd llm-ticket3 ``` 2. Installez les dépendances : ```bash pip install -r requirements.txt ``` 3. Copiez et configurez le fichier de configuration : ```bash cp config.json.example config.json # Éditez config.json avec vos informations ``` ## Utilisation ### Analyser un ticket ```bash python main.py T12345 --config config.json --output ./resultats ``` Où : - `T12345` est le code du ticket à analyser - `--config` (optionnel) spécifie le chemin du fichier de configuration - `--output` (optionnel) spécifie le répertoire de sortie ### Analyser un ticket déjà extrait Si vous avez déjà extrait les données d'un ticket et souhaitez uniquement refaire l'analyse : ```bash python main.py T12345 --skip-extraction ``` ## Sortie L'analyse génère : 1. `ticket_T12345/rapport/ticket_analysis.json` - Données d'analyse complètes en JSON 2. `ticket_T12345/rapport/ticket_analysis.md` - Rapport formaté en Markdown 3. `ticket_T12345/questions_reponses.md` - Tableau des questions et réponses ## Dépendances - Python 3.8+ - requests - mistralai (API client) ## Configuration Le fichier `config.json` contient : ```json { "odoo": { "url": "https://example.odoo.com", "db": "database_name", "username": "user@example.com", "api_key": "your_odoo_api_key_or_password" }, "llm": { "api_key": "your_mistral_api_key" }, "output_dir": "output" } ```