本文来自《AI 应用开发课程》月份 1 课程文档,已整理为网站文章版本。
1. 文档目的
本文件用于帮助你完成月份 1 项目的最终验收与展示。
2. 最终验收清单
- 项目目录结构清晰
-
.env.example存在 - CLI 可运行
- FastAPI 服务可启动
-
/health可访问 - 至少一个核心能力可通过 API 调用
- 至少一个核心能力可通过 CLI 调用
- 核心逻辑共用
- 有最小日志
- 有调用或成本记录
- README 可读且可执行
3. 你应当能演示的内容
最少包含以下 5 段:
- 项目目录结构
.env.example与 README- CLI 调用演示
- FastAPI
/docs演示 - 一次真实工作流演示
4. 推荐录屏脚本
开场 20 秒
介绍项目名称、目标用户和月份 1 范围。
目录结构 30 秒
展示:
app/cliapp/apiapp/servicesapp/clientsapp/tools
重点说明“CLI 与 API 共用核心逻辑”。
CLI 演示 40 秒
执行一个命令,展示输出。
API 演示 40 秒
启动 FastAPI,打开 /docs,调用一个接口。
代码说明 40 秒
打开一个 service 文件,说明核心逻辑所在。
5. 如果面试官追问,你应该能回答
- 为什么这里先不用 LangGraph?
- 为什么 CLI 和 API 不写成两套?
- 你的工具调用闭环是怎么做的?
- 你记录了哪些日志和成本信息?
- 如果进入月份 2,你会怎么给它接 RAG?
6. 结束判定
如果你能:
- 自己从头讲清结构
- 现场跑通主要功能
- 回答上面 5 个追问
就说明月份 1 已经不是“做过教程”,而是“真正掌握了基础底盘”。
7. 为什么“会录屏展示”也是工程能力的一部分
很多人误以为展示只是包装。实际上,对月份 1 来说,展示能力本身就是掌握程度的证明,因为它迫使你做到三件事:
- 讲清项目边界
- 讲清结构设计
- 讲清技术取舍
如果一个项目只能运行、不能讲述,通常说明你对它的理解还不够稳定。
8. 录屏时最值得强调的 3 个点
点一:结构比功能数量更重要
你应该让观众看到:
- 项目边界清晰
- 目录职责明确
- CLI 和 API 共用核心逻辑
点二:这个项目真的串起了月份 1
你要明确指出:
- Python 基础在这里体现在哪
- 工程化在这里体现在哪
- LLM API 在这里体现在哪
- Tool Calling 在这里体现在哪
- FastAPI 在这里体现在哪
点三:这个项目为什么能继续演进到月份 2 和月份 3
这会让你的项目更像一个成长中的系统,而不是一次性 Demo。
9. 一个“讲给面试官听”的讲述结构
除了录屏脚本,你还应准备一个 2 到 3 分钟讲述版本:
第一步:一句话介绍项目
例如:
“这是一个面向研发场景的最小助手,当前支持从需求描述中抽取待办项,并通过 CLI 和 FastAPI 双入口提供能力。”
第二步:讲结构,不先讲功能
重点说:
- 配置层
- client 层
- service 层
- tool 层
- 入口层
第三步:讲取舍
例如:
- 为什么月份 1 不做 RAG
- 为什么不一开始上 LangGraph
- 为什么先做 CLI 再接 API
第四步:讲后续演进
例如:
- 月份 2 可以接知识库和评估
- 月份 3 可以接 Agent 工作流
10. 本章在研发助手项目中的位置
这就是项目的收口层。它不再新增核心代码,而是在帮助你把:
- 功能
- 结构
- 文档
- 演示
真正整合成一个可展示成果。
11. 月份 1 最终完成的判定标准
只有同时满足下面 4 条,才算真的完成:
- 代码能跑
- 结构能讲
- README 能复现
- 录屏或讲述能展示完整主链路
少任何一条,都更像“练过”,而不是“掌握”。
12. 从本章过渡到月份 2 的桥接说明
月份 1 到这里正式闭环。
进入月份 2 时,你不需要推翻这个项目,而是要在它之上继续进化:
- 为它接知识库
- 为它接检索和评估
- 把“研发助手”从模型调用工具,升级到具备真实数据底座的系统
也就是说,月份 1 的综合项目既是结尾,也是月份 2 的起点。
13. 一个更完整的最终复盘模板
建议你在录屏或演示结束后,再写一份简短复盘,至少回答这 5 个问题:
- 这个项目真正做成了什么,不做什么?
- 哪一层结构现在最稳,哪一层还最脆弱?
- 哪个功能最能代表月份 1 的核心收获?
- 如果重来一次,哪个地方我会更早抽象?
- 进入月份 2 时,我最想优先扩展哪一块?
这份复盘很重要,因为它能把“演示成功”转化成“系统性理解”。
14. 为什么项目展示要把“边界”讲出来
很多初学者在展示时只强调:
- 我做了什么
但一个更成熟的表达方式还应包括:
- 我为什么只做这些
- 我为什么没有在月份 1 做更复杂内容
这会让你的技术取舍显得更稳,而不是像“因为不会,所以没做”。
15. 你在月份 1 真正获得的,不只是一个项目
更准确地说,你获得了两样东西:
- 一个可运行、可展示、可继续演进的项目雏形
- 一套可以迁移到月份 2、3、4 的工程习惯
从长期看,第二样东西甚至比项目本身更重要。
16. 最后的自我检验问题
在你结束月份 1 前,建议再问自己这 4 个问题:
- 如果没有文档提示,我还能从零重建这套最小结构吗?
- 如果别人问我为什么不直接把逻辑全写进路由,我能讲清吗?
- 如果别人问我 Tool Calling 和普通聊天的区别,我能讲清吗?
- 如果进入月份 2,我知道应该从哪一层继续扩展吗?
如果这 4 个问题大多都能答出来,就说明月份 1 真的已经沉淀成能力,而不是只停留在“我做过这个项目”。