提示词工程(Prompt Engineering)
让大模型返回更准确的结果 提示词工程 Prompt Engineering_在编写提示词时,如何让大模型更准确地理解任务需求?-CSDN博客
Prompt提示词如何写才能发挥大语言模型LLM的最大潜力 - 大模型知识库|大模型训练|开箱即用的企业大模型应用平台|智能体开发|53AI
Prompt Engineering
写好Prompt的一些原则总结
最核心的写一条好prompt的原则就是尽可能清晰、明确地表达你的需求(类比产品经理向程序员提需求)。细分下来,具体原则包括:
- 清晰的指令: 足够清晰明确地说明你希望模型为你返回什么,最后更加细致地说明需求,避免模糊表达。
- 提供上下文和例子: 给出较为充分的上下文信息,让模型更好地理解相关背景。如果能够提供示例,模型能表现更好(类似传统LLM中的in-context learning)。
- 善用符号和语法: 使用清晰的标点符号,标题,标记有助于转达意图,并使输出更加容易被解析
- 让模型一步一步的思考: 在这种方法中,模型逐步进行思考,并呈现出涉及的步骤,这样做可以降低结果的不准确的可能性,并对模型响应的可解释性有很大的帮助。
- 激励模型反思和给出思路: 可以在prompt中用一些措辞激励模型给出理由,这样有助于我们更好地分析模型生成结果,同时,思维过程的生成,也有助于其生成更高质量的结果。
- 给容错空间: 如模型无法完成指定的任务,给模型提供一个备用路径,比如针对文本提问,可以加入如果答案不存在,则回复“无答案”
- 让模型给出信息来源: 在模型结合搜索或者外部知识库时,要求模型提供他的答案的信息来源,可以帮助LLM的答案减少捏造,并获取到最新的信息。
优质的提示词典型框架
优质的prompt千变万化,但遵循上述原则,我们总结出一个比较实用的框架,可以帮助用户更高概率从通义千问中收获更高质量的模型生成结果。使用LLM时,建议包含如下内容:
- system message:你希望大模型扮演什么角色,来解决你当前的问题。大模型具有较强的角色扮演能力,相比直接回答往往表现更好。system message中也可以规定大模型的回答范围。
-
prompt
- 指令:明确说明你希望大模型做什么事情,不要含糊其辞。
- 例子:如果可能,提供尽可能丰富的例子信息。
- 原因:详细解释你希望模型做这件事情的原因、动机、希望的结果等,这样大模型能更好地理解你的想法,执行需求。
- step by step:对于复杂任务,让大模型一步一步的思考,可以给出更加合理的答案。
- 对于输出格式的形容:对于部分场景,明确大模型输出格式的要求,可以更好的获取到更加结构化,适合系统调用的答案。