Skip to content

经典论文引导:把工程模式追到原始问题

检索日期:2026-07-27
本页只链接论文原文、正式会议论文页或作者项目页。论文用于理解机制和实验边界,不等于可直接照抄的生产方案。
阅读方法:先看摘要、图 1、方法总图和实验结论;再带着课程代码中的一个具体问题回到正文。每篇都要留下“完成证据”。

路线图

课程问题首读论文课程章节优先级预计时长
Agent Loop 为什么要交替思考与行动ReAct第 1 章P050 分钟
外部知识为什么要检索再生成RAG第 3 章P060 分钟
用户记忆如何检索、反思并参与规划Generative Agents第 3 章P160 分钟
模型怎么学会选择工具Toolformer第 4 章P145 分钟
失败轨迹怎样变成下一次经验Reflexion第 5 章P050 分钟
自评与迭代为何可能有效又可能失控Self-Refine第 5 章P145 分钟
长上下文怎样压缩LLMLingua第 2 章P145 分钟
多 Agent 如何用角色和通信协作CAMEL / AutoGen第 4、10 章P180 分钟
LLM Judge 有哪些偏差MT-Bench / Chatbot Arena第 6 章P055 分钟
怎样评估完整 AgentAgentBench第 6 章P145 分钟
Coding Agent 怎样用真实仓库任务评估SWE-bench第 6 章P050 分钟

1. ReAct:Reasoning 与 Acting 的交替

  • 论文原文ReAct: Synergizing Reasoning and Acting in Language Models(ICLR 2023)
  • 为什么读:第 1 周的百行 Agent Loop 不是“不断问模型”这么简单。ReAct 解释了 reasoning trace 如何更新计划、处理异常,action 又如何从外部环境取得 observation。
  • 重点读哪里
    1. Figure 1 的 ReAct、Act-only、CoT-only 对比;
    2. Section 3 的方法与轨迹格式;
    3. HotpotQA / FEVER 中 hallucination 与 error propagation;
    4. ALFWorld / WebShop 中交互式任务结果与失败分析。
  • 带着什么问题
    1. Thought → Action → Observation 中,哪些是模型输出,哪些是 Harness 生成?
    2. Observation 为什么必须被重新放入下一次上下文?
    3. 公开 reasoning trace 是否是 Agent 可观测性的唯一方式?
  • 完成证据:把课程 step05 的一次工具调用画成 ReAct 轨迹,再用 Mini Emperor 的 AgentEvent 重画一次,说明两种表示中哪些状态相同、哪些不应暴露给用户。
  • 优先级:P0
  • 预计时长:50 分钟
  • 检索日期:2026-07-27

2. RAG:参数记忆之外的可更新知识

  • 论文原文Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks(NeurIPS 2020)
  • 为什么读:客服系统要求引用、拒答和知识更新。原始 RAG 论文把参数化记忆与非参数化记忆组合起来,并把来源追溯和知识更新列为核心问题。
  • 重点读哪里
    1. Abstract 与 Figure 1;
    2. RAG-Sequence 和 RAG-Token 的差别;
    3. retriever、generator 与 marginalization;
    4. factuality、specificity、diversity 和 provenance 的讨论。
  • 带着什么问题
    1. 课程的“先召回 top-k,再一次性生成”更接近哪种变体?
    2. 原论文取得更好生成质量,为什么仍不能自动保证每句引用正确?
    3. 企业政策更新时,非参数化知识有什么工程优势?
  • 完成证据:为客服的一道问题保存 query、top 5、最终引用;再删除正确文档运行一次,验证系统拒答而不是只依靠模型“记得”答案。
  • 优先级:P0
  • 预计时长:60 分钟
  • 检索日期:2026-07-27

