第1章 关于提示词的开胃前菜 1.1 提示词的定义 提示词(Prompt)是用户向LLM输入的一段文本,用于指导LLM生成符合用户要求的输出。 1.2 提示词的本质 提示词的本质是用户与LLM之间沟通的桥梁,它决定了LLM准确“预测”用户意图的能力。我们写作提示词,就是要提升LLM准确生成用户期望结果的能力,让LLM更懂用户。 1.3 写好提示词的四大要素 指令 上下文 格式化输出 角色 指令 指令是提示词的核心,它直接决定了LLM的行为。 ✅好的指令 | ❌不好的指令 使用清晰、简洁、明确的语言 | 使用模糊、冗长、复杂的语言 写一篇探讨大语言模型如何赋能基层政府的学术论文,面向公共管理专业的研究生,既要有理论分析,也要有实证分析。
提示词(Prompt)是用户向LLM输入的一段文本,用于指导LLM生成符合用户要求的输出。
提示词的本质是用户与LLM之间沟通的桥梁,它决定了LLM准确“预测”用户意图的能力。我们写作提示词,就是要提升LLM准确生成用户期望结果的能力,让LLM更懂用户。
指令是提示词的核心,它直接决定了LLM的行为。
| ✅好的指令 | ❌不好的指令 |
|---|---|
| 使用清晰、简洁、明确的语言 | 使用模糊、冗长、复杂的语言 |
| 写一篇探讨大语言模型如何赋能基层政府的学术论文,面向公共管理专业的研究生,既要有理论分析,也要有实证分析。同时要有数据支撑,而且必须紧扣公共管理主题,不要偏离到大语言模型主题。 | 写一篇学术论文 |
| 写一个数独小游戏,要求使用Python语言,代码要简洁、易懂、易运行。 | 写一个数独小游戏 |
| 我有一款AI产品,大致功能是通过大语言模型介入,帮助社区工作者调解社区矛盾,要求朗朗上口意思明确,从创意、易记、主题突出等方面各取 3个名字。 | 给我的新产品取个名字 |
上下文是提示词的背景信息,它可以帮助LLM更好地理解用户的意图。
注意事项:
上下文是可选的,但不要滥用上下文
上下文不要过长,否则会影响LLM的性能
这里引入一个概念:上下文窗口。
上下文窗口是LLM能够处理的最大输入长度。AI 一次输入有限,输入内容越多,AI 越难处理,质量会下降。
然而窗口是可以滑动的,因此我们可以把历史消息摘要作为上下文,这样就可以让LLM处理更长的输入。
每个模型的上下文窗口大小不同,例如:
AI生成的与用户输入的都可以被当作上下文
可以让AI生成上下文,例如:
请先从网络搜索有关“人工智能在数字政府领域的最新进展”的五个答案,然后整理成一篇报告 要写好这个用户故事你还需要了解哪些信息? 请对这段话进行解释,详细解释后翻译这段话。
也可以使用用户输入的上下文,例如:
以下是一段由服务提供商提供的api文档,请基于这段api文档,使用python编程语言,编写一个调用该api的代码示例。 以下是一篇关于“人工智能在数字政府领域的最新进展”的报告,请基于这篇报告,写一篇关于“人工智能在医疗领域的最新进展”的报告。
有一些情况下,上下文是必须的用户信息,例如:
| 没有上下文的提示词 | 使用上下文的提示词 |
|---|---|
| 帮我写一份简历 | 我的姓名是张三,我是一名软件工程师,我曾在阿里巴巴和腾讯工作过,我擅长Python和Java编程,我熟悉微服务架构和容器化技术,我曾在多个项目中使用过这些技术。基于以上关于我的个人信息,帮我写一份针对自动化测试岗位的简历。 |
格式化输出是提示词的输出格式,它决定了LLM输出的格式。可以使用这样几种输出格式:
例如:
根据“人工智能在数字政府领域的最新进展”这个研究主题,生成一份500字以上的摘要,要求有研究缘起,研究主题,研究过程,结果以及结论。
其中,大多数LLM的默认输出格式为Markdown,JSON/XML/YAML/CSV等方便程序解析的结构化文本对于LLM最为友好
例如以下案例:
请根据我提供的信息,以csv的格式将结果进行量化。
例如这个文风转换的提示词:
将给定文本转换为符合小红书用户群体和调性的文案格式:
角色是提示词的输出角色,它决定了LLM以何种身份生成用户需要的内容。
注意事项:
设置角色可以让LLM更容易找到与角色相关的训练语料,明确自己的任务
例如:
你是一个资深的心理医生,擅长使用认知行为疗法解决心理问题:
写好提示词的基础: