ReAct

ysymyth/ReAct

[ICLR 2023] ReAct: Synergizing Reasoning and Acting in Language Models

4.0k
Stars
385
Forks
5
Open issues
20
Watchers
Jupyter Notebook MITLast pushed Feb 6, 2024

Overview

ReAct is a technique for improving large language models' decision-making abilities by combining reasoning and action within prompting strategies.

Categories

Tags

Similar tools

Install

git clone https://github.com/ysymyth/ReAct

README

ReAct Prompting

GPT-3 prompting code for ICLR 2023 paper ReAct: Synergizing Reasoning and Acting in Language Models.

To use ReAct for more tasks, consider trying LangChain's zero-shot ReAct Agent.

Setup

You need to first have an OpenAI API key and store it in the environment variable OPENAI_API_KEY (see here).

Package requirement: openai, and install alfworld following instructions here.

Experiments

Run {hotpotqa,fever,alfworld,webshop}.ipynb. As HotpotQA and FEVER have large validation sets, we only run 500 random examples (see notebooks). We find PaLM and GPT-3 are better at different tasks.

HotpotQA (500 random dev, EM)FEVER (500 random dev, EM)AlfWorld (success rate)WebShop (success rate)
PaLM-540B (paper)29.462.270.940
GPT-3 (davinci-002)30.45478.435.8

Citation

@inproceedings{yao2023react,
  title = {{ReAct}: Synergizing Reasoning and Acting in Language Models},
  author = {Yao, Shunyu and Zhao, Jeffrey and Yu, Dian and Du, Nan and Shafran, Izhak and Narasimhan, Karthik and Cao, Yuan},
  booktitle = {International Conference on Learning Representations (ICLR) },
  year = {2023},
  html = {https://arxiv.org/abs/2210.03629},
}