课程目录

第 13 周 · 进阶

第13周:综合项目实战

端到端AI全栈项目

周目标:综合运用所学,完成一个端到端AI项目

课程成果:CO4 CO5 CO6 CO8

已学习 0 / 7 天

本周 7 个学习日

Day 85

项目选题

建议时长:75 分钟

本日 CO:CO4 CO5 CO6 CO8

本日概要

综合项目的成败大半取决于选题。一个适合的题目要同时满足四条:范围可在给定时间内完成、数据可获得且可公开或可脱敏、成效可用具体指标衡量、以及失败不会造成实际损害。本周的建议题目是企业智能知识助手——它覆盖前面所学的检索、生成、接口、部署与评估,且可以用公开文档完成。选题阶段最重要的产出不是技术方案,而是一份写清「做什么、不做什么、怎么算完成」的项目说明;没有明确的不做清单,范围会在实施过程中不断扩张,最后什么都没做完。

听书与视频

本日听书

5 分钟 · MP3 · 双主持人讲解

B 站讲解

AI产品经理项目实战:用知识图谱+RAG做专业Agent

AI产品经理PMGao · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能用四条标准判断一个选题是否适合作为课程项目
  • 能写出包含明确排除项的项目范围说明
  • 能把「怎么算完成」转化为可判定的成功标准
  • 能识别项目的主要风险并给出应对或降级方案

核心讲解

选题的四条标准

第一条是范围可完成:用可支配的时间倒推,一周七天中真正能用于开发的时间往往只有一半,其余要留给调试、评估与文档。第二条是数据可获得:许多好想法卡在拿不到数据上,因此选题时就要确认数据来源,并优先选择公开或易脱敏的数据。第三条是成效可衡量:要能说出用什么指标、在什么样本上、达到什么值算成功。第四条是失败无害:课程项目不应连接生产系统或处理真实个人数据,失败的代价应当限制在自己的环境内。

四条都满足的题目未必最有趣,但能做完。相反,一个覆盖面很广的题目在两周内通常只能做出一个演示,既无法评估也无法复现。评审选题时可以直接用这四条打分,任一条不成立就调整范围而不是硬做——调整范围本身也是一项要练习的能力。

不做清单与成功标准

项目说明中最有价值的一节是「不做什么」。明确写出不支持多语言、不做用户账号体系、不接入外部实时数据、不提供写操作,可以在实施过程中挡住大量顺手加进来的需求。每一条排除项还应写明理由,这样将来若确实需要,重新评估时能看到当初的取舍依据,而不是简单地推翻。

成功标准必须可判定。「回答准确」不是标准,「在三十条测试问题上,检索召回率不低于某值、有正确片段时的回答准确率不低于某值、且所有回答都带可定位引用」才是。把标准写成这种形式后,项目进展就可以被客观度量,最后的汇报也不必依赖主观描述。这与本课程反复强调的可复核性一致——项目也应当被同样的标准约束。

实践任务

撰写项目说明:目标、范围、明确排除项、成功标准、里程碑与风险,并请同伴按检查表评审。

  • 用四条标准评估两到三个候选题目,逐条打分并说明理由,选定其中一个。
  • 撰写项目说明:目标、用户与使用场景、范围、明确排除项(每条附理由)。
  • 把成功标准写成可判定的形式,包含指标名称、测试样本集与目标值。
  • 列出至少五项风险(数据、技术、时间、环境、评估各一),为每项写出应对或降级方案;请同伴按四条标准评审并记录反馈。

自测与答案

第 1 题

项目说明中为什么必须写明「不做什么」?

尚未检查本题。

查看答案与评价要点

参考答案:明确排除项可以在实施过程中挡住不断顺手加入的需求,防止范围扩张导致项目无法完成。每条排除项附上理由后,将来若确实需要该能力,可以基于当初的取舍依据重新评估,而不是无依据地推翻或默默加入。

评价要点:指出防止范围扩张;要求为排除项写明理由;说明变更时可基于依据重新评估

第 2 题

把成功标准写成「回答准确」有什么问题?应当怎么写?

尚未检查本题。

查看答案与评价要点

参考答案:「回答准确」无法判定,不同人理解不同,项目进展也无法客观度量。应写成包含指标名称、测试样本集与目标值的形式,例如在指定的三十条测试问题上,检索召回率与有正确片段时的回答准确率各不低于某个值,且所有回答均带可定位引用。

评价要点:指出无法判定与度量;要求包含指标、样本集与目标值;给出可判定的改写示例

尚未完成自测。

今日完成标准

  • 提交两到三个候选题目的四条标准评分与选定理由
  • 提交项目说明,含目标、范围、明确排除项及每条理由
  • 提交可判定的成功标准与不少于五项风险及其应对方案,附同伴评审记录

常见错误与纠正提示

  • 选题范围过大,两周只能做出演示而无法评估与复现
  • 项目说明只写要做什么,没有不做清单,范围持续扩张
  • 成功标准写成主观描述,无法客观判断是否完成

分层任务

基础任务

在教师给出的题目上完成范围说明与三条排除项,并写出成功标准。

标准任务

独立完成选题评估、完整项目说明、成功标准与风险清单。

挑战任务

为项目设计一个最小可行版本与一个完整版本,说明两者的分界与在时间不足时的降级路径。

关联知识点

延伸阅读

学习状态:未学习

Day 86

数据与模型

建议时长:75 分钟

本日 CO:CO4 CO5 CO6 CO8

本日概要

数据准备决定项目的上限。这一天要完成三件事:确定文档来源并确认其可用性与许可、完成清洗与切块并记录处理规则、以及构建评估集。评估集必须在开发开始前完成——先有测试再有实现,才能避免用实现去迁就评估。评估集应覆盖三类问题:能直接从单篇文档回答的、需要综合多篇的、以及应当回答「资料中没有」的。第三类最容易被忽略,却最能反映系统是否诚实:一个对不知道的问题也强行作答的系统,在真实使用中比答不出更危险。

听书与视频

本日听书

5 分钟 · MP3 · 双主持人讲解

B 站讲解

手把手教你大模型训练与部署,从配置GPU到训练大模型【全网最详细教程】

日新月异max · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能确认文档来源的可用性与许可,并记录清洗与切块的处理规则
  • 能构建覆盖单篇、多篇与无答案三类问题的评估集
  • 能为每条评估问题定义可判定的期望行为
  • 能说明为什么评估集必须在实现之前完成

核心讲解

文档处理要留下规则

文档准备包括来源确认、格式转换、清洗与切块。来源确认要回答两个问题:这批文档是否允许用于本项目、其中是否包含需要脱敏的信息。清洗要处理页眉页脚、目录、重复段落等噪声,这些内容进入索引会显著干扰检索。切块策略应当按语义边界并保留适度重叠,具体参数需要用真实查询做对比实验确定,而不是照搬默认值。

所有处理规则都应当记录下来并可重复执行。理想形态是一个脚本:给定原始文档目录,输出切块后的数据与统计信息(文档数、块数、块长度分布)。这样当发现检索效果不佳需要调整切块时,可以直接改参数重跑,而不是手工重做一遍。这条要求与前面几周的可复现纪律一致。

先有评估集,再有实现

评估集必须在实现之前完成,理由与微调那一周相同:先实现再设计评估,几乎必然会滑向「设计一个能显示当前实现表现良好的评估」。先写评估集则相反——它会暴露出实现的真实差距,也让每次改动都能被客观度量。这一步花掉的时间会在后续开发中成倍收回。

三类问题缺一不可。单篇可答的问题检验基础检索;需要综合多篇的问题检验召回数量与上下文组装;应当回答「资料中没有」的问题检验系统的诚实性——这类问题在真实使用中占比不低,而一个总能编出答案的系统会让使用者失去判断依据。为每条问题要标注应命中的文档片段与期望行为(给出答案并引用,或明确回答资料中没有),这样评估才能自动执行。

实践任务

完成文档准备与切块,构建包含三类问题的评估集,并为每条问题标注应命中的片段与期望行为。

  • 确定文档来源,记录数量、格式、许可状况与需要脱敏的内容;编写可重复执行的清洗与切块脚本。
  • 运行脚本并记录统计信息:文档数、块数、块长度分布,以及清洗掉的噪声类型与比例。
  • 构建不少于三十条的评估集,三类问题各占一定比例,为每条标注应命中片段与期望行为。
  • 对切块参数做至少两组对比,用评估集中的单篇可答问题测量命中率差异,据此确定参数并记录依据。

自测与答案

第 1 题

为什么评估集必须在实现开始之前构建?

尚未检查本题。

查看答案与评价要点

参考答案:先实现再设计评估,会不自觉地设计出能显示当前实现表现良好的评估方式,结论不可信。先有评估集则能暴露实现的真实差距,并让每次改动都被客观度量;这一步花费的时间会在后续开发中通过减少返工成倍收回。

评价要点:指出事后设计评估会迁就实现;说明先有评估可暴露真实差距;指出对迭代度量的价值

第 2 题

评估集中为什么必须包含「资料中没有答案」的问题?

尚未检查本题。