3. Generative Agents:记忆、反思与规划

  • 论文原文Generative Agents: Interactive Simulacra of Human Behavior(UIST 2023)
  • 为什么读:这篇论文把 observation、memory stream、retrieval、reflection、planning 串成完整架构。它适合帮助区分“用户记忆”“运行经历”和“从经历抽象出的反思”。
  • 重点读哪里
    1. Figure 2 的 agent architecture;
    2. memory stream 的 recency、importance、relevance;
    3. reflection 如何从多条记忆生成更高层结论;
    4. planning 与 ablation study。
  • 带着什么问题
    1. 用户说“我偏好自提”应存为哪类记忆?
    2. 一次客服失败轨迹为何不应直接变成永久用户事实?
    3. Reflection 与课程的候选 Skill 生成有什么相同点和关键差别?
  • 完成证据:用三栏表归类 10 条样例为用户事实、运行经验、可复用 Skill;为每条写入库条件、过期策略和冲突处理。
  • 优先级:P1
  • 预计时长:60 分钟
  • 检索日期:2026-07-27

4. Toolformer:何时调用什么工具

  • 论文原文Toolformer: Language Models Can Teach Themselves to Use Tools(NeurIPS 2023)
  • 为什么读:Agent Tool Call 不只是 JSON 格式问题,还包含“何时调用、调用哪个、参数是什么、怎样使用结果”四个决策。Toolformer从训练角度拆开了这些问题。
  • 重点读哪里
    1. 方法概览和 API call 插入过程;
    2. sampling 与 filtering;
    3. calculator、search、calendar 等不同工具实验;
    4. limitations。
  • 带着什么问题
    1. Toolformer 的自监督训练与课程中的运行时 tool calling 有何不同?
    2. 工具描述如何影响模型选择?
    3. 模型“会生成调用”为什么仍不能获得执行权限?
  • 完成证据:为 search_kbcreate_support_ticket 各写一个高质量和低质量工具描述,用固定评估集比较误选率;执行权限始终由 CapabilityPolicy 决定。
  • 优先级:P1
  • 预计时长:45 分钟
  • 检索日期:2026-07-27

5. Reflexion:不用改权重的语言反馈

  • 论文原文Reflexion: Language Agents with Verbal Reinforcement Learning(NeurIPS 2023)
  • 为什么读:Skill 自进化不是让模型直接覆盖生产文件。Reflexion展示了如何把外部或内部反馈转成文字反思,放入 episodic memory,影响下一次尝试。
  • 重点读哪里
    1. Actor、Evaluator、Self-Reflection 三个角色;
    2. episodic memory buffer;
    3. HumanEval、ALFWorld、HotpotQA 的反馈差别;
    4. ablation 与失败模式。
  • 带着什么问题
    1. 反思文本是模型参数更新、用户记忆,还是运行经验?
    2. Evaluator 自己出错时,会怎样污染下一轮?
    3. 为什么生产 Skill 晋级还要 holdout、安全回归和人工批准?
  • 完成证据:取一次失败轨迹,生成一条反思,再运行同一任务;同时证明这条反思不会自动成为 published Skill。
  • 优先级:P0
  • 预计时长:50 分钟
  • 检索日期:2026-07-27

6. Self-Refine:反馈与迭代修订

  • 论文原文Self-Refine: Iterative Refinement with Self-Feedback(NeurIPS 2023)
  • 为什么读:同一个模型可以扮演生成器、反馈者和修订者,不需要额外训练。但“同源自评”也可能重复盲点,课程用 Verifier、确定性测试和人审来补这条边界。
  • 重点读哪里
    1. Figure 1 的 Generate → Feedback → Refine
    2. feedback 的任务定制;
    3. 停止条件;
    4. 7 类任务结果与消融。
  • 带着什么问题
    1. 什么时候多迭代一次有价值,什么时候只是增加成本?
    2. 自评者和生成者是同一模型时,怎样避免“自我同意”?
    3. 哪些错误必须由 lint、类型检查、测试等确定性信号发现?
  • 完成证据:在 10 个 MR review 样例上比较 one-shot 和最多两轮 refine,记录质量、成本、延迟;禁止没有停止条件的循环。
  • 优先级:P1
  • 预计时长:45 分钟
  • 检索日期:2026-07-27

