AI Agent est un assistant intelligent basé sur LangChain avec une interface web moderne utilisant Bottle Framework. L'agent utilise Anthropic Claude comme LLM et peut effectuer des recherches sur Internet ou générer du code dans plusieurs langages, avec sauvegarde automatique des résultats.
- Interface utilisateur intuitive avec design responsive
- Chat en temps réel avec l'assistant IA
- Affichage formaté du code et des instructions
- Visualisation claire des résultats de recherche
- Recherches via Wikipedia et DuckDuckGo
- Synthèse intelligente des informations trouvées
- Sauvegarde automatique des résultats dans des fichiers
.txt - Citations et références des sources
- Génération de code dans tous les langages : Python, JavaScript, TypeScript, PHP, Java, HTML/CSS, C++, Bash, etc.
- Sauvegarde automatique dans le dossier
code_samples/ - Double fichier : code source + README avec instructions
- Prévention d'écrasement avec horodatage automatique
- Syntaxe colorée et formatage professionnel
- Recherche générale (DuckDuckGo)
- Recherche encyclopédique (Wikipedia)
- Sauvegarde intelligente avec extensions automatiques
- Gestion des fichiers avec organisation par dossiers
Ai/
├── main.py # Logique principale de l'agent IA
├── web.py # Serveur web Bottle Framework
├── tools.py # Définition des outils (recherche, wiki, sauvegarde)
├── requirements.txt # Dépendances Python
├── .env # Clés API (non versionné)
├── views/
│ └── index.tpl # Template HTML de l'interface
├── static/
│ └── css/
│ └── style.css # Styles CSS modernes
└── code_samples/ # Dossier auto-créé pour les fichiers générés
├── *.html
├── *.py
├── *_README.txt
└── ...git clone https://github.com/votre-projet/ai-agent-web.git
cd ai-agent-webpython -m venv .venv
source .venv/bin/activate # Linux/Mac
.venv\Scripts\activate # Windowspip install -r requirements.txtCréez un fichier .env à la racine :
ANTHROPIC_API_KEY="votre_cle_anthropic_ici"Pour exécuter les codes générés :
# Ubuntu/Debian
sudo apt install nodejs php openjdk-17-jdk
# macOS (Homebrew)
brew install node php openjdkpython web.pyOuvrez votre navigateur sur : http://127.0.0.1:8080
- Choisissez un mode : Research ou Coding
- Tapez votre demande dans la zone de texte
- Cliquez sur "Send Prompt"
- Visualisez les résultats formatés automatiquement
"Fais-moi un résumé des dernières découvertes en IA"
"Recherche l'histoire de Python et sauvegarde dans un fichier"
"Trouve des informations sur le réchauffement climatique"
"Crée une page HTML pour souhaiter un anniversaire"
"Génère un calculateur Python avec interface graphique"
"Fais un script JavaScript pour un carrousel d'images"
"Crée une API REST simple en PHP"
- Interface Web : Bottle Framework (Python)
- IA : Anthropic Claude 3.5 Haiku
- Outils : LangChain Community Tools
- Frontend : HTML5 + CSS3 + JavaScript vanilla
- Utilisateur → Interface web → Serveur Bottle
- Serveur → Agent LangChain → Claude AI
- Réponse IA → Parsing intelligent → Sauvegarde fichiers
- Interface ← JSON formaté ← Serveur
- Parsing intelligent : Gère différents formats de réponse IA
- Sauvegarde robuste : Prévention d'écrasement, extensions automatiques
- Debug intégré : Logs détaillés pour le développement
- Interface responsive : S'adapte à tous les écrans
- Téléchargements : Accès direct aux fichiers via
/downloads/<filename>
main.py: Logique IA et parsing des réponsesweb.py: Routes et API endpointstools.py: Outils LangChain (recherche, sauvegarde)views/index.tpl: Interface utilisateurstatic/css/style.css: Design et animations
GET /: Interface principalePOST /ai: Traitement des requêtes IAGET /downloads/<file>: Téléchargement des fichiers générésGET /files: Liste des fichiers disponibles