My_AI

mcp
SUMMARY

Personal, private & local AI assistant — 9 specialized agents (code, web, debug, security…), 1M token vector memory, RLHF feedback, document processing (PDF/DOCX/Excel), real-time web search and modern GUI. 100% local with Ollama. Your data never leaves your machine.

README.md



🤖 My AI — Une IA personnelle, confidentielle et locale

Puissante · Locale · Extensible

Python
Ollama
Platform
License
Context

Une IA qui tourne entièrement sur votre machine. Vos données ne quittent jamais votre ordinateur.

🚀 Démarrage rapide · 📖 Documentation · 🤖 Agents IA · 🔧 Caractéristiques Techniques


✨ Points Forts

💾 Mémoire Vectorielle Étendue
Jusqu'à 1 048 576 tokens stockés en mémoire interne (ChromaDB + SQLite).

🤖 9 Agents IA Spécialisés
Code, Debug, Web, Sécurité... et création d'agents personnalisés avec interface style n8n.

🧠 Mode Thinking
Pour les requêtes complexes, l'IA réfléchit étape par étape avant de répondre.

🔌 Intégration MCP (Model Context Protocol)
Connexion standardisée à des outils locaux et serveurs externes (fichiers, git, bases de données).

🌐 API REST Locale
Serveur FastAPI intégré pour piloter l'IA depuis n'importe quel outil externe.

🔍 Recherche Internet
Accès aux informations en temps réel via DuckDuckGo. Résumés automatiques inclus.

📄 Traitement de Documents
PDF, DOCX, Excel, CSV, Code, images — analyse contextuelle ultra-étendue avec compression intelligente.

💼 Workspaces & Sessions
Organisez vos conversations en espaces de travail isolés avec sauvegarde automatique.

🏗️ Base de Connaissances Structurée
Extraction et stockage automatique de faits, préférences, décisions depuis vos conversations.

📤 Export Multi-Format
Exportez vos conversations en Markdown, HTML ou PDF avec métadonnées complètes.


🖥️ Interface Utilisateur

Chat — Interface style Claude

Interface Chat

Fonctionnalité Détail
🎨 Design moderne Interface sombre élégante avec bulles de chat optimisées
🧠 Mode Thinking Widget de raisonnement animé pour les requêtes complexes
🖱️ Raccourcis clavier Entrée envoyer · Shift+Entrée nouvelle ligne · Ctrl+L clear
🎓 Feedback RLHF Notation 1-5 étoiles (☆☆☆☆☆) — feedback enregistré automatiquement
📂 Gestion de fichiers Glissez-déposez vos fichiers — ajout direct à la mémoire

Agents — Interface dédiée

Interface Agents
Interface Workflow

Fonctionnalité Détail
🤖 Vue d'ensemble Liste claire de tous les agents avec rôles et descriptions
Lancement rapide Démarrage d'agents spécialisés en un clic
🧩 Création d'agents personnalisés Interface de création d'agents sur mesure
🔄 Canvas de workflow visuel (style n8n) Nœuds connectables, zoom/pan, grille, minimap
📊 Statistiques et monitoring ressources CPU, RAM, GPU, VRAM, temps d'inférence et tokens/s

⚡ Fonctionnalités Principales

🤖 Système d'Agents IA Spécialisés

Agent Rôle
🐍 CodeAgent Génération et debug de code multi-langages
🔍 WebAgent Recherche Internet & Fact-Checking
📊 AnalystAgent Analyse de données et insights
CreativeAgent Rédaction et contenu créatif
🐛 DebugAgent Détection et correction d'erreurs
📋 PlannerAgent Planification de projets complexes
🛡️ SecurityAgent Audit de sécurité & vulnérabilités
OptimizerAgent Optimisation & Performance
🧬 DataScienceAgent Data Science & Machine Learning

🦙 Intégration Ollama — LLM 100% Local

  • Confidentialité totale : aucune donnée envoyée sur internet
  • Fallback intelligent : sans Ollama, l'IA bascule automatiquement en mode patterns/règles
  • Modèle personnalisable : température, contexte, system prompt via le Modelfile
  • Multi-modèles : texte (qwen3.5:2b, qwen3.5:4b, mistral...) et vision (minicpm-v, llava, llama3.2-vision...)

📚 FAQ Thématique Prioritaire

  • Placez vos fichiers d'enrichissement dans data/enrichissement/
  • Chargement automatique — toutes les Q/R sont fusionnées et accessibles instantanément
  • La FAQ répond avant tout autre modèle (priorité maximale)
  • Ajoutez, modifiez ou supprimez des fichiers à la volée

🔍 Recherche Internet Intelligente

  • Recherche web en temps réel via DuckDuckGo
  • Résumés automatiques et extraction de contenu avec BeautifulSoup
  • Traitement parallèle de plusieurs sources simultanément
  • Adaptation du format de réponse selon le type de recherche

🔌 Accès à tout le PC (Root System) via MCP Local

  • Outils locaux pour lire, écrire, déplacer des fichiers et créer des dossiers
  • Vérification rigoureuse des chemins complets retournés par les outils pour garantir une gestion précise des fichiers
  • Capacité à organiser les espaces de travail de manière autonome
  • Dialogue de confirmation avant toute suppression de fichier (sécurité utilisateur)

💥 Capacités Techniques

Capacité Valeur
💾 Mémoire vectorielle interne jusqu'à 1 048 576 tokens
📝 Résumé glissant automatique dès 24k tokens
📦 Compression texte jusqu'à 52:1
🔍 Recherche sémantique TF-IDF + similarité cosinus
🗃️ Base vectorielle ChromaDB (local)
  • Compression intelligente multi-niveaux : texte, code, documents
  • Chunking intelligent avec détection automatique de blocs logiques
  • Auto-optimisation de la mémoire selon l'usage
  • Métriques de compression exposées : ratios détaillés de 2.4:1 à 52:1

🏗️ Architecture du Projet