7. LLMLingua:按预算压缩 Prompt

  • 论文原文LLMLingua: Compressing Prompts for Accelerated Inference of Large Language Models(EMNLP 2023)
  • 为什么读:上下文压缩不等于粗暴截断历史。LLMLingua 把预算控制、片段级和 token 级压缩、分布对齐组合起来,提供了研究基线。
  • 重点读哪里
    1. coarse-to-fine compression;
    2. budget controller;
    3. token-level iterative compression;
    4. 压缩率、任务质量、延迟与成本实验。
  • 带着什么问题
    1. 系统指令、工具结果、用户约束是否应有相同压缩优先级?
    2. 论文报告的 token 压缩率为什么不能直接等同端到端延迟收益?
    3. 怎样用回归集证明压缩没有丢失关键约束?
  • 完成证据:为同一 20 轮对话运行原文、摘要、截断三种策略,比较 token、延迟、约束保持率;保存至少一个压缩失败反例。
  • 优先级:P1
  • 预计时长:45 分钟
  • 检索日期:2026-07-27

8. CAMEL:角色扮演式多 Agent 协作

  • 论文原文CAMEL: Communicative Agents for “Mind” Exploration of Large Language Model Society(NeurIPS 2023)
  • 为什么读:Agent Team 不能只靠“你是专家 A、你是专家 B”。CAMEL 研究 inception prompting、角色一致性和自主对话,也暴露只依赖对话协作的局限。
  • 重点读哪里
    1. role-playing framework;
    2. inception prompting;
    3. task specifier 与 assistant/user agent;
    4. instruction-following cooperation 的评估。
  • 带着什么问题
    1. 角色设定如何减少任务漂移?
    2. 两个 Agent 互相确认,是否等于事实被验证?
    3. 工具执行和共享状态应放在哪个角色之外?
  • 完成证据:让 Reviewer 与 Verifier 处理同一 Diff,分别记录角色 prompt、输入权限、输出 schema;证明 Verifier 能拒绝不存在的文件或行号。
  • 优先级:P1
  • 预计时长:40 分钟
  • 检索日期:2026-07-27

9. AutoGen:可编程的多 Agent 对话

  • 论文原文AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation
  • 为什么读:它把 Agent、human input、tool 和 conversation pattern 放进同一可编程框架。适合对照课程里的 Subagent、Agent Team 和人工批准。
  • 重点读哪里
    1. customizable and conversable agents;
    2. conversation programming;
    3. human、LLM、tool 的组合模式;
    4. coding、retrieval、decision-making 案例。
  • 带着什么问题
    1. “多个角色”与“多个独立上下文和权限”有什么区别?
    2. 谁决定发言顺序、终止条件和失败升级?
    3. 共享全部上下文与最小化传递各有什么代价?
  • 完成证据:把课程 Agent Team 画成消息拓扑,标明每个 Agent 能看到的状态、能调用的工具和终止条件;制造一个子 Agent 超时并验证上层能收敛。
  • 优先级:P1
  • 预计时长:40 分钟
  • 检索日期:2026-07-27

10. LLM-as-a-Judge:可扩展评估与偏差

  • 论文原文Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena(NeurIPS 2023)
  • 为什么读:开放式回答难用单个精确匹配指标评估,LLM Judge 能扩展评估,但会出现 position、verbosity、self-enhancement 等偏差。
  • 重点读哪里
    1. MT-Bench 与 Chatbot Arena 的设计;
    2. 与人类偏好的一致性;
    3. position bias、verbosity bias、self-enhancement bias;
    4. single-answer grading 与 pairwise comparison。
  • 带着什么问题
    1. 交换候选答案顺序后,分数是否稳定?
    2. Judge 给出的解释是证据,还是另一个待验证的模型输出?
    3. 为什么安全回归不能只交给 LLM Judge?
  • 完成证据:对 20 对客服回答做双向 pairwise judging,交换 A/B 顺序;报告翻转率,并与至少一名人工评分者抽样核对。
  • 优先级:P0
  • 预计时长:55 分钟
  • 检索日期:2026-07-27