查看答案与评价要点

参考答案:真实使用中这类问题占比不低,而系统若对不知道的问题也强行作答,使用者无法分辨哪些答案有依据,比答不出更危险。包含这类问题才能度量系统的诚实性,并把「明确回答资料中没有」作为一种正确行为纳入评估。

评价要点:指出真实使用中此类问题常见;说明强行作答比答不出更危险;把如实拒答纳入正确行为

尚未完成自测。

今日完成标准

  • 提交可重复执行的清洗切块脚本与运行统计信息
  • 提交不少于三十条的评估集,三类问题齐全且每条标注应命中片段与期望行为
  • 提交两组切块参数的对比数据与最终参数的选择依据

常见错误与纠正提示

  • 手工处理文档不留脚本,参数调整时无法重跑
  • 评估集只含单篇可答的问题,无法发现多篇综合与强行作答的问题
  • 先做实现再补评估,评估被设计成能通过当前实现

分层任务

基础任务

使用教师提供的文档集完成切块并构建十条评估问题。

标准任务

独立完成脚本化处理、三十条三类评估集与切块参数对比。

挑战任务

为评估集设计自动判定逻辑,使三类问题的期望行为都能被程序核对而非人工判读。

关联知识点

延伸阅读

学习状态:未学习

Day 87

核心开发

建议时长:75 分钟

本日 CO:CO4 CO5 CO6 CO8

本日概要

核心开发阶段要抵抗一个常见诱惑:先把整条链路搭起来再统一调试。更稳妥的做法是逐环节可测——检索、重排、上下文组装、生成、引用校验每一环都能单独运行并被评估。这样任一环出问题时可以直接定位,而不必在整条链路上猜测。开发顺序上建议先做检索并用评估集中的单篇问题验证召回,再做生成与引用,最后加重排与组装优化。每完成一环就跑一次评估集并记录当时的指标,形成一条随开发推进的曲线——这条曲线本身就是最好的项目进展记录。

听书与视频

本日听书

5 分钟 · MP3 · 双主持人讲解

B 站讲解

【B站精选】吊打付费!16分钟彻底搞懂RAG!拆解RAG(检索增强生成)完整工作机制,从原理到流程分步讲解,小白也能看懂底层逻辑与核心运作思路!吃透AI大模型

AI-Agent搭建 · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能把检索增强链路拆分为可单独运行与评估的环节
  • 能按由基础到优化的顺序组织开发,并说明理由
  • 能在每一环完成后运行评估并记录指标变化
  • 能实现引用一致性校验与「资料中没有」的诚实回答路径

核心讲解

逐环节可测

把链路的每一环设计成可以单独调用的函数或服务:给定查询返回召回片段、给定片段与问题返回组装好的上下文、给定上下文返回回答与引用。每一环都有明确的输入输出,就可以单独编写测试与评估。这样当最终答案不对时,可以逐环节向前追查,而不是在整条链路上反复试探。

开发顺序建议先检索后生成。原因是检索是上限——正确片段没被召回时,无论生成多好都不可能答对。先把检索做到评估集中的单篇问题基本能召回,再投入生成与提示的优化,投入产出比最高。反过来先精调提示,往往会发现真正的瓶颈在检索,之前的调整白做了。

诚实路径与引用校验

「资料中没有」这条路径需要显式实现,而不是指望模型自觉。可行做法是设定召回质量的下限:当召回片段与查询的相关度低于阈值、或召回结果为空时,直接返回如实说明而不进入生成环节。阈值需要用评估集中的无答案问题实测确定——设得太高会拒绝本可回答的问题,太低则起不到作用。

引用一致性校验是另一道必要工序:生成回答后,检查其中的关键陈述是否确实出现在被引用的片段中,不一致时降级为「未找到明确依据」并给出召回片段供用户自行判断。这一步会拦下一部分本来会被当作正确答案输出的内容,因此上线前应统计它的触发率与其中真正错误的比例,用数据说明它的价值。

实践任务

按逐环节可测的方式实现核心链路,每完成一环运行评估集并记录指标,形成进展曲线。

  • 把链路拆成检索、组装、生成、校验四个可单独调用的环节,为每环写出输入输出定义与至少一条测试。
  • 先实现检索,用评估集中的单篇可答问题测量召回率,达到预设下限后再进入下一环。
  • 实现生成与引用输出,运行完整评估集,记录检索召回率与有正确片段时的回答准确率。
  • 实现召回质量下限与引用一致性校验,用无答案问题验证拒答路径;统计校验触发率与其中真正错误的比例,并绘制随开发推进的指标曲线。