my_ai/
├── core/                                # Cœur de l'IA
│   ├── __init__.py
│   ├── agent_orchestrator.py            # Orchestrateur d'agents
│   ├── ai_engine.py                     # Moteur principal IA
│   ├── api_server.py                    # Serveur API REST (FastAPI)
│   ├── chat_orchestrator.py             # Orchestrateur de chat (ReAct + Plan & Execute)
│   ├── command_history.py               # Historique des commandes utilisateur
│   ├── compression_monitor.py           # Moniteur de compression (ratios, métriques)
│   ├── context_manager.py               # Gestion de contexte long
│   ├── conversation.py                  # Gestion des conversations
│   ├── conversation_exporter.py         # Export conversations (MD/HTML/PDF)
│   ├── data_preprocessing.py            # Prétraitement des données
│   ├── knowledge_base_manager.py        # Base de connaissances structurée
│   ├── language_detector.py             # Détection automatique de langue
│   ├── mcp_client.py                    # Client Model Context Protocol (Outils)
│   ├── rlhf_manager.py                  # RLHF intégré (feedback automatique)
│   ├── session_manager.py               # Gestionnaire de workspaces/sessions
│   ├── training_manager.py              # Training Manager moderne (pipeline complet)
│   ├── training_pipeline.py             # Pipeline d'entraînement local
│   └── web_cache.py                     # Cache web persistant (diskcache)
├── data/                                # Données persistantes
│   ├── enrichissement/                  # FAQ thématiques
│   ├── knowledge_base/                  # Base de faits (SQLite)
│   ├── web_cache/                       # Cache des recherches web
│   ├── workspaces/                      # Espaces de travail sauvegardés
│   └── data_collection.py               # Script de structuration des données
├── docs/                                # Documentations
│   └── examples/                        # Exemples d'utilisation
├── generators/                          # Générateurs de contenu
│   ├── __init__.py
│   ├── document_generator.py            # Génération docs avec contexte étendu
│   └── code_generator.py                # Génération code avec analyse ultra
├── interfaces/                          # Interfaces utilisateur
│   ├── gui/                             # Modules GUI (mixins)
│   │   ├── base.py                      # Base GUI + écran d'accueil + confirmation MCP
│   │   ├── file_handling.py             # Gestion fichiers (drag & drop, attachments)
│   │   ├── layout.py                    # Layout avec onglets (Chat + Agents)
│   │   └── message_bubbles.py           # Bulles de messages avec RLHF
│   ├── __init__.py
│   ├── agents_interface.py              # Interface Agents IA + pièces jointes
│   ├── cli.py                           # Interface ligne de commande
│   ├── gui_modern.py                    # Interface moderne (assemblage)
│   ├── modern_styles.py                 # Styles et thèmes modernes
│   ├── resource_monitor.py              # Monitoring ressources système (CPU/RAM/GPU)
│   ├── vscode_extension.py              # Extension VS Code
│   └── workflow_canvas.py               # Canvas visuel de workflow style n8n
├── memory/                              # Mémoire vectorielle
│   ├── vector_store/chroma_db/          # Base de données ChromaDB
│   ├── __init__.py
│   └── vector_memory.py                 # Mémoire vectorielle avec ChromaDB
├── models/                              # Modèles d'IA
│   ├── mixins/                          # Mixins (recherche internet, etc.)
│   ├── training_runs/                   # Enregistrements des runs d'entraînement
│   ├── weights/                         # Poids de modèles entraînés localement
│   ├── __init__.py
│   ├── advanced_code_generator.py       # Générateur de code avancé
│   ├── ai_agents.py                     # Agents IA spécialisés
│   ├── base_ai.py                       # Interface de base
│   ├── conversation_memory.py           # Mémoire conversationnelle avancée
│   ├── custom_ai_model.py               # Modèle IA principal avec intentions
│   ├── intelligent_code_orchestrator.py # Orchestrateur pour la génération de code
│   ├── intelligent_document_analyzer.py # Analyseur de documents intelligent
│   ├── internet_search.py               # Moteur de recherche internet
│   ├── knowledge_base.py                # Base de connaissances locale
│   ├── linguistic_patterns.py           # Reconnaissance d'intentions et patterns
│   ├── local_llm.py                     # Gestionnaire Ollama (détection + fallback)
│   ├── ml_faq_model.py                  # FAQ avec ML et fuzzy matching
│   ├── real_web_code_generator.py       # Générateur de Code Basé sur Recherche Web Pure
│   ├── reasoning_engine.py              # Moteur de raisonnement logique
│   ├── smart_code_searcher.py           # Recherche de code intelligente
│   ├── smart_web_searcher.py            # Système de Recherche Web Intelligent pour Code
│   └── ultra_custom_ai.py               # Modèle ULTRA
├── outputs/                             # Fichiers générés par l'IA
│   └── exports/                         # Conversations exportées (MD/HTML/PDF)
├── processors/                          # Processeurs de fichiers
│   ├── __init__.py
│   ├── pdf_processor.py                 # Traitement PDF avec chunking intelligent
│   ├── docx_processor.py                # Traitement DOCX avec compression
│   ├── excel_processor.py               # Traitement Excel (.xlsx, .xls) et CSV
│   └── code_processor.py                # Traitement de code avec analyse sémantique
├── tests/                               # Tests unitaires
├── tools/                               # Outils
├── utils/                               # Utilitaires
│   ├── __init__.py
│   ├── file_manager.py                  # Gestion fichiers
│   ├── file_processor.py                # Gestion traitement fichiers
│   ├── intelligent_calculator.py        # Calculateur intelligent
│   ├── logger.py                        # Gestion des logs
│   └── validators.py                    # Validateurs et utilitaires divers
├── main.py                              # Point d'entrée principal
├── Modelfile                            # Configuration modèle Ollama
├── requirements.txt                     # Dépendances
├── launch.bat                           # Script pour lancer le programme
├── clean_project.bat                    # Script pour supprimer les fichiers temporaires
├── create_custom_model.bat              # Script pour créer un modèle personnalisé Ollama
└── config.yaml                          # Configuration (inclut 7 sections v7.0.0)

🚀 Démarrage Rapide

1 · Cloner le dépôt

git clone https://github.com/gonicolas12/My_AI
cd My_AI

2 · Installer les dépendances

pip install -r requirements.txt

🎮 Monitoring GPU (Optionnel)

Le suivi GPU dans l'onglet Agents nécessite des packages supplémentaires selon votre carte graphique :

# NVIDIA (nécessite les drivers NVIDIA installés)
pip install pynvml GPUtil

# AMD (nécessite ROCm ou les drivers AMDGPU + Microsoft C++ Build Tools)
pip install pyamdgpuinfo

# Windows — tout GPU (infos basiques : nom, VRAM totale)
pip install wmi

Sans ces packages, l'application fonctionne normalement — les métriques GPU affichent simplement "N/A".

3 · Installer Ollama (Optionnel mais Recommandé)

