Multi-agent – Implémentation du modèle de travail Orchestrator

DEV - 04/07
Introduction Dans le chapitre 6 (Réglage fin), nous nous sommes concentrés sur l'amélioration d'un seul système d'IA....

Introduction

Grâce au chapitre 6 (Réglage fin), nous nous sommes concentrés sur l'amélioration d'un système d'IA unique. Ce chapitre présente la conception multi-agents, dans laquelle plusieurs agents collaborent sur des tâches complexes.

Nos précédentes implémentations d'agent utilisaient une approche « un seul agent fait tout ». Pour les tâches complexes, confier l’entière responsabilité à un seul agent présente des limites.

[Agent unique (avant)] Utilisateur → Agent → Outils → Réponse Un agent prend toutes les décisions et exécute tout [Multi-agent (maintenant)] Utilisateur → Orchestrateur → Agent de recherche → Agent de génération de réponse → Agent de contrôle qualité → Réponse finale Chaque rôle est spécialisé et ils collaborent
Entrer en mode plein écran Quitter le mode plein écran

Le multi-agent est efficace lorsque :

  • Les tâches nécessitent plusieurs types d’expertise
  • Le traitement parallèle peut améliorer la vitesse
  • Vous souhaitez qu'un agent distinct gère le contrôle de qualité

Tendance 2026 : la recherche Anthropic montre que les architectures multi-agents améliorent les taux d'achèvement des tâches de 90 %. Le modèle Orchestrator × Worker est devenu le standard de production.

Architecture pour ce chapitre

Question de l'utilisateur ↓ [Orchestrateur] Analyse la tâche et délègue à deux travailleurs ↓ ↓ [Recherche d'un travailleur] [Quality Check Worker] Recherche pgvector Évalue la qualité de la réponse ↓ ↓ [Orchestreur] Intègre les résultats et génère la réponse finale ↓ Réponse finale
Entrer en mode plein écran Quitter le mode plein écran

Structure du répertoire

pgvector-tutorial/ ├── fichiers existants └── multiagent/ ├── search_worker.py # ★ Recherche d'un travailleur spécialisé ├── quality_worker.py # ★ Travailleur spécialisé en contrôle qualité ├── orchestrator.py # ★ Orchestrator └── 14_multiagent.py # ★ Script d'exécution
Entrer en mode plein écran Quitter le mode plein écran

1. Travailleur de recherche –multiagent/search_worker.py

Un travailleur concentré exclusivement sur la recherche pgvector. La responsabilité unique (recherche uniquement) simplifie l'invite et améliore la précision.

# multiagent/search_worker.py """ Travailleur spécialisé en recherche Rôle : Rechercher et renvoyer des documents à partir de pgvector Responsabilité : Rechercher uniquement (pas de génération de réponse) """ import sys import os sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) import psycopg2 from google import genai from google.genai import types from dotenv import load_dotenv import time load_dotenv() client = genai.Client(api_key=os.getenv("GEMINI_API_KEY")) conn = psycopg2.connect( host=os.getenv("DB_HOST"), port=os.getenv("DB_PORT"), dbname=os.getenv("DB_NAME"), user=os.getenv("DB_USER"), password=os.getenv("DB_PASSWORD"), ) cur = conn.cursor() SEARCH_WORKER_SYSTEM = """Vous êtes un spécialiste de la recherche de documents. Recherchez des documents liés à la question donnée à partir de pgvector et renvoyez les résultats tels quels. Contraintes : - Ne pas générer de réponses (retourner simplement les résultats de la recherche) - Si aucun résultat n'est trouvé, renvoyer "Aucun document pertinent trouvé" - Utiliser le filtrage par catégorie lorsq...
[Courte citation de 8% de l'article original]
Loading...