自测与答案

第 1 题

为什么建议先把检索做好再优化生成与提示?

尚未检查本题。

查看答案与评价要点

参考答案:检索是链路的上限:正确片段未被召回时,无论生成多好都不可能给出正确答案。先把召回率提到可接受水平,后续对生成与提示的优化才可能体现出来;反过来先精调提示,往往会发现真正瓶颈在检索,前期投入白费。

评价要点:指出检索决定上限;说明未召回时生成无法弥补;指出顺序颠倒会导致投入浪费

第 2 题

「资料中没有」这条路径为什么需要显式实现?如何确定它的触发条件?

尚未检查本题。

查看答案与评价要点

参考答案:不显式实现时,模型面对无依据的问题仍会生成看似合理的答案,使用者无法分辨。做法是设定召回质量下限:相关度低于阈值或召回为空时直接返回如实说明,不进入生成。阈值需用评估集中的无答案问题与可答问题共同实测确定——过高会误拒可答问题,过低则不起作用。

评价要点:指出不实现时模型会强行作答;给出召回质量下限的做法;说明阈值需用两类问题共同实测

尚未完成自测。

今日完成标准

  • 提交四个环节的输入输出定义与各自的测试
  • 提交每完成一环后的评估结果与随开发推进的指标曲线
  • 提交拒答路径的阈值确定过程,以及引用校验的触发率与真正错误比例统计

常见错误与纠正提示

  • 先搭完整链路再统一调试,问题无法定位到具体环节
  • 先精调提示后发现瓶颈在检索,前期投入浪费
  • 不实现拒答路径,系统对无依据问题也强行作答

分层任务

基础任务

在教师提供的链路骨架上实现检索环节,并测出单篇问题的召回率。

标准任务

独立完成四环节实现、逐环评估与拒答、校验两条路径。

挑战任务

对比加入重排前后的指标变化,量化重排带来的收益与它增加的延迟成本。

关联知识点

延伸阅读

学习状态:未学习

Day 88

前端与API

建议时长:75 分钟

本日 CO:CO4 CO5 CO6 CO8

本日概要

接口与界面是项目从「能跑」变成「能用」的一步,重点不在美观而在把系统的不确定性如实传达给用户。三条设计原则:一是把依据展示出来——引用片段应当可点击查看原文,让用户能自行核对;二是把状态区分清楚——正在检索、正在生成、未找到依据、服务异常应当有不同的表现,而不是统一显示「加载中」或「出错了」;三是保留反馈入口——让用户能标记回答有用或有误,这些标记是后续改进的最直接依据。技术上则沿用第十周的要求:输入校验、流式返回、取消传递与可区分的错误语义。

听书与视频

本日听书

5 分钟 · MP3 · 双主持人讲解

B 站讲解

Vibe Coding 工具链与工作链 | 【Vibe Coding 实战课】

OpenBuild开源社区 · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能设计把不确定性如实传达给用户的界面表现
  • 能区分并实现检索中、生成中、无依据、服务异常四类状态
  • 能实现引用片段的可查看与原文定位
  • 能设计用户反馈的采集与存储,使其可用于后续改进

核心讲解

如实传达不确定性

一个检索增强系统给出的答案,可信度取决于召回片段的质量。把这一点对用户隐藏,只呈现一段流畅的回答,等于让用户按「看起来很确定」来判断可信度,这是不负责任的。合理做法是把引用片段一并展示并支持点击查看原文位置,让用户能在几秒内核对关键陈述。当系统触发了引用一致性校验的降级时,更应当明确说明「未找到明确依据」并展示召回片段,而不是含糊带过。

状态区分同样重要。用户看到「加载中」时,不知道是检索慢还是生成慢;看到「出错了」时,不知道该重试还是换个问法。把状态拆成检索中、生成中、未找到依据、服务异常四类并分别提示,用户就能做出正确反应。这与第十周讲的错误语义是同一件事在界面层的体现。

反馈是最直接的改进依据

在回答旁边放一个「有用/有误」的标记入口,成本极低但价值很高。被标记为有误的问题应当连同当时的召回片段、生成回答与引用一起保存,这样可以直接判断是检索没召回、召回了但生成错、还是引用与陈述不符。这三类占比会直接指出下一步该优化哪一环,比凭感觉猜测有效得多。

反馈数据要注意两点。一是要能关联到当时的系统版本与配置,否则几周后无法判断某个问题是否已被修复。二是要形成闭环:被标记为有误且确认属实的问题应当加入回归测试集,防止后续改动重新引入。做不到闭环时,反馈只是积压的抱怨,做到闭环它才是资产。

