一个AI项目可以给出令人印象深刻的回答,却把背后的工程逻辑藏得严严实实。面试官打开你的仓库,看到的是一个聊天窗口、一串框架名称,还有一句“本应用准确率很高”的自述。他依然不知道:这个系统到底用了哪些文档?怎么跑起来?当答案没有依据时,它会怎么办?

你的README,就是让这些不确定性开始消失的地方。别把它当成一份安装说明,把它当成一场有证据支撑的短论证:问题是什么,系统怎么设计,每个结论背后有什么可核查的依据。

打开网易新闻 查看精彩图片

先划一条别人能看懂的边界

假设你做了一个助手,能从一小批公开家电手册里回答问题。开头就可以写清楚:它先找到相关手册段落,再写出带引用的答案;当手册内容回答不了问题时,它会明确报告“证据不足”。同时也要说明,它不能检查电器实物,也不能验证维修方案是否可行。

这段描述给了评审者一个具体可评估的对象。写清楚谁在用、接受什么输入、输出什么、排除了哪些用途。还要说明语料是公开的、有授权的,还是合成的。边界清晰了,你也能更快发现:某个看起来很诱人的功能,其实需要你根本没有的证据来支撑。

让一条完整路径可以复现

复现的意思是:另一个人照着你的说明操作,能观察到你描述的行为。它不要求评审者凭记忆重建你的整个开发环境。列出支持的运行时、依赖安装方式、配置项和必需的外部服务。示例配置里放占位符,永远不要放真实凭证。

说明首次运行会不会下载数据、构建索引,或者调用付费API。把准备步骤和正常启动分开写。如果你提供了离线测试模式,要准确说明它替代了什么。录制的回答可以展示界面行为和错误处理,但它无法衡量一个在线模型的当前质量——这个区别要写在启动说明旁边。

分享之前,在一个干净环境里按文档路线完整走一遍。记录你实际完成的日期、环境和检查项。如果某一步失败了,要么修好,要么把限制写清楚。没有对应的检查,就不要挂一个“验证通过”的徽章。

用一个请求把系统讲清楚

一张简单的请求流程图,通常比满墙的框架标志更有用。以手册助手为例,画出从提问到检索、上下文组装、答案生成、来源展示的完整路径。再画另一条路径,展示文档如何被切分成可搜索的片段。

不熟悉的术语在第一次出现时就要定义。比如“块”就是为搜索准备的一段源材料切片。一个嵌入向量,就是把文本映射成数值表示,用来计算相似度。这些定义不需要长篇大论,但必须让第一次看的人不卡壳。

把证据和声明一一对应

你说系统“准确”,就要给出可核查的测试结果。你说它“能处理长文档”,就要展示具体处理了多长的文档、耗时多少、结果如何。你说它“拒绝回答没有依据的问题”,就要给出触发拒绝的真实例子。

每条声明后面,跟着一个可以点开看的文件或一段可复现的命令。没有证据的形容词,在评审者眼里等于零。有证据的克制描述,反而更有说服力。

把限制写成设计的一部分

一个AI项目最容易被质疑的,不是它做不到什么,而是它假装自己什么都能做。把已知限制写进README,不是示弱,是展示你对系统边界的理解。比如:模型在专业术语密集的段落上容易出错;检索依赖的关键词匹配对同义词不敏感;离线模式下的回答质量低于在线模式。

这些限制写清楚了,评审者反而更愿意相信你在其他部分说的是真话。因为一个愿意暴露短板的人,通常不会在长板上撒谎。

让维护者信息成为信任的一部分

GitHub的README指南提到,要说明项目的目的、用途、设置方式和维护者。对AI项目来说,维护者信息还要多一层:谁在负责更新语料?模型版本怎么管理?发现问题应该找谁?

一个没有维护者说明的AI项目,就像一个没有责任人的系统。评审者不知道这个项目是活跃维护的,还是已经搁置了半年。写清楚维护状态和联系方式,成本很低,信任收益很高。

把README当成一次工程评审

最终,你的README要回答的不是“这个项目有多厉害”,而是“这个项目能不能被独立验证”。一个AI作品集的价值,不在于它生成了多么流畅的回答,而在于它是否展示了可检查的工程判断。

问题定义清晰、路径可复现、证据可核查、限制被承认——这四件事做到了,你的项目在面试前被刷掉的概率会大幅下降。不是因为标题更响,而是因为评审者终于能看懂你到底做了什么。