Sans Ollama, l'IA fonctionne en mode fallback avec des patterns/règles.

# Télécharger depuis https://ollama.com/download, puis :

# Modèle texte (choisir selon votre RAM)
ollama pull qwen3.5:2b       # Ultra léger — réponses concises (4 GB RAM) 
ollama pull qwen3.5:4b       # Recommandé — léger et rapide (8 GB RAM)
ollama pull qwen3.5:9b       # Plus lourd — réponses détaillées (16 GB RAM)

# [OPTIONNEL] Modèle vision pour l'analyse d'images
ollama pull minicpm-v        # Recommandé — meilleur rapport qualité/vitesse (3 GB)
ollama pull llava            # Alternative (4.7 GB)

# Créer le modèle personnalisé
.\create_custom_model.bat

Changer de modèle : modifiez llm.local.default_model dans config.yaml et la ligne FROM dans le Modelfile avec la même valeur, puis relancez create_custom_model.bat. Les deux fichiers doivent toujours être cohérents.

4 · Lancer l'application

.\launch.bat

Sélectionnez l'option 1 (Interface Graphique), puis patientez.

💡 L'interface intègre des boutons de feedback sous chaque réponse de l'IA. Chaque feedback est automatiquement enregistré pour améliorer le modèle.

🧹 Nettoyage en cas de problème

.\clean_project.bat

Si vous observez des comportements inattendus ou des erreurs après plusieurs lancements, ce script supprime tous les fichiers temporaires (logs, caches, historiques) pour repartir sur une base propre.


🔑 Clé API GitHub (pour la génération de code sans Ollama)

Si Ollama n'est pas installé, la génération de code nécessite une clé API GitHub.

Générer un token

  1. Rendez-vous sur github.com/settings/tokens
  2. Cliquez sur "Generate new token" (classic ou fine-grained)
  3. Accordez les permissions nécessaires (repo, user, etc.)
  4. Copiez la clé générée

Configurer le token

$env:GITHUB_TOKEN="votre_token_github"

Sans clé, l'IA utilise automatiquement le backend local et les fonctionnalités GitHub sont désactivées. Consultez config.yaml pour personnaliser les backends et modèles.


📖 Documentation Complète

Document Description
🏗️ Architecture Structure technique détaillée
📦 Installation Guide d'installation complet
🔍 Recherche Internet Guide complet sur la recherche web
⚡ Optimisation Conseils et techniques d'optimisation locale
💾 Mémoire Vectorielle 1M Détails sur la gestion de la mémoire interne étendue
📋 Usage Exemples d'utilisation et workflows
📝 Changelog Historique des mises à jour
❓ FAQ Questions fréquentes et réponses détaillées
📄 Génération de Fichiers Guide sur la génération de fichiers via l'IA
🤖 Agents IA Documentation complète sur les agents spécialisés
🎨 Agents GUI Guide de l'interface graphique agents (canvas, monitoring)
🔌 Intégration MCP Guide sur le Model Context Protocol
🎓 Fonctionnalités Avancées RLHF, Training, Compression
💬 Feedback GUI Boutons de feedback dans l'interface graphique

🔧 Caractéristiques Techniques

Caractéristique Description
🎓 RLHF Apprentissage automatique depuis le feedback utilisateur
🔁 Pipeline d'entraînement Fine-tuning moderne avec monitoring temps réel
📦 Compression intelligente Ratios détaillés et métriques exposées
🔀 Hybride Local/Internet IA locale avec recherche internet optionnelle
🌐 API REST Serveur FastAPI intégré pour intégrations externes
🧠 Base de connaissances Extraction automatique de faits depuis les conversations
💼 Multi-workspaces Sessions isolées avec sauvegarde automatique
📤 Export multi-format Markdown, HTML et PDF avec métadonnées
🌍 12 langues Détection automatique de la langue de l'utilisateur
💻 Multiplateforme Windows · macOS · Linux
🪶 Léger Fonctionnement optimal sur machines modestes
🔩 Extensible Architecture modulaire
🔒 Sécurisé Données locales protégées

✨ Évolutions Futures

  • 🌐 Application Web
  • 💻 Extension VS Code
  • 🔗 Intégrations API tierces

Construit avec ❤️ pour rester local, privé et puissant.

Yorumlar (0)

Sonuc bulunamadi