实践任务

实现接口与最小界面,验证四类状态的区分展示、引用可查看与反馈记录三项功能。

  • 实现接口层:输入校验、流式返回、取消传递与四类可区分的错误语义,并为每类构造触发样例。
  • 实现最小界面:展示回答、引用片段与原文定位链接,验证用户能在片段中找到关键陈述。
  • 实现四类状态的区分展示,分别构造场景验证提示文案正确且可指导用户下一步操作。
  • 实现反馈标记与存储,记录问题、召回片段、回答、引用与系统版本;模拟五条有误反馈并按三类原因归因。

自测与答案

第 1 题

为什么检索增强系统的界面必须展示引用片段而不只是答案?

尚未检查本题。

查看答案与评价要点

参考答案:答案的可信度取决于召回片段的质量,只展示流畅的回答会让用户按表面确定性判断可信度。展示可点击查看原文的引用,用户能在几秒内核对关键陈述;触发降级时更应明确说明未找到依据并展示召回片段,把判断权交还使用者。

评价要点:指出可信度取决于召回质量;说明只给答案会误导用户判断;要求引用可核对并在降级时如实说明

第 2 题

用户反馈数据要做到什么,才能从「抱怨记录」变成改进资产?

尚未检查本题。

查看答案与评价要点

参考答案:一要保存完整上下文(问题、召回片段、回答、引用)并关联当时的系统版本与配置,才能归因到检索、生成还是引用环节,也才能判断问题是否已修复;二要形成闭环,把确认属实的问题加入回归测试集,防止后续改动重新引入。缺少这两点,反馈只是积压。

评价要点:要求保存完整上下文与版本信息;说明可归因到具体环节;要求回流为回归测试用例形成闭环

尚未完成自测。

今日完成标准

  • 提交接口实现与四类错误语义的触发样例
  • 提交界面截图或记录,证明引用可查看、四类状态区分展示
  • 提交反馈存储结构与五条模拟反馈的三类归因统计

常见错误与纠正提示

  • 只展示答案不展示引用,用户无法核对
  • 所有等待统一显示「加载中」,用户无法判断该等还是该重试
  • 反馈只记录「有误」不记录上下文与版本,无法归因也无法验证修复

分层任务

基础任务

在教师提供的界面骨架上实现引用展示与两类状态区分。

标准任务

独立完成接口、界面、四类状态与反馈闭环。

挑战任务

实现反馈到回归测试集的自动回流流程,并说明如何避免测试集被重复或低质量反馈污染。

关联知识点

延伸阅读

学习状态:未学习

Day 89

部署上线

建议时长:75 分钟

本日 CO:CO4 CO5 CO6 CO8

本日概要

部署要回答的问题是:怎样让别人能稳定地用上它,并且出问题时能查、能回滚。最小可用的部署方案包含五项:容器化打包(保证运行环境一致)、配置与密钥外置(同一镜像可用于不同环境)、健康检查(区分进程存活与服务就绪)、日志与指标采集(出问题时有据可查)、以及版本化与回滚路径(切换只需改指向)。这一天不追求复杂的编排,追求的是每一项都真实可用并验证过——一个能一键回滚的简单部署,价值远高于一个配置复杂但从未演练过回滚的方案。

听书与视频

本日听书

6 分钟 · MP3 · 双主持人讲解

B 站讲解

千锋教育DeepSeek使用教程,Deepseek基于K8s部署操作指南,AI助力云计算开发效率翻倍

千锋教育 · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能把应用容器化并说明镜像应包含什么、不应包含什么
  • 能实现配置与密钥外置,使同一镜像可用于不同环境
  • 能区分存活检查与就绪检查,并说明混用会造成什么问题
  • 能实现版本化与回滚,并通过演练验证其可用性与耗时

核心讲解

镜像与配置的边界

容器化的价值是让运行环境随代码一起固定,避免「在我机器上能跑」。镜像应当包含应用代码与依赖,不应包含配置、密钥与数据——这三者随环境变化,打进镜像会导致每个环境都要单独构建,也会让密钥永久留在镜像层中。正确做法是通过环境变量或挂载注入,同一个镜像在开发、测试、生产环境中运行完全相同的代码。

模型权重是个特例:它体积大且变更频率低。打进镜像会让镜像巨大、构建缓慢;完全外挂则增加启动时的下载时间。实践中常见的折中是把权重放在共享存储或单独的镜像层中,并在部署文档里记录清楚它的版本与来源。无论选哪种,都要把「当前运行的是哪个权重版本」变成可查询的信息。

健康检查与回滚演练