11. AgentBench:在交互环境中评估 Agent

  • 论文原文AgentBench: Evaluating LLMs as Agents(ICLR 2024)
  • 为什么读:最终答案好看不代表 Agent 完成了任务。AgentBench 用 8 类交互环境衡量长期推理、决策和指令遵循,并分析失败原因。
  • 重点读哪里
    1. benchmark environments;
    2. success metrics;
    3. 模型对比;
    4. long-term reasoning、decision-making、instruction following 的失败分析。
  • 带着什么问题
    1. Agent 评估的“环境”包含哪些可重复状态?
    2. 工具调用格式错误应算模型失败、Harness 失败还是任务失败?
    3. 成功率之外为什么还要记录成本和轨迹?
  • 完成证据:为 Mini Emperor 定义一个最小可复现评估环境,固定初始状态、工具响应和成功条件;重复运行至少 10 次并保存 trajectory。
  • 优先级:P1
  • 预计时长:45 分钟
  • 检索日期:2026-07-27

12. SWE-bench:真实仓库中的 Coding Agent

  • 论文原文SWE-bench: Can Language Models Resolve Real-World GitHub Issues?(ICLR 2024)
  • 作者项目页SWE-bench Original
  • 为什么读:真实 Coding Agent 的评估单位不是“一段看似合理的 patch”,而是固定仓库版本、问题描述、可构建环境和 fail-to-pass 测试。
  • 重点读哪里
    1. Issue–Pull Request 样例如何构造;
    2. repository context;
    3. Docker execution environment;
    4. fail-to-pass 测试与 resolution rate。
  • 带着什么问题
    1. MR Reviewer 和 issue-solving Agent 的成功条件为何不同?
    2. 为什么 gold patch 不是唯一可接受答案?
    3. 测试通过是否足以证明没有安全问题或越权改动?
  • 完成证据:为一个本地缺陷创建固定 base commit、问题说明和失败测试;Agent 修改后必须让 fail-to-pass 通过且原有测试不回退。
  • 优先级:P0
  • 预计时长:50 分钟
  • 检索日期:2026-07-27

三条跨论文主线

主线 A:一次 Agent Run 如何形成

text
ReAct
  └─ 交替 Reason / Act / Observe
      ├─ Toolformer:模型何时、如何选择工具
      └─ AgentBench:在交互环境中衡量是否真的完成

主线 B:知识与经验如何进入下一次运行

text
RAG:外部、可更新、可追溯的知识
Generative Agents:经历的存储、检索、反思和规划
Reflexion:失败反馈写成下一轮可用的语言经验
Self-Refine:同一任务内的反馈与修订

不要把四者合并为一个“memory”表。它们的写入来源、可信度、生命周期和使用时机不同。

主线 C:怎样证明改进不是自我感觉

text
MT-Bench:开放式质量与 Judge 偏差
AgentBench:交互式任务成功
SWE-bench:真实代码环境与确定性测试

课程的 Skill 晋级因此同时需要:确定性测试、任务成功率、成本与延迟、安全保留集、差异审查和人工批准。

阅读完成总证据

完成本页不是“读完 12 篇”,而是提交以下四个产物:

  1. 一张 Agent Loop 轨迹图,标出模型、Harness、Tool、Environment;
  2. 一张记忆分层表,区分知识、用户事实、运行经验、Skill;
  3. 一份包含确定性指标和 LLM Judge 的评估协议,并写出 Judge 偏差控制;
  4. 一个失败案例复盘:说明论文机制在课程工程中为何仍需权限、状态、日志和人工门禁。

Markdown 是唯一内容源,HTML 由构建流程生成。