AI-agenter med LangChain og autonome arbeidsflyter · leksjon

ReAct- og Plan-and-Execute-agenter

Forstå og implementer avanserte agentarkitekturer som kombinerer resonnering og handling for å fullføre komplekse oppgaver

Leksjon 1 av 611 trinn

ReAct- og Plan-and-Execute-agenter er en gratis leksjon i AI-agenter med LangChain og autonome arbeidsflyter på CoddyKit. Dette er leksjon 1 av 6. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i AI-agenter med LangChain og autonome arbeidsflyter, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i AI-agenter med LangChain og autonome arbeidsflyter inneholder totalt 6 leksjoner.

Utover enkle AI-agenter

Velkommen til avanserte agentarkitekturer! Så langt har De lært om grunnleggende agenter og kjeder i LangChain. Disse fungerer godt for enkle oppgaver.

Problemer fra den virkelige verden kan imidlertid være komplekse. De krever ofte at agenter resonnerer, tar beslutninger og utfører flere trinn for å nå et mål. Det er her avanserte arkitekturer kommer inn.

Introduksjon til ReAct-agenter

En kraftig avansert arkitektur er ReAct, som står for Reasoning and Acting. Den er inspirert av hvordan mennesker løser problemer.

  • Resonnering: Agenten tenker gjennom problemet, den nåværende tilstanden og hva som bør gjøres videre.
  • Handling: Agenten utfører deretter en handling, ofte ved å bruke et verktøy.

Denne syklusen gjør at agenter dynamisk kan tilpasse seg og løse komplekse oppgaver.

ReAct-løkken: tanke, handling, observasjon

ReAct-agenter arbeider i en iterativ løkke:

  • Tanke: Agenten genererer en tanke som forklarer resonneringen og hva den planlegger å gjøre.
  • Handling: Basert på tanken velger agenten et verktøy og inndataene til det (for eksempel «search» eller «calculator»).
  • Observasjon: Agenten mottar resultatet av verktøyets kjøring.

Denne løkken fortsetter til agenten mener at den har nok informasjon til å gi et endelig svar.

ReAct i praksis: en enkel flyt

La oss se på et forenklet Python-eksempel på hvordan logikken i en ReAct-agent kan flyte. Legg merke til hvordan den tenker, handler og observerer for å komme frem til en konklusjon.

def run_react_agent(query):
    print(f"User Query: {query}")
    print("Thought: I need to find the population of London. I will use a search tool.")
    print("Action: Use 'search_tool' with query 'population of London'")
    # Simulate tool output
    observation = "Observation: The population of London is ~9 million (2023 est.)."
    print(observation)
    print("Thought: I have the information. I can now answer the user.")
    print("Action: Respond with the observed information.")
    return observation.replace("Observation: ", "")

if __name__ == "__main__":
    result = run_react_agent("What is the population of London?")
    print(f"\nFinal Answer: {result}")

Forstå Plan-and-Execute

En annen kraftig arkitektur er Plan-and-Execute. I motsetning til ReAct, som er mer reaktiv, oppretter Plan-and-Execute-agenter først en omfattende plan.

De er spesielt effektive for oppgaver som er komplekse og består av flere trinn, og der en tydelig handlingsrekkefølge kan fastsettes på forhånd.

Komponentene Planner og Executor

Plan-and-Execute-agenter består vanligvis av to hoveddeler:

  • Planleggeren: Denne komponenten tar det opprinnelige målet og deler det opp i en sekvens med mindre, håndterbare trinn. Den fokuserer på strategi.
  • Utføreren: Denne komponenten tar deretter hvert trinn i planen og utfører det, ofte ved hjelp av bestemte verktøy. Den fokuserer på gjennomføring.

Denne separasjonen gjør det enklere å håndtere kompleksitet og sikrer en strukturert fremgangsmåte.

Plan-and-Execute: En strukturert arbeidsflyt

Her er et forenklet Python-eksempel som illustrerer arbeidsflyten i Plan-and-Execute. Legg merke til at målet først planlegges, og at hvert trinn deretter utføres i riktig rekkefølge.

def planner(goal):
    print(f"Goal: {goal}")
    print("Planner: Breaking down the goal into steps...")
    plan = [
        "Step 1: Find today's date.",
        "Step 2: Get the weather forecast for New York City for today.",
        "Step 3: Summarize the date and weather information."
    ]
    print(f"Plan created: {plan}")
    return plan