存活检查回答「进程是否还活着」,失败时应重启;就绪检查回答「是否可以接收流量」,失败时应从流量中摘除但不重启。对需要加载模型的服务,两者的区别尤其关键:进程已启动但模型还在加载时,存活检查应当通过而就绪检查应当失败,否则流量会被打到尚未就绪的实例上,表现为一批请求异常失败。把两种检查混为一谈是这类服务最常见的部署错误。

回滚能力必须演练过才算存在。演练要做的事很简单:部署一个新版本,然后执行回滚,记录从决定回滚到服务恢复的实际耗时,并确认回滚后的版本确实是预期的那个。很多方案在文档上写着「支持回滚」,实际执行时才发现需要重新构建镜像、配置未版本化、或者数据结构已变更无法回退。这些问题只有演练才能暴露。

实践任务

完成容器化部署,验证配置外置、健康检查、日志采集与回滚四项能力,并记录一次回滚耗时。

  • 编写容器构建文件,确认镜像中不含配置、密钥与数据;记录镜像体积与构建耗时。
  • 实现配置与密钥外置,用两组不同配置启动同一镜像,验证行为差异符合预期。
  • 分别实现存活检查与就绪检查;模拟模型加载中的状态,验证就绪检查失败而存活检查通过。
  • 部署新版本后执行一次回滚演练,记录从决定回滚到服务恢复的耗时,并确认回滚后的版本与权重版本均为预期值。

自测与答案

第 1 题

为什么配置与密钥不应打进容器镜像?

尚未检查本题。

查看答案与评价要点

参考答案:配置随环境变化,打进镜像会导致每个环境都要单独构建,失去「同一镜像各环境一致」的价值;密钥会永久留在镜像层中,即使后续删除也可从历史层中取出,构成泄漏。正确做法是通过环境变量或挂载在运行时注入。

评价要点:指出每环境单独构建的问题;指出密钥留存在镜像层中;给出运行时注入的做法

第 2 题

存活检查与就绪检查混为一谈,会对需要加载模型的服务造成什么问题?

尚未检查本题。

查看答案与评价要点

参考答案:模型加载期间进程已启动但尚不能服务:若只有一种检查且被当作就绪判据,流量会被打到未就绪实例上,造成一批请求异常失败;若被当作存活判据,实例可能在加载完成前被反复重启而永远无法就绪。正确做法是加载期间存活检查通过、就绪检查失败。

评价要点:指出加载期间的中间状态;说明误判为就绪会导致请求失败;说明误判为存活会导致反复重启

尚未完成自测。

今日完成标准

  • 提交容器构建文件与镜像内容检查结果,确认不含配置、密钥与数据
  • 提交同一镜像在两组配置下的行为差异验证,以及两类健康检查的状态验证
  • 提交回滚演练记录,含实际耗时与回滚后版本确认

常见错误与纠正提示

  • 把配置或密钥打进镜像,每个环境重复构建且密钥长期留存
  • 只实现一种健康检查,模型加载期间流量被打入造成批量失败
  • 文档写着支持回滚但从未演练,真正需要时才发现不可行

分层任务

基础任务

在教师提供的构建文件上完成配置外置,并验证两组配置的行为差异。

标准任务

独立完成容器化、两类健康检查与一次回滚演练。

挑战任务

把模型权重版本纳入部署元信息,实现「当前运行的是哪个代码版本与权重版本」的可查询接口并验证。

关联知识点

延伸阅读

学习状态:未学习

Day 90

测试优化

建议时长:75 分钟

本日 CO:CO4 CO5 CO6 CO8

本日概要

测试优化阶段要做的不是把指标调到最高,而是把系统的真实表现测清楚并记录下来。三类测试缺一不可:功能测试(评估集上的各项指标)、性能测试(不同并发下的延迟分位数与吞吐)、以及异常测试(依赖不可用、输入越界、注入尝试时的行为)。优化则应遵循先测后改的原则——每次只改一项,改动前后都跑同一套测试,并记录指标变化。最后要形成一份完整的测试报告,其中最有价值的部分往往不是达标的项,而是明确写出的「当前不满足什么、原因是什么、需要多少投入才能改善」。

听书与视频

本日听书

6 分钟 · MP3 · 双主持人讲解

B 站讲解

2026 软件测试必看:AI怎么帮我们高效提效

小北说测试 · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能设计覆盖功能、性能与异常三类的测试方案
  • 能按单变量原则组织优化,使指标变化可归因
  • 能在报告中如实呈现未达标项及其原因与改善成本
  • 能区分测试通过与系统可靠,并说明测试覆盖的边界

核心讲解

三类测试的分工

