跳到主要内容

1 篇博文 含有标签「pre-commit」

查看所有标签

Prompt 的 Pre-Commit Hooks:LLM 团队一直缺失的内环工具链

· 阅读需 11 分钟
Tian Pan
Software Engineer

打开任何生产环境中的 LLM 代码库里的提示词文件,你会发现评审者的目光变得呆滞。这个 diff 是 15 行自然语言,其中包含一个微调过的 few-shot 示例,一条重新表述的指令,以及编辑器留下的一个多余的尾部空格。没有针对它的语法检查,没有 Linter 抱怨相互矛盾的指令,没有扫描器注意到 few-shot 示例包含上周二支持日志中真实客户的电子邮件地址,也没有冒烟评估(smoke eval)来确认这一更改不会导致系统实际提供的提示词延迟飙升。评审者凭感觉批准——就像 2008 年团队批准 HTML 模板的 diff 一样——然后在 6 小时后,生产遥测系统捕获到了回归。

围绕代码的内环工具(inner-loop tooling)已经成熟了 20 年。围绕提示词的内环工具则介于“我们在 git 中有一个 .md 文件”和“我们在入职后运行过一次 promptfoo”之间。这种差距正在扩大,因为在许多系统中,提示词现在是杠杆率更高的修改:一个 30 行的系统提示词更改比 1000 行的服务重写更能改变行为,而它的评审过程却像处理一份 Word 文档。