ReAct-agent

En ReAct-agent er en AI-agent, der skiftevis ræsonnerer (Reasoning) og handler (Acting) i en loop for at løse opgaver, ved at generere tanker, udføre handlinger og observere resultater.

Kort fortalt

En ReAct-agent er som en robot, der tænker højt, prøver noget, ser hvad der sker, og så tænker igen – gentagne gange – indtil opgaven er løst.

Kategori
teknik
Niveau
øvet

Betydninger

1
  1. 1

    En agentarkitektur, hvor en sprogmodel genererer ræsonnementstrin (tanker) og handlinger (værktøjskald) i en iterativ cyklus, og observationer fra handlingerne føres tilbage i modellen for at guide næste trin.

    • ReAct-agenten fik spørgsmålet 'Hvor højt er Eiffeltårnet?', genererede tanken 'Jeg skal slå højden op', kaldte søgeværktøjet og observerede resultatet '300 meter', og svarede derefter.Eksempel baseret på ReAct-papiret

Hvornår bruges det

ReAct-agenter bruges typisk i sprogmodel-baserede systemer, hvor modellen får adgang til eksterne værktøjer som søgemaskiner, regnemaskiner eller API'er. De anvendes til komplekse opgaver som informationssøgning, spørgsmål-besvarelse og automatisering af arbejdsgange, hvor modellen skal planlægge og tilpasse sig dynamisk.

Kodeeksempel

from langchain.agents import create_react_agent
from langchain.tools import tool

@tool
def search(query: str) -> str:
    """Simuleret søgning."""
    return f"Resultat for '{query}': 42"

agent = create_react_agent(llm, tools=[search])
agent.run("Hvad er meningen med livet?")

Eksempel på oprettelse af en ReAct-agent med LangChain. Agenten bruger et værktøj (search) og kører ReAct-loopet automatisk.

Oprindelse

Termen 'ReAct' er et akronym for 'Reasoning and Acting', introduceret af Shunyu Yao et al. i artiklen 'ReAct: Synergizing Reasoning and Acting in Language Models' (2023). Konceptet bygger videre på ideer fra Chain-of-Thought prompting og reinforcement learning.

Afledte ord

2

Kilder

2