AI-agenter · Lektion

Hierarkisk opdeling af opgaver

Overordnet mål -> delmål -> underdelmål — den eneste måde mennesker (og agenter) kan håndtere store opgaver på.

Lektion 1 af 415 trin

Hierarkisk opdeling af opgaver er en gratis AI-agenter-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i AI-agenter, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. AI-agenter-kurset indeholder 4 lektioner i alt.

Dele af denne lektion er endnu ikke oversat og vises på engelsk.

Når opgaver bliver store

"Omlæg godkendelsesmodulet" er for stort til én prompt. Agenten skal dele det op i mindre, håndterbare dele.

Hierarkisk opgavenedbrydning (HTD) er den måde, mennesker og agenter håndterer dette på.

Hierarkiet

  1. Mål — det overordnede formål
  2. Delmål — de vigtigste faser
  3. Opgaver — konkrete trin
  4. Handlinger — individuelle værktøjskald

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 documentation

LLM-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}
'''

Rekursiv nedbrydning

Hvis en opgave stadig er for stor, skal du dele den yderligere op. Stop, når en opgave kan rummes i ét LLM-trin (ca. 3-5 værktøjskald).

Hvornår skal du stoppe nedbrydningen?

Tommelregler:

  • Opgavebeskrivelsen kan stå i én sætning
  • Opgaven har klare acceptkriterier
  • Opgaven berører et lille antal filer
  • Opgaven kan verificeres med en specifik test

Træstrukturer

Repræsenter nedbrydningen som et træ. Hver node er en opgave med: beskrivelse, status (pending/running/done/failed) og undernoder:

@dataclass
class TaskNode:
    description: str
    status: Literal['pending', 'running', 'done', 'failed']
    children: list['TaskNode']
    result: str | None = None

Udfør i dybden først

Gå gennem træet i dybden først. Færdiggør hvert blad, før du går videre:

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'

Sammenlæg resultater

Når undernoderne er færdige, skal du sammenlægge resultaterne på det overordnede niveau:

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}').content

Vis træet for brugerne

Ved agenter, der kører længe, skal du vise brugerne træet med statusopdateringer i realtid. Det skaber tillid og gennemsigtighed:

[x] Add OAuth dependency
[x] Configure OAuth client
[~] Replace login endpoint   <-- in progress
[ ] Replace session middleware
[ ] Update tests

Tillad redigering af træet

Avancerede brugere vil måske springe opgaver over, tilføje opgaver eller ændre rækkefølgen. Understøt manuelle ændringer af plant træet.

Planlæg igen ved fejl

Hvis en underopgave gentagne gange mislykkes, skal du gå tilbage til den overordnede opgave og nedbryde den igen:

if failed_count(node) > 2:
    parent = node.parent
    parent.children = llm_replan(parent, failure_context=node.last_error)

Omkostninger ved nedbrydning

Hver nedbrydning er et LLM-kald. Caching hjælper — samme mål -> samme indledende nedbrydning.

Hvornår skal du stoppe opdelingen?

Hvornår skal agenten stoppe med at dele opgaver op?

Opsummering

Mål -> delmål -> opgaver -> handlinger. Byg et træ, udfør i dybden først, sammenlæg resultaterne, og planlæg igen ved fejl. Det er standardmønstret for arbejde med lang tidshorisont.

Gratis at komme i gang

Lær AI-agenter med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
60
Lektioner
239

Ofte stillede spørgsmål

Er lektionen “Hierarkisk opdeling af opgaver” gratis?

Ja — hele teksten til “Hierarkisk opdeling af opgaver” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af AI-agenter-kurset, skal du opgradere til CoddyKit PRO. AI-agenter-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Hierarkisk opdeling af opgaver”?

Overordnet mål -> delmål -> underdelmål — den eneste måde mennesker (og agenter) kan håndtere store opgaver på. Du øver dig i AI-agenter med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på AI-agenter?

Der kræves ingen tidligere erfaring. AI-agenter på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Hierarkisk opdeling af opgaver”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne AI-agenter-lektion?

Ja. Alle AI-agenter-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Hierarkisk opdeling af opgaver
  2. Målstakke og tilbagesporing
  3. Verdensmodeller og fremadrettet søgning
  4. Refleksions- og selvkritiksløkker
← Tilbage til AI-agenter