# Guide : Intégration et Utilisation des LLM avec Agents Dynamiques dans Obsidian --- ## Objectif du guide - Installer et configurer les LLM localement avec Ollama - Intégrer ces modèles dans Obsidian grâce à des agents dynamiques - Utiliser tes notes comme base de données intelligente - Créer plusieurs agents spécialisés pour enrichir ton workflow de prise de notes Le tout en restant simple, modulaire, réutilisable. --- ## I. Prérequis ### 1. Systèmes compatibles - Windows 10/11 (avec WSL recommandé) ou Linux ### 2. Logiciels à installer - [Ollama](https://ollama.com/) (pour exécuter les LLM en local) - Python 3.10+ - Obsidian (avec le plugin "Templater" ou "Custom Plugins" activé) --- ## II. Installer et tester les modèles LLM avec Ollama ### 1. Installation d’Ollama ```bash # Linux/WSL curl -fsSL https://ollama.com/install.sh | sh # macOS (brew) brew install ollama ``` ### 2. Lancer un modèle (exemple : mistral) ```bash ollama run mistral ``` Pour télécharger un autre modèle : ```bash ollama pull codellama:13b-python ``` Liste des modèles : [https://ollama.com/library](https://ollama.com/library) ### 3. Vérification API locale ```bash curl http://localhost:11434 ``` --- ## III. Créer des agents dynamiques spécialisés pour Obsidian ### Structure minimale d’un agent ```python from base_agent import BaseAgent agent = BaseAgent("RestructurationObsidian", model="mistral") agent.set_role("Tu restructures les notes Markdown pour les rendre lisibles et organisées.") note = "cette note est en désordre. elle n’a pas de titres, ni de sections." print(agent.process(note)) ``` ### Exemples d’agents à créer |Nom de l’agent|Rôle assigné| |---|---| |AnalyseurStructure|Analyse la structure de la note| |CorrecteurMarkdown|Corrige orthographe + mise en page| |SuggestionTagsLiens|Propose des tags internes et liens| |OptimiseurObsidian|Propose des améliorations visuelles (CSS/templating)| |ClasseurNotes|Classe la note dans un dossier pertinent| ### Organisation recommandée dans Obsidian - Dossier `scripts/agents/` - Fichier `agents_runner.py` exécutable via script shell ou Templater ```bash python agents/agents_runner.py "notes/ma_note.md" ``` ### Exemple via plugin Templater Crée un template qui appelle un script : ```markdown <% tp.system.run('python3 agents/agents_runner.py "' + tp.file.path(true) + '"') %> ``` --- ## IV. Exploitation avancée avec AgentChain Tu peux enchaîner plusieurs agents pour automatiser un traitement complet : ```python from agent_chain import AgentChain a1 = BaseAgent("analyse", model="mistral") a2 = BaseAgent("structure", model="mistral") a3 = BaseAgent("correction", model="mistral") a1.set_role("Analyse le contenu de la note.") a2.set_role("Restructure la note.") a3.set_role("Corrige l’orthographe.") chain = AgentChain(chain_mode=True) chain.add(a1) chain.add(a2) chain.add(a3) with open("notes/ma_note.md") as f: print(chain.run(f.read())) ``` --- ## V. Astuces pratiques - Utilise le tag YAML `#traitement_ai` dans tes notes à traiter automatiquement - Stocke les retours d’agent dans un champ frontmatter YAML ou un fichier à part - Utilise le modèle `phi` pour les agents rapides, `mistral` pour polyvalence, `codellama` uniquement si tu traites du code Markdown --- ## VI. À suivre Tu peux combiner cette configuration avec un système de base de données vectorielle RAG plus tard pour l’indexation des notes.