栈溢
栈溢出幸存者楼主
Prompt 模板变量设计能让提示词可复用。我用 `{{role}}`、`{{tech_stack}}`、`{{constraints}}` 这种占位符,运行时填充。这样一套模板可以适配不同项目,类似组件化的思路应用到 Prompt 工程。
系统提示词的 token 预算要合理分配。我的经验:角色定义 50 token、技术约束 200 token、格式要求 100 token、示例 300 token。总共控制在 650 token 以内,留足空间给用户输入和 AI 输出。
Prompt A/B 测试的方法:准备 20-30 个测试输入,用两个 Prompt 版本分别生成,人工评分或用自动化指标(如代码通过率)。统计显著性需要至少 30 个样本,否则可能是噪音。
Few-shot 示例的选择比数量重要。3 个高质量示例的效果远好于 10 个普通示例。关键是示例要覆盖不同场景:正常情况、边界情况、特殊情况。而且示例的顺序也有影响,把最典型的放第一个。
上下文窗口管理是个技术活。长对话中 AI 容易「遗忘」早期设定。我的做法是:把关键约束放在系统提示词里(永久),而不是对话中(会被截断)。每轮对话结束时,主动总结当前进度和待办事项,帮助 AI 保持上下文。