reflexion

让大模型从错误中学习,自动迭代改进任务表现

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开源模型 🍴 复刻 337 🐛 待处理 24 👀 关注 31
GitHub ↗
GitHub 星标 ★ 3414
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,完全免费,可自行部署使用。

项目预览

reflexion 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类开源模型
开发团队noahshinn
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Python
技术栈/模型ai,artificial-intelligence,llm
GitHub 星标★ 3414
上线时间2023-03-22 00:00:00
代码更新2025-01-14
仓库体积8.9 MB
本站数据更新2026-11-09
维护状态低维护
收录时间2026-08-09
浏览次数5

项目介绍

Reflexion 是一个来自 NeurIPS 2023 的研究框架,旨在通过语言反馈强化智能体的决策能力。它解决的是大语言模型在复杂任务中缺乏自我反思和迭代改进的问题。核心能力包括:将任务执行结果转化为自然语言反馈,并存储到记忆缓冲中,供后续尝试参考;支持多种任务类型,如代码生成、问答推理和决策制定;提供与 OpenAI API 的集成,便于快速实验。框架通过“行动-反馈-反思-重试”的循环,显著提升模型在失败后的自我修正能力,无需额外训练或微调。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 3414

使用教程

难度:进阶 约 15 分钟 部署方式:本地安装 7 步

环境要求

  • Python 环境(可执行 pip)
  • Git(用于克隆仓库)
  • OpenAI API Key(需设置 OPENAI_API_KEY)
  • 能运行 Jupyter Notebook 的环境(HotPotQA 实验)
  • 支持 Bash 的运行环境(AlfWorld 实验需执行 .sh 脚本)

安装与启动步骤

  1. 1克隆仓库

    克隆 reflexion 仓库并进入 HotPotQA 运行目录,后续所有命令都在该目录下执行。

    git clone https://github.com/noahshinn/reflexion && cd ./reflexion/hotpotqa_runs
  2. 2安装依赖

    安装 hotpotqa_runs 目录下 requirements.txt 中声明的模块依赖到当前 Python 环境。

    pip install -r requirements.txt
  3. 3设置API密钥

    把环境变量 OPENAI_API_KEY 设为你的 OpenAI API Key,框架依赖它调用模型。

    export OPENAI_API_KEY=sk-xxxxxxxx
  4. 4运行推理论实验

    打开对应 agent 类型的 notebook 运行实验:ReAct、CoT_context、CoT_no_context 三选一,每个实验随机抽 100 道 HotPotQA 题。

  5. 5进入决策实验目录

    AlfWorld 决策实验在 alfworld_runs 目录下进行,先克隆仓库并切换过去。

    git clone https://github.com/noahshinn/reflexion && cd ./reflexion/alfworld_runs
  6. 6配置运行参数

    编辑 ./run_reflexion.sh,设置 num_trials、num_envs、run_name、use_memory 等参数后再运行。

  7. 7启动决策实验

    执行脚本开始 AlfWorld 的迭代学习实验,日志会写入 ./root/<run_name>。

    ./run_reflexion.sh

关键配置

配置项必填说明示例
OPENAI_API_KEY是OpenAI API 密钥,框架调用模型必需sk-xxxxxxxx
num_trials是迭代学习(尝试)的步数5
num_envs是每个 trial 使用的任务-环境对数量6
run_name是本次运行的名称,决定日志输出目录名reflexion_run
use_memory否是否使用持久化记忆存储自我反思,关闭即为基线运行True
resume_dir否用于恢复上一次运行的日志目录./root/reflexion_run

如何确认成功

AlfWorld 实验运行后查看 ./root/<run_name> 下生成的日志;HotPotQA 实验直接在 notebook 中查看各题结果。

常见问题

Q:没有 OpenAI API Key 能跑吗?

A:不能。README 明确要求设置 OPENAI_API_KEY 环境变量,框架通过 OpenAI API 进行模型调用。

Q:怎么做基线对比实验?

A:在 ./run_reflexion.sh 中把 use_memory 设为关闭,即不使用持久化记忆存储自我反思,即为基线运行。

Q:运行中断了怎么继续?

A:把 is_resume 设为使用日志目录恢复上次运行,并将 resume_dir 指向上次的日志目录、start_trial_num 设为起始 trial 序号。

Q:HotPotQA 实验要跑几次?

A:每个实验由 HotPotQA distractor 数据集随机抽样的 100 道题组成,每题由指定 agent 类型配合 reflexion 策略尝试一次。

注意事项

  • README 原文的克隆命令为 git clone ... && cd ./hotpotqa_runs,实际需先进入克隆出的 reflexion 目录,本教程已按可用路径修正。
  • AlfWorld 决策实验的前置运行环境安装说明 README 未给出,需要自行准备好可运行的环境与任务数据。
  • API Key 建议用环境变量方式临时设置,不要写进代码或提交到仓库。
  • notebook 与日志(./root/<run_name>)中包含实验结果,注意保存路径便于后续恢复运行。

核心亮点

  • 提出 verbal RL 新范式,无需微调即可提升模型性能
  • 支持代码、推理、决策等多任务场景,通用性强
  • 代码结构清晰,易于集成到现有 LLM 工作流

不足之处

  • 依赖外部反馈信号,需人工或环境提供质量评估
  • 多次迭代会增加 API 调用成本,实时性受限

适用场景

  • 代码生成与修复:根据测试结果自动修正代码错误
  • 复杂推理任务:如数学题、逻辑问答的逐步改进
  • 交互式决策:如游戏或模拟环境中的策略调整

替代项目

Self-Refine、CRITIC、ReAct

上一篇:dbhub

下一篇:LLMAgentPapers

同类项目推荐

DeepSeekGUI 开源

把 DeepSeek 智能体装进桌面,聊天、改代码、管 Git 一站搞定

基于 DeepSeek Harness(DSH)的稳定桌面端,集成Git、内置浏览器与记忆功能 | DeepSeek H···

★ 274 2026-10-18
iloveAgents 开源

发现社区最棒的 AI 智能体,快速上手开发

AI agents worth falling in love with. Built by the community, loved by everyone.❤️

★ 150 2026-08-09
agent-plugins-spec 开源

统一智能体插件格式,让扩展一次打包到处运行

Agent Plugins — An open standard for packaging agent extensions as distributable pl···

★ 1440 2026-08-09
ai-pdf-chatbot-langchain 开源

合同报告丢进去,想问哪页问哪页,秒出答案

AI PDF chatbot agent built with LangChain & LangGraph

★ 16583 2026-08-09
Raven 开源

让 AI 代理记住一切,越用越聪明,自动完成深度研究。

The Harness of Harnesses • Super Agent: a trusted, persistent, self-evolving multi-···

★ 6116 2026-08-09
goose 开源

让AI直接动手干活,从写代码到跑测试全自动

an open source, extensible AI agent that goes beyond code suggestions - install, exe···

★ 56387 2026-08-09
matrix-core 开源

用 Go 打造能干活、会付钱的自主 AI 智能体

A stateful AI operating system for serious, long-horizon work.

★ 99 2026-08-09
paxm 开源

给 AI 编码代理装上持久记忆,跨工具不丢上下文。

Persistent, provider-neutral memory for Codex, Claude Code, OpenCode, Pi, and MCP co···

★ 283 2026-08-09
UnrealGenAISupport 开源

在虚幻引擎里一键接入 GPT、Claude 等大模型,快速打造智能 NPC 和生成式玩法。

Unreal Engine plugin for LLM/GenAI models & MCP UE5 server. OpenAI GPT-5, Deepseek R···

★ 683 2026-08-09