Décomposition hiérarchique des tâches
Objectif principal → sous-objectifs → sous-sous-objectifs : c’est la seule façon dont les humains (et les agents) s’attaquent aux grandes tâches.
Décomposition hiérarchique des tâches est une leçon AI Agents gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage AI Agents, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours AI Agents comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
Quand les tâches deviennent volumineuses
« Refactorisez le module d’authentification » est trop vaste pour une seule invite. L’agent doit le décomposer en éléments plus petits et faciles à gérer.
La décomposition hiérarchique des tâches (HTD) est la méthode utilisée par les humains et les agents pour s’y attaquer.
La hiérarchie
- Objectif — le but de haut niveau
- Sous-objectifs — les phases principales
- Tâches — les étapes concrètes
- Actions — les appels d’outils individuels
Example Decomposition
Goal: Refactor authentication module to use OAuth.
Sub-goal 1: Set up OAuth dependencies
Task: Add dependency to requirements.txt
Task: Configure OAuth client
Sub-goal 2: Replace existing auth flow
Task: Replace login endpoint
Task: Replace session middleware
Task: Update tests
Sub-goal 3: Migration and rollout
Task: Write migration script
Task: Update documentationLLM-Driven Decomposition
DECOMPOSE_PROMPT = '''
Decompose this goal into 3-6 sub-goals. For each sub-goal, list 2-5 concrete tasks.
Return JSON: {sub_goals: [{name, tasks: [str]}]}
Goal: {goal}
'''Décomposition récursive
Si une tâche est encore trop vaste, décomposez IT davantage. Arrêtez-vous lorsqu’une tâche tient dans une seule étape de LLM (environ 3 à 5 appels d’outils).
Quand arrêter la décomposition
Heuristiques :
- La description de la tâche tient en une phrase
- La tâche possède des critères d’acceptation clairs
- La tâche concerne un petit nombre de fichiers
- La tâche peut être vérifiée par un test précis
Structures arborescentes
Représentez la décomposition sous forme d’arbre. Chaque nœud est une tâche comprenant une description, un état (en attente/en cours/terminée/échouée) et des enfants :
@dataclass
class TaskNode:
description: str
status: Literal['pending', 'running', 'done', 'failed']
children: list['TaskNode']
result: str | None = NoneExécuter en profondeur d’abord
Parcourez l’arbre en profondeur d’abord. Terminez chaque feuille avant de continuer :
def execute(node):
if node.children:
for child in node.children:
execute(child)
else:
node.status = 'running'
try:
node.result = run_leaf(node)
node.status = 'done'
except Exception as e:
node.status = 'failed'Agréger les résultats
Une fois les enfants terminés, utilisez aggregate au niveau du parent :
def aggregate(parent):
summaries = [c.result for c in parent.children if c.status == 'done']
parent.result = llm.invoke(f'Summarise these sub-task results: {summaries}').contentPrésenter l’arbre aux utilisateurs
Pour les agents dont l’exécution est longue, affichez l’arbre aux utilisateurs avec des mises à jour d’état en direct. Confiance et transparence :
[x] Add OAuth dependency
[x] Configure OAuth client
[~] Replace login endpoint <-- in progress
[ ] Replace session middleware
[ ] Update testsAutoriser la modification de l’arbre
Les utilisateurs avancés peuvent vouloir ignorer, ajouter ou réordonner des tâches. Prenez en charge la modification manuelle de l’arbre de planification.
Replanifier en cas d’échec
Si une sous-tâche échoue à plusieurs reprises, remontez au parent et décomposez-la à nouveau :
if failed_count(node) > 2:
parent = node.parent
parent.children = llm_replan(parent, failure_context=node.last_error)Coût de la décomposition
Chaque décomposition est un appel de LLM. La mise en cache aide : même objectif -> même décomposition initiale.
Quand arrêter de diviser
Quand l’agent doit-il arrêter de décomposer les tâches ?
Récapitulatif
Objectifs -> sous-objectifs -> tâches -> actions. Construisez un arbre, exécutez-le en profondeur d’abord, agrégez les résultats et replannifiez en cas d’échec. C’est le motif standard pour les travaux à long horizon.
Questions Fréquemment Posées
La leçon « Décomposition hiérarchique des tâches » est-elle gratuite ?
Oui — le texte complet de « Décomposition hiérarchique des tâches » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours AI Agents, passe à CoddyKit PRO. Le cours AI Agents comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Décomposition hiérarchique des tâches » ?
Objectif principal → sous-objectifs → sous-sous-objectifs : c’est la seule façon dont les humains (et les agents) s’attaquent aux grandes tâches. Tu pratiques AI Agents avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer AI Agents ?
Aucune expérience préalable n'est requise. AI Agents sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Décomposition hiérarchique des tâches » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon AI Agents ?
Oui. Chaque leçon AI Agents inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Décomposition hiérarchique des tâches
- Piles d’objectifs et retour en arrière
- Modèles du monde et anticipation
- Boucles de réflexion et d’autocritique