提示工程(Prompt Engineering)
提示工程是设计输入给 大语言模型的指令,让模型产出期望结果的技术。 即使有了最强大的模型,糟糕的 prompt 也会让输出惨不忍睹。
核心技巧
1. 角色设定(Role Prompting)
"你是一位资深 Python 工程师,擅长代码审查..." 通常比裸问得到更专业的回答。
2. 少样本示例(Few-shot)
给 2-3 个输入-输出对作为示范,比单纯指令有效得多。
3. 思维链(Chain-of-Thought)
"请一步步思考" 或显式要求展示推理过程,能显著提升复杂任务的准确率。
4. 结构化输出
明确要求输出 JSON / Markdown / 表格,便于程序解析。
5. 分隔符与格式
用 """ / <tag> / Markdown 标题 把不同部分(system / context / question)
清晰区分。
进阶技术
- Self-Consistency:采样多次取多数答案。
- ReAct:让模型边思考边行动。
- Automatic Prompt Engineering:用模型优化 prompt(APE)。
- Function Calling:让模型输出结构化工具调用(参考 function-calling)。
调试工具
- LangSmith / LangFuse:trace prompt 调用链。
- PromptFoo:批量跑 prompt 测试用例。
- PromptLayer:记录每次 prompt 与输出。