F40|从基础概念到系统分析:怎样定位问题,而不是再堆技术
从具体对象与小例子开始,理解计算过程与适用条件。
本章目录
先找错误发生在哪层,再谈换模型
什么时候该改Prompt、检索、记忆或模型?
一个错误答案可以来自不同原因。模型根本没拿到新版本时,增加推理时间不能补出缺失事实;检索已经拿到新版本却被旧记忆覆盖时,需要修上下文与记忆使用规则。选择修复层应跟随证据,而不是看到失败就再加一个Agent。
输入与适用条件:构造“旧配置被当成当前配置”的诊断案例;不以单次观察就宣称确定因果。
1 / 6 · 现象
窄屏可左右滑动图形,或点击“放大图形”。文字解释紧随图后。
先写清楚哪句话错、正确证据是什么,避免只说“感觉变差”。
本步状态由图形与说明共同给出。默认静止。用“下一步”看完解释再继续;播放到最后一步自动停止。键盘聚焦播放器后,可用左右键逐步查看、空格播放/暂停。图中颜色辅助区分,含义同时用文字注明。
为什么需要
避免无目的地叠Prompt、规则、模型和审查环节。
怎样实现
按原文→索引→检索→上下文→推理→行动→核验逐段定位。
可能的代价与误解
同时改变多个因素后只看总成功率,无法解释哪项改动起作用。
如何判断是否做对
同任务、同版本、同预算对照,保留失败样本与可复查轨迹。
先问失败发生在哪一层
“AI没有修好Bug”可能是没读到相关文件、读到旧版本、缺少业务条件、模型推断错误、工具没有权限、修改执行结果未知,或测试判据太弱。这些原因不能统一用“换更大模型”解决。
沿运行链逐步问:输入是什么?宿主给了哪些信息?模型产生什么输出?执行器做了什么?环境变成什么?验证能证明到哪里?这就是把前面基础知识变成诊断能力。
一个完整但不过度复杂的调查
现象:Agent说修改完成,测试仍失败。
先核对目标是否明确,以及测试是否确实对应当前需求;再核对最终工作树与Agent读过的版本;检查工具响应与真实文件是否一致;然后看模型是否读到了关键调用方;最后才分析推理或算法实现。
若证据显示工具根本没写成功,没必要先评审模型的深层Attention。若文件和环境正确,但逻辑遗漏边界,就补反例、改实现并回归。诊断深度由故障证据决定。
Prompt、RAG、Memory、Skill和Fine-tuning怎样选
| 观察到的缺口 | 优先考虑 | 不是它能直接解决的事 |
|---|---|---|
| 任务表述含糊 | 明确目标与验收,改输入 | 无法自动修复工具权限 |
| 缺当前事实 | 检索和版本化证据 | 不保证模型一定正确利用 |
| 跨任务经验反复丢失 | 可追溯长期记忆 | 不等于更新参数 |
| 稳定专业流程缺失 | Skill及合适工具 | 不应取代硬安全边界 |
| 特定行为分布长期不理想 | 评测后考虑微调 | 不适合当实时数据库 |
| 执行与恢复不可靠 | Harness、状态和幂等设计 | 不是多写提示就确定正确 |
这些技术可组合,但每加一层要指出一个实际失败模式和验证方式,否则只是在增加系统复杂度。
为什么读完基础还需要高级追问
会手算两个向量的点积,只是进入Attention的门槛;还需理解多头、位置、梯度、缓存和内核。会定义幂等,也还需理解并发、状态持久化和跨系统边界。
系统篇的28章和112题继续展开这些机制。基础课负责解释它们用到的语言和运算,高级题负责追问边界、推导、反例及工程取舍。两层不是同一份内容换标题。
面试式回答怎样不变成背口诀
解释一个机制时,至少给出:为什么需要它、输入输出是什么、内部步骤怎样走、一个小例子、一个会失败的条件,以及怎么验证。遇到没有公开的产品内部,就说明可观察到的部分和未知边界。
例如回答“KV缓存为什么能复用”,不能只有“减少重复计算”;要能说出因果前缀不变、各层分别保存、位置与权重约束、新Token尚未计算的一位差,以及全量与增量对照测试。
深度不以术语数衡量
把整个词汇表背完,仍可能不懂一个请求在哪里丢了数据;只会一个小模型,也未必能判断生产权限和版本问题。真正深度是跨层连接,但每次连接都保留对象、条件和证据。
推荐的阅读方式是先在基础例子上走通,再进入相关高级问题。读到不认识的术语,可在本地释义中查看,并沿前置课返回,不需要跳去英文网页补整门课程。
怎样检验自己已经接上主线
合上正文,解释从两条文字到[2,3,4]发生了什么;再解释模型怎样用Q/K/V产生新表示;再解释它如何提出工具调用,以及宿主怎样判断动作完成。最后拿一个真实任务,说出你会收集哪份证据来区分两种候选原因。
如果其中某一段说不清,返回对应课重算小例子即可,不必从头再背全部文章。这是一条可以定位知识缺口的路线,而不是要求一次吞下所有知识。
把“答案错了”定位为一个可以修复的具体环节
输入与条件。问题是“项目A当前超时值”。资料中r1写3秒、r2写5秒。系统回答3秒。
| 步骤与对象 | 内部动作 | 中间结果 / 新状态 |
|---|---|---|
| 1检查源 | r2文件确实存在且可访问 | 不是资料完全缺失。 |
| 2检查候选 | 检索日志里已有r1、r2 | 不是召回不到新版本。 |
| 3检查最终输入 | 上下文组装只保留r1 | 信息在组装阶段丢失。 |
| 4做最小修复 | 按适用版本保留r2,重放相同任务 | 不要先换模型或新增多Agent。 |
| 5验证其他情况 | 再测问历史规则、项目B和缺日期的查询 | 避免“总选最新”破坏历史问题。 |
把过程连起来。把错误定位到有证据支持的环节,比给系统堆新技术更能形成可验证改进。
边界与反例。所有版本和结果为教学构造;重放可以验证此例机制,不能代替真实任务集评测。
依据与适用范围:[DERIVE]。示例输入和场景由本书明确设定。
课后自检
模型没读到最新配置,第一优先是微调吗?
查看参考答案收起参考答案
如何区分“我记得术语”与“我理解机制”?
查看参考答案收起参考答案
机制依据:[HARNESS][CONTEXT][EVALS]。本节数值与情景除另注外均为原创教学示例;来源不代替中文讲解。