功能测试在评估集上运行,产出检索召回率、有正确片段时的回答准确率、拒答准确率与引用一致性通过率等指标。性能测试在不同并发下测量首词元延迟与整体延迟的分位数以及吞吐,找出延迟明显上升的拐点。异常测试构造依赖不可用(检索服务宕机、模型服务超时)、输入越界(超长输入、空输入、特殊字符)与安全尝试(文档中的注入文字),验证系统行为是否符合预设——如实报错、正确拒绝、不执行注入指令。

三类测试的结论共同构成对系统的完整描述。只做功能测试的系统上线后可能在并发下崩溃;只做性能测试的系统可能又快又错;缺少异常测试的系统在第一次依赖故障时就会暴露未定义行为。因此报告应当三类齐全,并明确写出每类的覆盖范围与未覆盖之处。

优化要能归因

优化阶段最容易犯的错误是同时调整多项——换了嵌入模型、改了切块参数、又调了提示,最后指标提升了却说不清是哪一项起的作用,也无法在别的场景复用这个经验。正确做法是每轮只改一项,改动前后跑同一套测试,记录指标变化与耗时变化。若某项改动收益不明显,应当如实记录并回退,而不是保留它「反正也不坏」——每一项保留的改动都是未来的维护成本。

报告中最有价值的是未达标项的说明。写清楚「多篇综合类问题的准确率只有某个值,原因是当前召回数量不足以覆盖跨文档信息,提高召回数量会使延迟超出目标,需要引入重排才能兼顾,预计投入若干工作量」,比只报告达标的指标有用得多。这样的表述让读者知道系统的真实边界,也让后续改进有明确起点。

实践任务

完成功能、性能与异常三类测试,做至少两轮单变量优化并记录指标变化,形成测试报告。

  • 运行功能测试,记录四项指标;按问题类型(单篇、多篇、无答案)分别统计而不只给总分。
  • 运行性能测试,覆盖至少三个并发档位,记录延迟分位数与吞吐,标出拐点。
  • 运行异常测试:构造依赖不可用、三类越界输入与两类注入尝试,逐项记录系统行为是否符合预设。
  • 进行至少两轮单变量优化,每轮记录改动项、改动前后指标与耗时变化;对收益不明显的改动执行回退并记录;最后撰写测试报告,单列未达标项及其原因与改善成本估计。

自测与答案

第 1 题

为什么优化阶段必须坚持每轮只改一项?

尚未检查本题。

查看答案与评价要点

参考答案:同时改动多项时,即使指标提升也无法判断是哪一项起作用,经验无法复用到其他场景,收益不明显的改动还会被一并保留成为长期维护成本。单变量改动配合前后跑同一套测试,才能让指标变化可归因,并支持对无效改动的回退。

评价要点:指出多变量改动无法归因;指出经验无法复用;指出无效改动会成为维护成本

第 2 题

测试报告中为什么要单列未达标项及其原因与改善成本?

尚未检查本题。

查看答案与评价要点

参考答案:它让读者知道系统的真实边界,避免在不适用的场景中误用;同时把原因与改善成本写清楚,为后续改进提供明确起点,使决策者能判断是否值得投入。只报告达标项的报告掩盖了风险,也无法支撑后续规划。

评价要点:指出让读者了解真实边界;说明为后续改进提供起点;指出只报达标项会掩盖风险

尚未完成自测。

今日完成标准

  • 提交功能测试的四项指标,并按问题类型分别统计
  • 提交至少三个并发档位的性能数据与拐点,以及异常测试逐项的行为记录
  • 提交两轮单变量优化的改动、前后指标与回退记录,以及含未达标项说明的测试报告

常见错误与纠正提示

  • 只做功能测试,上线后在并发或依赖故障下暴露问题
  • 一轮同时改多项,指标提升但无法归因
  • 报告只写达标项,掩盖系统的真实边界

分层任务

基础任务

在教师提供的系统上完成功能测试与一组异常测试并记录结果。

标准任务

独立完成三类测试、两轮单变量优化与完整测试报告。

挑战任务

为未达标项设计一个最小验证实验,用少量投入验证改进方向是否成立,再决定是否投入完整实现。

关联知识点

延伸阅读

学习状态:未学习

Day 91

总结汇报

建议时长:75 分钟

本日 CO:CO4 CO5 CO6 CO8

本日概要

