Coding Agent 老是重复读文件、改完不跑测试?人大开源 FlashRSI 让它自己改提示词和配置
RSI 是 Recursive Self-Improvement,递归自我改进:Agent 看自己跑任务的表现,提出对自己提示词、技能、工具或配置的修改,跑一遍评测,保留得分更高的版本,再继续下一轮。过去每种做法(OPRO、GEPA、ACE、SkillOpt 等)各有各的代码,想比较哪个好要重新搭环境。FlashRSI 就是把它们放进同一个实验接口。
01它到底统一了什么
- 13 种 RSI 算法,README 列出 OPRO、GEPA、EvoPrompt、ACE、SkillOpt、Evo-Harness、AHE、ADAS、DarwinX、Meta-Harness、ModularRSI、RRSI、Arbor。
- 30 个评测集,涵盖问答、数学、编程、网页研究、文档和工具调用等。
- 7 种被优化的 Agent 外壳:MiniAgent、Claude Code、Codex、Pi、Hermes、OpenClaw、OpenCode。
一次实验由“用哪种算法、优化哪个外壳、用什么评测、用哪个模型”几项组合而成,写在一份 YAML 或命令行参数里。组合换了,不用另写运行脚本。
02改了什么都有账可查
这是我觉得最实用的一点。自动改提示词最怕改坏了找不到原因,FlashRSI 的每次运行都会保存:每个候选版本(不可修改的快照)、隐去密钥的配置、执行轨迹、得分、资源消耗,以及最后被选中的那一版。你可以回头看 Agent 到底动了哪个提示词或技能文件,再用 flashrsi evaluate 单独评测某个保存下来的版本。
03跑一次最小实验
README 要求 Python 3.12,推荐用 uv 装;需要 Docker 的评测任务要另装 Docker。
git clone https://github.com/RUC-NLPIR/FlashRSI.git cd FlashRSI uv venv --python 3.12 source .venv/bin/activate uv sync --extra all export TARGET_API_KEY="..." # 被优化的 Agent 用的模型密钥 export WORKER_API_KEY="..." # 负责提改进建议的模型密钥 flashrsi run --algorithm skillopt --benchmark searchqa --agent-harness miniagent \ --model deepseek-v4-pro --worker-model deepseek-v4.1-flash \ --set agent.llm.api_key="$TARGET_API_KEY" \ --set algorithm.worker.llm.api_key="$WORKER_API_KEY"
也可以直接用仓库里的 examples/quickstart.yaml:flashrsi run --config examples/quickstart.yaml。上面的命令和参数照 README 抄录,我们没有运行。
04上手前的几点心理准备
- 每一轮改进都要真的调用模型去跑任务,两套模型密钥意味着两份费用,先从小评测集开始。
- 项目对 Claude Code、Codex 这类外壳的改动范围,是提示词、技能、工具、钩子、记忆等资源;实际效果看你选的评测集,官方 README 里的成绩图是他们自己的实验结果,不能直接套到你的项目。
- README 的论文徽章只指向 arXiv 搜索页,没有给出确定的论文链接,想看原理建议先读项目文档站。
许可证为 Apache-2.0,可商用。


DeepSeek
Claude Code
Timestral