跳转到主要内容
Prompt Engineering 是用户与模型之间的重要桥梁。优化提示对于的模型推理结果至关重要。通过从简单到复杂的案例展示,将帮助开发者掌握提示词的使用,以提升大语言模型在文本总结、推理和转换等基础自然语言处理任务中的能力。

Prompt(提示词)设计原则

原则一:编写清晰且具体的指令

1. 明确的表达
  • 模糊指令:❌
用户的需求不清晰,可能导致模型产生各种艺术形式的泛泛介绍。
  • 明确指令:✅
    明确指出需要讨论的艺术流派(印象派)和具体的输出要求(特点和画家),避免模型产生不相关的内容。
2. 详尽的指令
  • 简略指令:❌
    过于宽泛,无法明确用户的具体需求。
  • 详细指令:✅
    提供了具体的经济学概念(供需理论)和要求(影响及举例),确保模型提供详细且相关的信息。
3. 巧用分隔符
  • 无分隔符:❌
    无法分辨哪部分是需要分析的文本,哪部分是指令,容易引起误解。
  • 使用分隔符:✅
    使用 XML 标签清晰地将需要分析的文本和指令区分开,避免混淆,确保模型正确理解和处理任务。
4. 考虑特殊情况
  • 无条件检查:❌
    未指明错误类型,可能导致结果不符合预期。
  • 有条件检查:✅
    指明先检查语法错误的存在与否,再决定下一步行动,确保模型按要求执行。
5. 使用少样本(Few-Shot-Prompt)帮助大模型理解
  • 无示例:❌
    语调和风格不明确,模型可能无法理解具体要求。
  • 提供示例:✅
    提供一个对话样本,展示预期的语调和风格,帮助模型理解任务要求和输出格式。

原则二:给模型时间去思考

在设计提示词时,为语言模型提供充足的推理时间非常重要。与人类一样,语言模型在解决复杂问题时也需要时间。如果让模型匆忙得出结论,结果可能不准确。例如,若仅提供书名和一句简介让模型推断一本书的主题,可能得不到理想的答案。因此,我们应在提示词中指引模型进行深入思考,例如先列出问题的各种看法,再得出最终结论。通过逐步推理,模型能更好地进行逻辑思维,输出更准确的结果。
1. 指定完成任务的步骤
下面是一个示例,我们描述了西游记的故事,并给出以下 prompt 指导模型操作:
模型输出:
2. 指导模型自主思考(吴恩达反思工作流)
在设计提示词时,我们可以要求语言模型先自行思考再下结论。例如,假设我们要模型判断一个数学问题的解答是否正确,仅提供问题和解答是不够的。相反,我们可以先让模型自己解决问题,再与提供的解答进行比较。这能帮助模型更好地理解问题,做出更准确的判断。接下来给出了三步反思 prompt。
模型推理 第一轮直接解答:
第二轮验算答案的正确性:
第三轮模型一步一步推理解答:

常用 Prompt 参考

文本分析

1. 情感分析
2. 文档分析
3. 文本翻译

注意事项

在开发和使用大模型时,需注意其生成虚假知识的风险,即 “幻觉” 现象。尽管模型掌握了丰富的知识,它们仍可能会编造看似真实但实则虚假的信息。 为应对这一问题,开发者一方面可以通过优化 Prompt 设计来减少幻觉,例如引用原句来追踪信息来源,或者使用上文提到的反思工作流。另一方面可以使用阶跃大模型提供的 Tool call 工具,Tool call 可以扩展语言模型的功能,使其能够执行额外的操作,如搜索信息、计算、访问数据库等。