项目汇报的目标不是展示做了多少工作,而是让听众准确理解系统能做什么、不能做什么、以及结论的可信度。有效的结构是五段:问题与目标、方案与关键决策、证据与指标、局限与未验证事项、以及后续计划。其中「局限」一段最能体现专业性——一个能清楚说出自己系统边界的作者,比一个只展示成功案例的作者更值得信任。演示环节要准备好失败案例,主动展示系统答不出或答错的情形并解释原因,这比精心挑选的成功演示更有说服力,也更接近真实使用体验。

听书与视频

本日听书

5 分钟 · MP3 · 双主持人讲解

B 站讲解

全网最全最真实,35分钟全面掌握千问办公【附完整文档】

老顽童周老师 · 已核验 2026-08-29

在 B 站打开

学习目标

  • 能按五段式结构组织项目报告,每段有明确的信息职责
  • 能用测试数据而非主观描述支撑结论
  • 能主动呈现系统局限与失败案例,并解释成因
  • 能把同伴提问转化为对局限说明的补充

核心讲解

五段式与证据

第一段说明问题与目标,包括为谁解决什么问题、成功标准是什么。第二段说明方案与关键决策,重点不是罗列技术栈,而是说清楚在哪几个岔路口做了什么选择、为什么。第三段呈现证据:评估集构成、各项指标、性能数据与异常测试结果,所有数字都要说明测量条件。第四段写局限与未验证事项。第五段给出后续计划及其优先级依据。

证据段落最忌讳只给结论不给条件。「准确率百分之八十五」这样的数字,必须配上是在哪个评估集、哪类问题、什么配置下测得的;否则听众无法判断它的适用范围,也无法与其他系统比较。把测量条件与数字放在一起,是让报告可被复核的最低要求。

主动展示失败

演示时只展示成功案例,短期看效果好,但听众一旦自己试出问题,之前建立的信任会成倍损失。主动准备两到三个失败案例——系统答不出的、答错的、以及触发拒答的——并解释各自的成因(召回未命中、上下文组装丢失关键信息、或问题超出资料范围),反而能让听众准确理解系统的能力边界,在实际使用中形成合理预期。

同伴提问是补充局限说明的最好来源。演示后应当记录所有提问,特别是那些自己没想到的角度;对当场答不上来的问题,如实说明「这一点尚未验证」并写进局限一段,而不是临场给出一个看起来合理的推测。把提问转化为文档改进,是这次汇报最实质的产出。

实践任务

撰写五段式项目报告并做一次包含失败案例的演示,收集同伴提问并据此补充局限说明。

  • 按五段式撰写项目报告,确保证据段的每个数字都附测量条件。
  • 准备两到三个失败案例,为每个分析成因并归类到具体环节。
  • 完成一次演示,包含成功案例与失败案例,并说明系统的能力边界与适用范围。
  • 记录同伴提问,把答不上来的问题如实写入局限与未验证事项一段,并据此更新后续计划的优先级。

自测与答案

第 1 题

项目报告的证据段落中,为什么每个指标数字都必须附测量条件?

尚未检查本题。

查看答案与评价要点

参考答案:脱离条件的数字无法判断适用范围,也无法与其他系统比较:同一个准确率在不同评估集、不同问题类型与不同配置下含义完全不同。把评估集构成、问题类型与配置与数字放在一起,是让报告可被复核的最低要求。

评价要点:指出脱离条件无法判断适用范围;指出无法横向比较;列出评估集、问题类型与配置等条件

第 2 题

演示时主动展示失败案例,为什么比只展示成功案例更有说服力?

尚未检查本题。

查看答案与评价要点

参考答案:只展示成功案例时,听众一旦自行试出问题,之前建立的信任会成倍损失。主动展示答不出、答错与触发拒答三类情形并解释成因,能让听众准确理解系统的能力边界,在实际使用中形成合理预期,反而增强对作者判断力的信任。

评价要点:指出听众自行发现问题会损失信任;说明失败案例帮助建立合理预期;把它与作者判断力的可信度联系起来

尚未完成自测。

今日完成标准

  • 提交五段式报告,证据段每个数字附测量条件
  • 提交两到三个失败案例及其成因归类
  • 提交演示记录与同伴提问清单,以及据此更新的局限说明与后续计划

常见错误与纠正提示

  • 报告罗列技术栈而不说明关键决策及其理由
  • 给出指标数字却不写测量条件,听众无法判断适用范围
  • 演示只挑成功案例,听众自行试出问题后信任受损

分层任务

基础任务

按五段式模板完成报告的前三段,并准备一个失败案例。

标准任务

独立完成完整报告与包含失败案例的演示,并据提问更新局限说明。

挑战任务

为报告补充一份「适用与不适用场景」清单,明确列出在哪些条件下不应使用本系统及其理由。

关联知识点

延伸阅读

学习状态:未学习