đïž De QA Bot Ă Task Agent : Un Guide d'Architecture
TL;DR : ArrĂȘtez de construire des chatbots qui ne font que rĂ©pondre Ă des questions. Commencez Ă construire des agents de tĂąches qui accomplissent rĂ©ellement le travail.
Ce guide explique le changement architectural des bots QA monolithiques vers des agents de tĂąches utilisant des rĂšgles statiques, des compĂ©tences dynamiques et des crochets dĂ©terministes â avec des exemples de code concrets et des rĂ©fĂ©rences open-source.

1. Le Changement Fondamental : QA Bot â Task Agent
La plupart des systÚmes d'IA aujourd'hui sont encore des bots QA bourrés de contexte :
⹠Ils répondent bien aux questions
âą Ils hallucinent sous pression
⹠Ils manquent de garanties concernant l'exécution, la sécurité et la cohérence
đĄ L'idĂ©e clĂ© : Ne pas Ă©tendre le contexte. Le structurer.
2. L'Architecture Ă Trois Couches
đ§± 1. Contexte Statique â RĂšgles (Toujours Actif)
- âąModĂšle mental : Manuel de l'employĂ©
- âąToujours chargĂ©
- âąDĂ©finit l'identitĂ©, les normes de codage, les contraintes comportementales
- âąEmpĂȘche les hallucinations et la dĂ©rive de style
- âąPetit, stable, modifiable par l'homme
đ ïž 2. Contexte Dynamique â CompĂ©tences (Ă la Demande)
- âąModĂšle mental : BoĂźte Ă outils
- âąChargĂ© uniquement lorsque nĂ©cessaire
- âąChaque compĂ©tence est une capacitĂ© autonome
- âąGarde la fenĂȘtre de contexte propre
â 3. Crochets DĂ©terministes â Garde-fous
- âąModĂšle mental : Couche de sĂ©curitĂ© + conformitĂ©
- âąPas probabiliste
- âąS'exĂ©cute avant / aprĂšs le raisonnement LLM
- âąFait respecter des rĂšgles qui ne doivent jamais Ă©chouer
3. Structure de Projet Recommandée
my-task-agent/ âââ .cursorrules âââ main.py âââ tools/ â âââ linear_mcp.py âââ README.md
4. Exemple de Contexte Statique : .cursorrules
# RĂLE Vous ĂȘtes un IngĂ©nieur Python Senior axĂ© sur les systĂšmes de production. # RĂGLES - NE JAMAIS utiliser print() pour le dĂ©bogage - TOUJOURS indiquer le type des fonctions - Proposer un plan si plus de 3 fichiers sont touchĂ©s # COMPORTEMENT - Soyez concis - Posez des questions de clarification si nĂ©cessaire RĂ©fĂ©rence : https://github.com/PatrickJS/awesome-cursorrules
5. Exemple de Compétence Dynamique (MCP)
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("DevTools")
@mcp.tool()
def create_linear_ticket(title: str, priority: str = "low") -> str:
ticket_id = f"LIN-{hash(title) % 10000}"
return f"Ticket créé {ticket_id} avec priorité={priority}"
if __name__ == "__main__":
mcp.run()
Référence : https://github.com/modelcontextprotocol/python-sdk6. Exemple de Crochet Déterministe
def compliance_check_hook(state):
user_input = state["messages"][-1].content.lower()
if "password" in user_input or "api_key" in user_input:
return {"error": "Violation de sécurité détectée"}
return agent_node(state)
Référence : https://langchain-ai.github.io/langgraph/Si votre agent ne répond qu'à des questions, c'est un chatbot. S'il exécute le travail de maniÚre fiable, c'est un Agent de Tùches.
Take the next step
Putting what you read into practice.
Articles Connexes
DS & AI Engineering
Comment nous avons construit un systĂšme de production de contenu AI (pas seulement des outils)

Practical AI Platform: How Mid-Sized Tech Companies Win with AI
