如何写高效的Prompt?

发布于:2025-06-07 ⋅ 阅读:(38) ⋅ 点赞:(0)

概述

提示词(Prompt)的质量将直接影响模型生成结果的质量,所以精心设计一个让大模型能够理解并有效回复的提示词是至关重要的。本文内容自论文中获取:https://arxiv.org/pdf/2312.16171 介绍了5类共计26条提示词书写原则。

书写原则

类别 原则 备注
快速结构和清晰度
  • 在提示中融入目标受众。比如:做出解释让5岁的小朋友能够理解
  • 使用肯定指令,如“做”,避免负面语言,如“不要”。
  • 使用引导词,例如写“一步一步思考。”
  • 使用输出预热器,即通过以预期响应的开头结束提示来结束您的提示。
  • 使用分隔符。用于区分不同的部分
  • 格式化提示时,请从“###Instruction###”开始,然后根据需要添加“###Example###”或“###Question###”。随后,呈现内容。使用一个或多个换行符将说明、示例、问题、上下文和输入数据分开。
笔者个人实践体感,当模型存在幻觉高频生成不合预期的固定内容时,使用明确的不要生成xxxx提示词来避免内容生成还是十分有效的
具体性和信息性
  • 提示词中提供示例供模型参考(使用少量提示)
  • 当您需要澄清或更深入地了解某个主题、想法或任何信息时,请使用以下提示:
    • 解释[插入特定主题]用简单的术语。
    • 像我一样解释给我,就像我只有 11 岁。
    • 向我解释像初学者一样[领域]。
    • “用简单英语写[文章/文本/段落],就像你向 5 岁的孩子解释一样。”
  • 在您的提示中加入以下短语:“确保你的答案是无偏见的,并且不依赖于刻板印象。”
  • 要编写与提供的样本相似的任何文本,请包括具体的指示:
    • “使用所提供的段落[/标题/文本/文章/答案]中的相同语言。”
  • 当您想要使用特定单词、短语或句子启动或继续文本时,请使用提供的提示结构:
    • 我为您提供开头[歌词/故事/段落/文章…]:[插入歌词/词语/句子]。按照提供的文字完成它。保持流畅一致。
    • 清楚地陈述模型的要求,以便模型遵循这些要求生成内容,形式为关键字、规定、提示或指导。
    • 为了询问特定的主题或想法并测试您的理解程度,您可以使用以下短语 [16] :
    • “教我[定理/主题/规则名称]并在结尾包含一个测试,在我回答后告诉我我的答案是否正确,而无需事先提供答案。”
  • 要编写详细的文章/文本/段落/文章或任何类型的文本:
    • “为我详细撰写关于[主题]的[文章/文本/段落],并添加所有必要的信息。”
笔者个人实践体感,提示词中提供输入输出的例子,对输出结果的准确率有较大影响
用户交互和参与
  • 允许模型通过问您问题获取精确的细节和需求,直到他有足够的信息来提供所需的输出。
    • “从现在起,我希望你能问我一些问题…”
  • 要编写详细的文章/文本/段落/文章或任何类型的文本:
    • “为我详细撰写关于[主题]的[文章/文本/段落],并添加所有必要的信息。”
内容和语言风格
  • 纠正/更改特定文本而不改变其样式:“尝试修改用户发送的每个段落。你应该只改进用户的语法和词汇,并确保听起来自然。你应该保持原始的写作风格,确保正式的段落仍然是正式的。”
  • 使用给模型定义明确目标的话术,比如:“你的任务是”和“你必须。”
  • 给模型以惩治类型的压力话术,比如:“你会受到惩罚。”
  • 分配角色给语言模型。比如:你是一个客服、是一个数学家。。。
  • 在提示中使用短语“回答自然语言形式的问题”。不需要对 LLM 有礼貌,因此没有必要添加诸如“请”,“如果你介意的话”,“谢谢”,“我想”,等短语,直接进入正题。
  • 在一个提示内重复一个特定的单词或短语多次。
  • 添加激励性的提示比如:"I’m going to tip $xxx for a better solution!” 为了获取更好的方案我给你xx美元小费
对模型的提示词无需敬词,都是废话
复杂的任务和编码提示
  • 将复杂任务分解成一系列更简单的提示,在互动对话中进行。
  • 当你有一个复杂的编码提示可能分布在不同的文件中时:
    • “从现在开始,每当您生成跨多个文件的代码时,都会生成一个可以运行的[编程语言]脚本,自动创建指定的文件或将现有文件更改为插入生成的代码。[你的问题]。”
  • 结合链式思维 (Cot) 和少数提示。
交互式的分步生成,一个个子问题拆解最终得到的结果更为准确。也可以将思考的节点作为提示词提供给模型构成思维链

网站公告

今日签到

点亮在社区的每一天
去签到