提示工程:编写能获得更好AI结果的提示词
为什么你的AI提示词不起作用
你可能尝试过向AI寻求帮助——写邮件、调试代码、总结文章——但得到的回复却不尽如人意。它可能太模糊、太长,或者完全跑题。问题通常不在于AI,而在于提示词。
提示工程是设计输入以从大型语言模型(LLM)获得更好输出的实践。它不关乎魔法咒语,而关乎清晰的沟通。本指南为你提供实用技巧,帮助你编写能持续产生有用结果的提示词。
1. 具体且清晰
LLM不会读心术。如果你问“写关于狗的内容”,你会得到一篇泛泛的文章。相反,要明确主题、格式、长度和受众。
差: 写关于狗的内容。
好: 为宠物主人写一篇300字的文章,介绍最适合公寓饲养的3种狗。包括运动需求和性格。
你提供的约束条件越多,输出就越聚焦。把它想象成给自由职业者下指令:你越清晰,结果就越好。
2. 提供上下文和示例
LLM会从你提供的上下文中学习。如果你想要特定的风格或格式,就展示一个示例。
示例: 用一句话总结以下客户评论,聚焦主要投诉。示例:“产品到货晚且有损坏。”评论:“我在5号下单,10号发货,最终到货时盒子被压坏,物品有划痕。”
这种称为“少样本提示”的技巧,能帮助模型理解你想要的模式。
3. 使用角色扮演
给AI分配一个角色可以提升回复的质量和语气。例如,“扮演一名资深软件工程师”或“你是一名友好的客服人员”。这会让模型采用特定的视角和专业水平。
示例: 扮演一名网络安全专家。用不到200字向非技术经理解释SQL注入的风险。
4. 将复杂任务拆解为步骤
如果你的请求很复杂,就把它拆分成更小、按顺序的提示词。这能降低模型应接不暇或遗漏细节的可能性。
而不是: 为一款新应用制定营销计划。
试试: 步骤1:确定一款面向远程工作者的效率应用的目标受众。步骤2:列出三个能吸引他们的关键功能。步骤3:建议两个触达他们的营销渠道。
你也可以让模型“逐步思考”以鼓励推理。
5. 指定输出格式
如果你需要特定格式的输出——JSON、Markdown、表格——就明确说出来。这在将AI集成到自动化工作流中时尤其有用。
示例: 从下面的评论中提取产品名称、价格和评分。将结果作为JSON对象返回,键为:name、price、rating。
对于开发者,像JSON Formatter这样的工具可以帮助验证和格式化AI的输出。
6. 迭代和优化
第一个提示词很少能完美。把它当作一场对话:审视输出,找出缺失的部分,并相应地调整提示词。
示例: 如果AI的摘要太长,就追问:让它更短——50字以内。如果太技术化,就说:像对初学者一样解释。
7. 避免歧义和否定
LLM有时难以处理否定。不要说“不要使用术语”,而要说“使用简单的语言”。不要说“不要太模糊”,而要说“要具体并包含示例”。
8. 尝试温度和参数
如果你使用API,可以调整temperature(创造力)和max_tokens(长度)等参数。较低的温度(例如0.2)会产生更确定、更聚焦的输出;较高的温度(例如0.8)则鼓励创造力。对于事实性任务,使用低温度。
对比:弱提示词 vs. 强提示词
| 弱提示词 | 强提示词 |
|---|---|
| 写一篇博客文章。 | 为小企业主写一篇500字的博客文章,介绍云会计软件的好处。包括3个关键优势和一个行动号召。 |
| 修复这段代码。 | 调试这个计算斐波那契数列的Python函数。解释错误并提供带注释的修正版本。 |
| 总结这个。 | 用3个要点总结以下文章,每个要点不超过20字,聚焦主要论点。 |
常见问题
什么是提示工程?
提示工程是设计和优化输入(提示词)以引导大型语言模型生成所需输出的过程。它涉及清晰度、上下文和迭代。
我需要是程序员才能写出好的提示词吗?
不需要。虽然像API参数调优这样的技巧需要编程,但大多数提示工程关乎清晰的沟通,任何使用聊天界面的人都可以做到。
如何快速改进我的提示词?
从具体开始:说明格式、长度和受众。如果可能,提供示例。然后迭代——如果输出不对,告诉AI要改什么。
准备好把这些技巧付诸实践了吗?如果你在处理AI生成的JSON,使用我们的JSON Formatter来验证并美化输出,以供你的应用使用。