def executor(step):
    print(f"Executing: {step}")
    if "date" in step:
        return "Observation: Today's date is October 26, 2023."
    elif "weather" in step:
        return "Observation: New York weather: Sunny, 60°F."
    elif "summarize" in step:
        return "Observation: Summary: Oct 26, 2023, NYC is Sunny, 60°F."
    return "Observation: Step completed."

if __name__ == "__main__":
    my_goal = "Tell me today's date and weather in New York City."
    plan_steps = planner(my_goal)
    
    print("\n--- Execution Phase ---")
    for step in plan_steps:
        res = executor(step)
        print(res)

ReAct sammenlignet med Plan-and-Execute

Begge er kraftige, men egner seg for ulike situasjoner:

  • ReAct: Mer dynamisk og reaktiv. Egner seg best for oppgaver der fremgangsmåten ikke er klar på forhånd, og der det kreves utforsking og gjentatte beslutninger (for eksempel komplekse forskningsspørsmål).
  • Plan-and-Execute: Mer strukturert og systematisk. Egner seg best for oppgaver der en tydelig sekvens med trinn kan defineres (for eksempel bestilling av en flyreise med kjente trinn: søk, velg, bekreft).

Velg riktig arkitektur

Når du skal velge mellom ReAct og Plan-and-Execute, bør du vurdere:

  • Oppgavens kompleksitet: Er dette en tydelig, sekvensiell oppgave (Plan-and-Execute), eller en utforskende oppgave som krever problemløsing (ReAct)?
  • Forutsigbarhet: Kan du enkelt forutsi hvilke trinn som trengs (Plan-and-Execute), eller må agenten tilpasse seg dynamisk (ReAct)?
  • Feilhåndtering: Plan-and-Execute kan noen ganger være enklere å feilsøke fordi trinnene er definerte, mens den dynamiske naturen til ReAct kan være vanskeligere å spore.

Kort test: Agentarkitekturer

En AI-agent må løse et komplekst problem med flere trinn, der den nøyaktige rekkefølgen på handlingene ikke er kjent på forhånd, og der den kanskje må utforske ulike alternativer og reagere på mellomresultater.

Oppsummering: Avanserte agentarkitekturer

Godt jobbet! I denne leksjonen har du utforsket to avanserte agentarkitekturer:

  • ReAct (Reasoning and Acting): Agenter som tenker, handler og observerer trinnvis, og som egner seg for dynamiske og utforskende oppgaver.
  • Plan-and-Execute: Agenter som først lager en detaljert plan og deretter utfører hvert trinn, og som er ideelle for strukturerte arbeidsflyter med flere trinn.

Ved å forstå disse mønstrene kan du bygge mer robuste og intelligente AI-agenter for komplekse utfordringer. Deretter skal vi se på agenter som kan korrigere seg selv!

Gratis å komme i gang

Lær deg AI-agenter med LangChain og autonome arbeidsflyter med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
12
Leksjoner
50

Ofte stilte spørsmål

Er leksjonen «ReAct- og Plan-and-Execute-agenter» gratis?

Ja – hele teksten i «ReAct- og Plan-and-Execute-agenter» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av AI-agenter med LangChain og autonome arbeidsflyter-kurset, kan du oppgradere til CoddyKit PRO. Kurset i AI-agenter med LangChain og autonome arbeidsflyter inneholder totalt 6 leksjoner.

Hva lærer jeg i «ReAct- og Plan-and-Execute-agenter»?

Forstå og implementer avanserte agentarkitekturer som kombinerer resonnering og handling for å fullføre komplekse oppgaver Du øver på AI-agenter med LangChain og autonome arbeidsflyter med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med AI-agenter med LangChain og autonome arbeidsflyter?

Ingen tidligere erfaring er nødvendig. AI-agenter med LangChain og autonome arbeidsflyter på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 6.

Hvor lang tid tar leksjonen «ReAct- og Plan-and-Execute-agenter»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne AI-agenter med LangChain og autonome arbeidsflyter-leksjonen?

Ja. Alle AI-agenter med LangChain og autonome arbeidsflyter-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. ReAct- og Plan-and-Execute-agenter
  2. Hierarkisk agentutforming
  3. Agenter for selvkorrigering og refleksjon
  4. Kognitive arkitekturer for agenter
  5. Mønstre for samarbeid mellom flere agenter
  6. Hybride agentsystemer
← Tilbake til AI-agenter med LangChain og autonome arbeidsflyter