Skip to content
All papers

ReAct: Synergizing Reasoning and Acting in Language Models

Shunyu Yao, Jeffrey Zhao, Dian Yu, et al.2023ICLR 2023

Read it on arxiv.org(opens in a new tab)

Why this one

Read this after Chain-of-Thought Prompting Elicits Reasoning in Large Language Models, then read Toolformer and SGLang as two answers to the same problem. ReAct is the small idea that became the default agent loop: think a little, call something, observe the result, think again. What people get wrong is treating it as a product architecture or a magic prompt template. It is more useful than that and less glamorous. It shows that reasoning without contact with the world drifts, while tool use without an explicit scratchpad becomes brittle glue code. If you are building an assistant that searches, browses, queries a database, or drives an environment, this paper gives you the primitive loop before frameworks hide it behind decorators and YAML.

What to take away

  • Interleave thoughts, actions, and observations instead of doing all reasoning before tool use.
  • The observation channel is what lets the model repair bad plans instead of compounding them.
  • ReAct is a control loop pattern, not a benchmark trick or a full agent architecture.

Reads with

Where it lands in the course

Inference Engineering · Serving Agents