Prompt 工程实践:让 LLM 更听话的技巧
Prompt 工程这个词听起来很高大上,但它本质上就是"怎么跟模型说话才能让它给出你想要的结果"。这篇文章分享一些实际项目里积累的经验。 明确角色和背景 给模型一个清晰的角色定位: # 模糊 "帮我写一段代码" # 清晰 "你是一个 Python 高级工程师,专注于性能优化。 帮我优化以下函数,要求: 1. 保持功能不变 2. 减少不必要的循环 3. 添加类型注解 4. 代码风格遵循 PEP 8" 角色描述告诉模型应该以什么视角和知识储备来回答。 Few-shot:给例子比给说明更有效 告诉模型你想要什么格式,最好的方式是给例子: 将以下文本分类为:正面/负面/中性 示例: - "这个产品质量很好" → 正面 - "一般般,没什么特别" → 中性 - "完全是浪费钱" → 负面 现在分类以下文本: - "还行,比预期好一点点" Few-shot 比描述规则更直观,模型更容易理解你的意图。 Chain of Thought:让模型"想一想再说" 对于需要推理的任务,让模型展示推理过程: # 直接问(效果差) "一个工厂每天生产 500 个零件,工人效率提升 20% 后, 需要多少天生产 18000 个零件?" # 加上 "一步一步思考"(效果好) "一个工厂每天生产 500 个零件,工人效率提升 20% 后, 需要多少天生产 18000 个零件?请一步一步计算。" “Let’s think step by step” 或"一步一步思考"这类指令能显著提升推理准确率,这是有论文支撑的结论。 ...