Core
AI Automation Agent
Un agent unique de triage — classification fermée, extraction, score, revue humaine. Aucune action externe irréversible.
- Problème
- Un texte ou un email arrive. Sans garde-fous, un agent envoie trop tôt. Il faut un cockpit utile avec un plafond d’autonomie.
- Pourquoi ça compte
- C’est la preuve Agents du Lab côté HITL, mesurée sur un gold set public. Un seul agent, tool use, pas un serveur MCP.
Stack: Python · FastAPI · Streamlit
Architecture
Flux documenté : texte ou email → preprocess → classify → extract → summarize → score → brouillon (email ou markdown) → gate human_review. Modes : suggestion_only, assisted, low_risk_auto.
Service layer modulaire (FastAPI + SQLite + Streamlit). Heuristiques par défaut ; un provider LLM est optionnel.
Données
Presets de démo dans le repo. Pas d’intégration Gmail/Slack réelle. Pas de données clients.
Approche
- Vocabulaire fermé pour la classe et les champs extraits.
- Score d’automation explicable, pas un envoi.
low_risk_autoréservé au reporting, après le labhitl-agent.v1(60 % de fausses autonomies).- Mots-clés en frontières de mot :
mercine match pluscommerciale.
Résultats
Run Lab hitl-agent.v2 (commit 19343e5, mêmes 20 cas gold). Classification 100 %. Extraction 96,25 %. Choix d’outil 100 %. Fausse autonomie 15 % (contre 60 % en v1). Revue humaine sur 80 % des cas.
Limites
MVP local, pas un déploiement. L’automation score reste une formule. Pas de MCP. Pas de mesure provider_live.
Learnings
Compter les mots ne suffit pas : un KPI dans un incident, ou une facture dans un rapport, doit perdre contre l’intention opérationnelle ou l’argent. L’autonomie se plafonne, elle ne se déduit pas du seul score.
Suite
Le même gold set avec un LLM allumé, dès qu’une clé est disponible.