Spaces:
Build error
Build error
| import gradio as gr | |
| class ComprehensiveExpertSystem: | |
| def __init__(self): | |
| self.domains = { | |
| # Études animales | |
| "animal": { | |
| "keywords": ["animal", "chat", "chien", "comportement", "vétérinaire"], | |
| "template": """En tant qu'expert vétérinaire/éthologue, voici l'analyse approfondie demandée : | |
| 1. ANALYSE COMPORTEMENTALE | |
| - Éthogramme détaillé de l'espèce | |
| - Patterns comportementaux spécifiques | |
| - Interactions sociales observées | |
| - Communication intraspécifique | |
| - Hiérarchie et territorialité | |
| 2. PHYSIOLOGIE & SANTÉ | |
| - Anatomie spécifique | |
| - Paramètres physiologiques normaux | |
| - Besoins nutritionnels détaillés | |
| - Pathologies fréquentes | |
| - Prévention sanitaire | |
| 3. HABITAT & ENVIRONNEMENT | |
| - Besoins environnementaux | |
| - Enrichissement recommandé | |
| - Espace vital optimal | |
| - Facteurs de stress | |
| - Aménagements spécifiques | |
| 4. RECOMMANDATIONS | |
| - Soins quotidiens optimaux | |
| - Programme d'enrichissement | |
| - Suivi vétérinaire | |
| - Prévention comportementale | |
| - Socialisation adaptée""" | |
| }, | |
| # Climat et environnement | |
| "climate": { | |
| "keywords": ["climat", "environnement", "écologie", "réchauffement"], | |
| "template": """En tant que climatologue expert, voici l'analyse détaillée : | |
| 1. DONNÉES CLIMATIQUES | |
| - Températures moyennes globales | |
| - Précipitations et événements extrêmes | |
| - Niveaux de CO2 atmosphérique | |
| - Impacts sur les écosystèmes | |
| - Points de basculement identifiés | |
| 2. CAUSES & MÉCANISMES | |
| - Sources d'émissions principales | |
| - Cycles naturels vs anthropiques | |
| - Rétroactions climatiques | |
| - Impacts sectoriels | |
| - Vulnérabilités systémiques | |
| 3. PROJECTIONS | |
| - Modèles climatiques utilisés | |
| - Scénarios d'évolution RCP | |
| - Impacts anticipés par secteur | |
| - Risques majeurs identifiés | |
| - Seuils critiques | |
| 4. STRATÉGIES & SOLUTIONS | |
| - Mesures d'atténuation prioritaires | |
| - Plans d'adaptation nécessaires | |
| - Actions individuelles et collectives | |
| - Innovations technologiques | |
| - Suivi et indicateurs""" | |
| }, | |
| # Art et création | |
| "art": { | |
| "keywords": ["art", "création", "artistique", "design", "esthétique"], | |
| "template": """En tant qu'expert en arts et création, voici l'analyse artistique détaillée : | |
| 1. ANALYSE TECHNIQUE | |
| - Médium et matériaux | |
| - Techniques employées | |
| - Composition et structure | |
| - Palette chromatique | |
| - Aspects formels | |
| 2. ANALYSE CRÉATIVE | |
| - Style et influences | |
| - Langage visuel | |
| - Symbolisme et métaphores | |
| - Narration visuelle | |
| - Impact émotionnel | |
| 3. CONTEXTE ARTISTIQUE | |
| - Mouvement artistique | |
| - Influences historiques | |
| - Position contemporaine | |
| - Dialogue culturel | |
| - Références artistiques | |
| 4. RÉALISATION | |
| - Processus créatif détaillé | |
| - Étapes de production | |
| - Outils nécessaires | |
| - Techniques spécifiques | |
| - Finitions recommandées""" | |
| }, | |
| # Développement technologique | |
| "tech": { | |
| "keywords": ["technologie", "développement", "logiciel", "application", "système"], | |
| "template": """En tant qu'expert en développement technologique, voici l'analyse technique détaillée : | |
| 1. ARCHITECTURE SYSTÈME | |
| - Stack technologique complète | |
| - Composants principaux | |
| - Interfaces et API | |
| - Base de données | |
| - Infrastructure cloud | |
| 2. DÉVELOPPEMENT | |
| - Méthodologie agile | |
| - Sprints planifiés | |
| - Tests automatisés | |
| - Intégration continue | |
| - Déploiement continu | |
| 3. SÉCURITÉ & PERFORMANCE | |
| - Tests de charge | |
| - Sécurisation des données | |
| - Optimisation des performances | |
| - Monitoring système | |
| - Backup et disaster recovery | |
| 4. MAINTENANCE & ÉVOLUTION | |
| - Documentation technique | |
| - Gestion des versions | |
| - Support utilisateur | |
| - Mises à jour planifiées | |
| - Roadmap évolutive""" | |
| }, | |
| # Secteur business | |
| "business": { | |
| "keywords": ["business", "entreprise", "stratégie", "management", "commercial"], | |
| "template": """En tant qu'expert business, voici l'analyse stratégique détaillée : | |
| 1. ANALYSE DE MARCHÉ | |
| - Taille du marché TAM/SAM/SOM | |
| - Analyse concurrentielle | |
| - Segments clients | |
| - Tendances sectorielles | |
| - Opportunités identifiées | |
| 2. STRATÉGIE BUSINESS | |
| - Positionnement stratégique | |
| - Proposition de valeur | |
| - Business model | |
| - Go-to-market | |
| - Avantages compétitifs | |
| 3. PLAN OPÉRATIONNEL | |
| - Structure organisationnelle | |
| - Processus clés | |
| - Ressources nécessaires | |
| - Timeline d'exécution | |
| - Budget prévisionnel | |
| 4. METRICS & KPIs | |
| - Indicateurs de performance | |
| - Tableaux de bord | |
| - ROI prévisionnel | |
| - Points de contrôle | |
| - Optimisation continue""" | |
| } | |
| # ... Continuez avec d'autres domaines d'expertise | |
| } | |
| def detect_domain(self, prompt): | |
| prompt_lower = prompt.lower() | |
| for domain, info in self.domains.items(): | |
| if any(keyword in prompt_lower for keyword in info["keywords"]): | |
| return domain | |
| return "general" | |
| def optimize_prompt(self, prompt, mode="expert", complexity=85): | |
| domain = self.detect_domain(prompt) | |
| if domain in self.domains: | |
| return self.domains[domain]["template"].format(subject=prompt) | |
| # Template général si aucun domaine spécifique n'est détecté | |
| return """Analyse experte détaillée pour : {sujet} | |
| 1. VISION GLOBALE | |
| - Contexte général | |
| - Objectifs principaux | |
| - Défis identifiés | |
| - Cadre d'analyse | |
| - Éléments critiques | |
| 2. MÉTHODOLOGIE | |
| - Approche structurée | |
| - Outils spécialisés | |
| - Ressources nécessaires | |
| - Planning détaillé | |
| - Gestion des risques | |
| 3. ANALYSE APPROFONDIE | |
| - Données clés | |
| - Facteurs critiques | |
| - Opportunités | |
| - Contraintes | |
| - Scénarios possibles | |
| 4. RECOMMANDATIONS | |
| - Solutions principales | |
| - Plan d'action | |
| - Ressources requises | |
| - Timeline proposée | |
| - Facteurs de succès | |
| 5. SUIVI & MESURE | |
| - KPIs spécifiques | |
| - Outils de tracking | |
| - Points de contrôle | |
| - Ajustements possibles | |
| - Optimisation continue""".format(sujet=prompt) | |
| def create_interface(): | |
| system = ComprehensiveExpertSystem() | |
| with gr.Blocks() as demo: | |
| gr.Markdown("# Optimiseur de Prompts IA Multi-Expert") | |
| with gr.Row(): | |
| with gr.Column(): | |
| input_text = gr.Textbox( | |
| label="Prompt Initial", | |
| placeholder="Décrivez votre demande...", | |
| lines=3 | |
| ) | |
| mode = gr.Radio( | |
| ["expert", "creative"], | |
| value="expert", | |
| label="Mode" | |
| ) | |
| complexity = gr.Slider( | |
| minimum=0, | |
| maximum=100, | |
| value=85, | |
| label="Niveau de Détail" | |
| ) | |
| optimize_btn = gr.Button("Optimiser") | |
| with gr.Column(): | |
| output = gr.Textbox( | |
| label="Prompt Optimisé", | |
| lines=15 | |
| ) | |
| optimize_btn.click( | |
| fn=system.optimize_prompt, | |
| inputs=[input_text, mode, complexity], | |
| outputs=output | |
| ) | |
| return demo | |
| if __name__ == "__main__": | |
| demo = create_interface() | |
| demo.launch() |