一文读懂 Llama2 提示词结构与编写指南
来源:互联网
时间:2026-07-31 13:24:19
Llama 2 Chat 提示词结构
提示词的结构到底有多重要?这么说吧,如果使用的结构与训练时的不匹配,Llama 模型很可能给出一些让人摸不着头脑的结果。所以,先把基础打牢。
Llama 2 在聊天模式下,系统提示词和用户提示词的结构如下:
[INST] <>
{{ system_prompt }}
< >
{{ user_message }} [/INST]
把这个结构拆开来看,每个部分都有自己的职责:
* `[INST] <>
You are a helpful, respectful and honest assistant. Always answer as helpfully as possible, while being safe. Your answers should not include any harmful, unethical, racist, sexist, toxic, dangerous, or illegal content. Please ensure that your responses are socially unbiased and positive in nature.
If a question does not make any sense, or is not factually coherent, explain why instead of answering something not correct. If you don't know the answer to a question, please don't share false information.
< >
There's a llama in my garden ? What should I do?
[/INST]
指令覆盖
在对话过程中,如果需要覆盖之前的指令,可以通过发送一个新的系统提示词来实现,格式很简单:<>
{{ your new system_prompt }}
< >
Llama 2 提示词编写技巧
Meta 的工程师们分享了六条实用的提示词技巧,掌握了它们,向 Llama 2 提问时就能得到更理想的结果。#1 明确的提示词
输入详细、明确的提示词,效果远好于开放式提问。具体怎么操作?加细节、加限制。 **添加具体的细节** 比如精确说明输出的字符数,或者指定一个角色,都会让输出质量明显提升。你可能会觉得“总结这篇文档”已经够清楚了,但模型往往给你一个泛泛的结果。如果这么写呢: > “我是一个使用大型语言模型进行文档总结的软件工程师。请在250字以内总结以下文本。” 结果会改善很多。相关链接:OpenAI 的六步改善您的提示以获得更好结果。 **添加限制** 给提示词加上一些约束条件,模型就更有可能给出你想要的答案。比如让 Llama 2 只使用学术论文,或者不准引用2020年之前的资料。 泛泛的提示:`向我解释大型语言模型的最新进展`——这样模型可能会引用任何时期的来源,导致信息不那么对口。 更好的方式:`向我解释大型语言模型的最新进展。总是引用您的来源。永远不要引用2020年之前的来源。`#2 角色提示
给 Llama 2 赋予一个角色,能让模型更清楚你期待什么样的回答。 举个例子:你想了解 PyTorch 的优缺点,而且希望得到比较技术性的回应。泛泛的问“解释使用 PyTorch 的利弊”,得到的回答往往过于宽泛。 更好的做法是给模型一个角色:`你的角色是一个向处理复杂数据集的高级工程师提供高度技术性建议的机器学习专家。解释使用 PyTorch 的利弊。` 这样一来,模型输出的内容会更有技术深度,包含更多专家级别的细节。#3 思维链
加入“让我们一步一步思考”这样的短语,可以鼓励 Llama 2 逐步推理,从而提升回答的准确性。这个技巧源自 Google Brain 的论文(CoT 思维链提示)。 举个例子:`谁活得更久,Elvis Presley 还是 Mozart?` 直接问,模型可能会答错,以为莫扎特活得更久。 如果改成:`谁活得更久,Elvis Presley 还是 Mozart? 让我们仔细地一步一步地思考。` 模型更可能给出正确答案——Elvis。#4 自我一致性
即使用了前面那些技巧,单次生成也可能出错。这时候可以引入“自我一致性”——让系统定期检查自己的工作,进行自我改进。 具体做法是鼓励模型对同一个问题生成多个响应或推理路径,然后评估这些结果,找出最一致或最正确的答案。 例如:`列出并解释西班牙内战的原因。然后,确定哪个原因最重要,并解释原因。` 模型会生成几个解释或叙述,然后对比这些叙述的一致性和连贯性,最后基于多角度评估得出最重要的原因。它不只是生成信息,还要比较和对比自己的输出,选出支持证据最充分的答案。#5 检索增强生成
像 Llama 2 这样的大模型,效果取决于训练数据。如果想让它访问外部知识(比如公司的产品文档),就需要用检索增强生成(RAG)。 Llama 2 本身并不知道你们公司产品和服务的信息。通过 RAG,你可以把它连接到外部知识库——比如把所有文档和产品信息都存进数据库,然后每次提问时,模型会先检索数据库找到相关信息,再生成回答。相比微调模型,RAG 性价比更高,微调不仅花费大,还可能损害基础模型的能力。#6 限制无关 tokens
大模型有时会输出一些无关的 tokens,比如`当然!这里有更多关于...的信息`这类套话。减少这种行为能让回答更直接、更聚焦。 要限制额外的 tokens,需要结合前面提到的技巧:分配角色、给规则加限制、写明确的提示词。例如: 泛泛的问`什么是光合作用?`,模型可能返回“这是光合作用的定义”之类的冗余内容。 改进后:`用简单的术语解释光合作用过程,只关注关键步骤和涉及的元素。` 通过多种技巧的组合,就能引导模型提供紧贴需求的回答,不会跑题或啰嗦。-
- 关于宇宙的好的网名有哪些
- 角色扮演 | 1
- 网名