用好大模型?这5种实用的Prompt框架你一定要看看
用好大模型?这5种实用的Prompt框架你一定要看看!
前言
大模型正为我们带来前所未有的技术革新,而用好大模型也是有一定技巧的。
本文主要分享5种实用的Prompt
对话提示框架,结合自己的实际需求,让你能够灵活使用大模型!
1.RTF框架
RTF(Role-Task-Format)框架是一个非常简单通用的Prompt提示框架,我们和任意大模型对话场景下都可以使用该规范进行改进输出
- **R-Role(角色)**:指定大模型担当固定角色(程序员、数据分析师、讲解员、记者等等)
- T-Task(任务): 任务,告诉大模型需要为我们做的事情
- **F-Format(格式)**:大模型最终结果的返回格式(比如:表格、Markdown、英文等等)
主要优点:
- 简单、方便
- 指定Role角色,可以让大模型在当前的角色范围内回答知识,这在一些特定的领域中非常有效
- 指定Role角色也能让工程上检索知识能够确定边界范围,配合元数据所发挥的威力会更强
- 如果结合RAG知识内容检索,那么上下文回答的内容会让用户感觉更加是顺畅
示例1: 给出一份Python语言的学习清单
Role:指定大模型角色为Python布道师
Task:Python语言的学习从基础到进阶清单列表
Format: 以表格的形式返回
在实际工作的任务中,我通过优化Prompt工程,对于我们的产品改善,对于回答的内容改善也非常明显!
在我司给宁波天一阁开发的AI讲解产品中,我们提供和大模型对话的RAG产品,将天一阁的相关知识导入到系统,借助大模型进行讲解回答
对比以下两个Prompt的区别:
原Prompt:
1 |
|
改进后的Prompt:
1 |
|
改进后,大模型回答更加拟人化,如下图:
2.思考链模式
通过这种模式来逐步改善大模型的推理能力,非常适合一些复杂的任务处理。
例如:
- 分析型或者逻辑推理型的任务
- 决策
- 解决问题(比如程序员根据错误日志找Bug)
而要使用这种模式,只需要在末尾添加”让我们逐步思考”即可。
3. RISEN框架
- R-Role:大模型扮演的角色
- I-Instructions: 指示命令,和
Task-任务
差不多 - S-Steps: 步骤
- E-End Goal: 最终目标
- N-Narrowing(Constraints): 缩小范围(约束条件),和
RTF
框架中的Format
有异曲同工之妙,一个是格式的约束,而这里的约束可以是任意方面,比如回答的内容(特定领域)、字数限制等等方面
该框架主要适合:
- 撰写具有特定约束的任务(例如博客文章)
- 有明确指导方针的任务(例如商业计划)
示例:
4.RODES框架
- R-Role: 角色
- O - Objective: 目标
- D - Details: 详细的细节
- E - Examples: 示例
- S - Sense Check: 感官检查
示例:
5.密度链模式
密度链模式Prompt
是Salesforce、麻省理工学院和哥伦比亚大学的研究人员推出的一种新提示,它非常的高效,使用递归来创建越来越好的输出的提示,与普通提示生成的 GPT-4 摘要相比,它生成的摘要更加密集且更适合人们理解。
这种模式在RAG工程中非常实用,想想看你的客户上传的文档知识库(PDF/WORD)都是长篇的步骤性的文档,而在RAG召回送给大模型的Context上下文又受限于大模型的Token限制,为了更好的回答用户提问的问题,对于上传的知识库做密度链模式的摘要总结,然后索引整个文章内容召回是非常有必要的,最终能够非常精准的回答用户的问题。
适合:
- 总结
- 改进您最喜欢的提示
- 通过递归生成可用的长格式内容
密度链模式的Prompt
如下:
1 |
|
关于密度链模式的Prompt论文可以参考:https://arxiv.org/pdf/2309.04269.pdf
或者微信公众号回复”cod”获取文件
总结
Prompt
对话提示框架在大模型领域中是非常重要的一环,不管你是在直接使用大模型,还是在做RAG领域的产品开发,Prompt
的重要程度都是无可替代的。
希望大家能根据本文列出的这5种Prompt
框架进行举一反三,多多实践~
对于Prompt
工程技术细节,可以阅读员外的这两篇文章: