文章目录
- 一、提示工程的概念与原理
- 二、提示工程的实践方法
- 三、提示工程的挑战与展望
- 四、实战案例分析
- 总结
- 《ChatGPT进阶:提示工程入门》
- 内容简介
- 作者简介
- 陈颢鹏:
- 李子菡:
- 目录
- 获取方式
在人工智能领域,对话系统已经成为了一个热门的研究方向。其中,OpenAI的ChatGPT模型凭借其强大的生成能力和广泛的应用场景,成为了业界的翘楚。然而,要让ChatGPT发挥出最大的潜力,仅仅依赖于模型本身是不够的,还需要进行一系列的优化和调整。这其中,提示工程(Prompt Engineering)就是一个关键的环节。本文将从提示工程的概念、原理、实践方法等方面,为大家揭开提示工程的神秘面纱,并提供一些实用的实战指南。
一、提示工程的概念与原理
提示工程,顾名思义,就是通过设计合适的提示(Prompt),来引导模型生成我们期望的输出。在对话系统中,提示通常是一个问题或者一个话题,而模型则是根据这个提示来生成相应的回答。因此,提示的设计对于模型的输出质量具有至关重要的影响。
提示工程的原理可以从以下几个方面来理解:
-
语言模型的生成过程:语言模型通常是一个概率分布,它描述了给定一个输入序列,模型生成下一个词的概率。在对话系统中,我们可以将提示看作是输入序列的一部分,而模型生成的回答则是输出序列。因此,提示的设计可以影响模型生成回答的概率分布。
-
上下文信息的处理:在对话系统中,上下文信息是非常重要的。一个好的提示应该能够引导模型充分利用上下文信息,从而生成更加合理和连贯的回答。提示工程的一个重要任务就是如何设计一个能够有效传递上下文信息的提示。
-
多样性与可控性:一个好的提示应该能够引导模型生成多样化的回答,而不是陷入重复和单调的模式。同时,我们还希望能够控制模型生成的回答的范围和方向,避免出现不相关或者不合适的内容。提示工程需要在这两个方面找到一个平衡点。
二、提示工程的实践方法
了解了提示工程的概念和原理之后,下面我们来探讨一些实用的提示工程方法。这些方法可以分为两类:基于规则的方法和基于数据的方法。
-
基于规则的方法:这类方法主要是通过人工设计一些规则和模板,来生成提示。例如,我们可以设计一些常见的问题模板,如“请解释什么是XXX”、“XXX有哪些优缺点”等。这些模板可以根据不同的应用场景进行调整和扩展。此外,我们还可以通过设置一些限制条件,如禁止使用某些词汇或者要求回答的长度在一定范围内,来控制模型生成的回答的质量和范围。
-
基于数据的方法:这类方法主要是通过分析大量的对话数据,来挖掘一些有效的提示模式。这些模式可以是一些常见的问题结构、回答风格等。通过对这些模式的学习,我们可以生成更加自然和合理的提示。此外,我们还可以通过对抗训练等技术,来提高模型对提示的敏感性和适应性。
三、提示工程的挑战与展望
尽管提示工程在对话系统中具有重要的作用,但是目前仍然面临一些挑战:
-
如何设计一个既能够引导模型生成多样化回答,又能够控制回答范围和方向的提示?这是一个非常复杂的问题,需要结合多种方法和技巧来解决。
-
如何利用有限的标注数据来提高提示工程的效果?目前,大部分的对话数据都是未标注的,这给提示工程带来了很大的困难。未来的研究可以尝试从无监督学习、迁移学习等方面入手,来解决这个问题。
-
如何评估提示工程的效果?目前,还没有一个统一的评估标准和方法。未来的研究可以尝试建立一个更加科学和客观的评估体系。
总之,提示工程是对话系统中一个非常重要的环节,它对于提高模型的输出质量和效果具有关键的作用。通过深入理解和掌握提示工程的原理和方法,我们可以更好地利用ChatGPT等先进的对话模型,为实际应用带来更大的价值。
四、实战案例分析
为了帮助大家更好地理解提示工程的原理和方法,下面我们来看一个实战案例。假设我们要开发一个智能问答系统,用户可以通过提问来获取关于某个主题的信息。在这个场景中,我们需要设计一些合适的提示,来引导模型生成高质量的回答。
首先,我们可以通过分析大量的对话数据,来挖掘一些常见的问题结构和回答风格。例如,我们发现用户通常会提出一些具体的问题,如“XXX是什么”、“XXX的特点是什么”等。针对这些问题,我们可以设计一些模板化的提示,如“请解释XXX是什么”、“XXX有哪些特点”。这些模板可以根据不同的主题进行调整和扩展。
其次,我们可以通过设置一些限制条件,来控制模型生成的回答的质量和范围。例如,我们可以要求回答的长度在一定范围内,以减少过长或者过短的回答;我们还可以禁止使用某些词汇或者表达方式,以避免出现不相关或者不合适的内容。
最后,我们可以通过对抗训练等技术,来提高模型对提示的敏感性和适应性。例如,我们可以设计一些对抗性的提示样本,让模型在生成回答时更加关注上下文信息和多样性。
通过以上方法,我们可以设计出一个既能够引导模型生成高质量回答,又能够控制回答范围和方向的提示系统。这对于提高智能问答系统的性能和用户体验具有重要的意义。
总结
提示工程是对话系统中一个关键的环节,它对于提高模型的输出质量和效果具有关键的作用。通过深入理解和掌握提示工程的原理和方法,我们可以更好地利用ChatGPT等先进的对话模型,为实际应用带来更大的价值。在未来的研究和应用中,我们还需要不断探索和创新,以应对提示工程面临的挑战和问题。
《ChatGPT进阶:提示工程入门》
爆火全网的原创提示词设计框架BROKE,带你5步掌握向人工智能提问的艺术,从小白变身ChatGPT应用专家,将AI转化为生产工具,重塑你的工作流!
系统:全面剖析ChatGPT应用技巧,带你从小白变身ChatGPT应用专家。
实用:内含开箱即用的“提示公式”,聚焦ChatGPT实际应用。
有思路,有办法,能落地:带你将ChatGPT真正转化为生产力,开启AI驱动的工作流程。
简单易读:深入浅出,循序渐进,内含60 个示例,适合初学者和进阶读者。
深度:理论结合实际,涵盖提示工程学科深度讨论,授人以鱼更授人以渔。
内容简介
本书是一本面向所有人的提示工程工具书,旨在帮助你掌握并有效利用以ChatGPT为代表的AI工具。学习完本书后,你将能够自如地将ChatGPT运用在生活和专业领域中,成为ChatGPT进阶玩家。
本书共分为9章,内容涵盖三个层次:介绍与解读、入门学习、进阶提升。第1~2章深入介绍与剖析了ChatGPT与提示工程,并从多个学科的角度探讨了提示工程学科。第3~5章演示了ChatGPT的实际运用,教你如何使用ChatGPT解决自然语言处理问题,并为你提供了一套可操作、可重复的提示设计框架,让你能够熟练驾驭ChatGPT。第6~9章讲解了来自学术界的提示工程方法,以及如何围绕ChatGPT进行创新;此外,为希望ChatGPT进行应用开发的读者提供了实用的参考资料,并介绍了除ChatGPT之外的其他选择。
本书聚焦ChatGPT的实际应用,可操作,可重复,轻松易读却不失深度。无论你是对ChatGPT及类似工具充满好奇,还是期待将其转化为生产力,本书都值得一读。此外,本书还可作为相关培训机构的教材。
作者简介
陈颢鹏:
提示工程师,AI产品经理,毕业于北京邮电大学计算机学院。曾在滴滴自动驾驶、图森未来、字节跳动、美团等公司积累了行业经验,现就职于一家AI领域的独角兽公司。作为ChatGPT发布后的初期用户,他运用该技术重塑了工作流程,显著提高了工作效率,发明的ChatGPT提示设计框架在小红书(ID:陈财猫)上获得了40000 赞与收藏,被多次转载,并在多家公司内部被广泛分享。他负责本书主体内容的写作。
李子菡:
硕士就读于香港科技大学计算机与工程系,本科毕业于北京邮电大学。研究的领域涉及大语言模型和Prompt,参与相关工作已在自然语言处理领域学术会议ACL上发表,对人工智能领域及各种语言模型有着深入的了解。她是本书的科研顾问,参与了第一章的写作,并对本书进行了审阅。
目录
第1章 认识ChatGPT
1.1 ChatGPT是什么
1.1.1 什么是语言模型
1.1.2 什么是GPT
1.2 ChatGPT的能力
1.2.1 GPT-4有多强
1.2.2 大语言模型的“涌现”能力
1.2.3 “GPT们”会抢走我们的工作吗
1.3 ChatGPT的局限
1.3.1 大语言模型的“幻觉”现象
1.3.2 有限的上下文:ChatGPT的“失忆症”
1.3.3 隐私漏洞与安全隐患
1.3.4 大语言模型的偏见
第2章 人机共舞的艺术:提示工程简介
2.1 什么是提示与提示工程
2.1.1 什么是提示
2.1.2 什么是提示工程
2.2 提示工程的巨大威力:从Let’s think step by step说起
2.3 我们与ChatGPT的沟通模型
2.4 从人工智能学科角度看提示工程
2.4.1 技术奇点与智能增强:人类需要学会与人工智能合作
2.4.2 对齐:如何避免人工智能毁灭世界
2.4.3 弥达斯国王问题:我们想要的就是我们的真实需求吗
2.5 拆解、标准化、流程化:如何用AI改造工作
第3章 使用ChatGPT的基础技巧
3.1 使用文本分隔符分割指令和上下文
3.2 使用标记语言标记输入格式
3.3 使用有序列表与无序列表列出不同的项
3.4 量化你的要求
3.5 不要说“不要做什么”,要说“要做什么”
3.6 利用ChatGPT“接龙”的特性引导下一步动作
3.7 多轮对话:ChatGPT“越用越聪明”的秘诀
3.8 使用ChatGPT插件
第4章 使用ChatGPT完成自然语言处理任务
4.1 什么是自然语言处理任务
4.2 文本摘要:提炼文本精华
4.2.1 文本摘要的提示公式
4.2.2 用文本摘要+ChatGPT进行论文阅读
4.2.3 用文本摘要+ChatGPT做会议记录
4.3 文本纠错:检测和修正文本错误
4.4 情感分析:挖掘文本中的情感倾向
4.4.1 情感分析任务的提示公式
4.4.2 场景示例:批量分析外卖评论,寻找经营改进点
4.5 实体识别:抽取特定实体
4.5.1 实体识别任务的提示公式
4.5.2 示例:从简历中提取关键信息
4.5.3 ChatGPT+实体识别+5W1H快速阅读复杂文本
4.6 机器翻译:跨语言的文本转换
4.6.1 机器翻译任务的提示公式
4.6.2 用ChatGPT翻译诗歌
4.7 关键词抽取:从文本中识别主题
4.7.1 关键词抽取任务的提示公式
4.7.2 用ChatGPT抽取论文摘要关键词
4.8 问题问答:用ChatGPT学知识
4.8.1 用类比学习复杂概念
4.8.2 小朋友也能听得懂的故事解释法
4.8.3 如何减少ChatGPT的“幻觉”
4.9 生成式任务:用ChatGPT做内容创作
4.9.1 生成式任务的提示设计维度
4.9.2 用ChatGPT写深度评论文章
第5章 使用BROKE框架设计ChatGPT提示
5.1 BROKE框架
5.1.1 BROKE框架的基本内容
5.1.2 用BROKE框架让ChatGPT介绍BROKE框架
5.2 背景(Background):信息传达与角色设计
5.2.1 让ChatGPT向使用者提问,分析问题背景
5.2.2 给ChatGPT尽可能多的原始信息
5.2.3 用符合直觉与经验的方式设计问题背景
5.3 角色(Role):AI助手的角色扮演游戏
5.4 目标与关键结果(Objectives&Key Results):给ChatGPT“打绩效”
5.4.1 如何设计目标
5.4.2 如何设计关键结果
5.5 改进(Evolve):进行试验与调整
5.6 示例:写自动驾驶出租车试乘报告框架
5.7 从认知心理学角度看BROKE框架的设计
第6章 使用ChatGPT的进阶技巧
6.1 使用分治法让ChatGPT完成大而复杂的任务
6.1.1 如何将分治法应用到ChatGPT提示设计中
6.1.2 用ChatGPT+分治法写长篇科幻小说
6.1.3 示例:使用ChatGPT完成复杂程序代码
6.2 上下文学习:为ChatGPT提供范例
6.2.1 上下文学习的基本步骤
6.2.2 示例:规定回复格式,让ChatGPT当英语外教陪聊
6.3 用链式思维提高ChatGPT的逻辑能力
6.4 自一致性:利用“投票”获得可靠答案
6.5 知识生成提示
第7章 如何用ChatGPT进行创新
7.1 组合式创新
7.2 ChatGPT+领域知识
7.2.1 ChatGPT+心理学:设计更容易被填写的问卷
7.2.2 ChatGPT+逻辑学:用谓词逻辑提取文字中的命题
7.2.3 ChatGPT+管理学+心理学+社会学:用多领域理论优化管理策略
7.3 ChatGPT+工具
7.3.1 ChatGPT+Mermaid:用ChatGPT画时序图
7.4 ChatGPT+其他AI工具
7.5 用ChatGPT做数据分析
7.5.1 用ChatGPT做数据分析可以利用的工具
7.5.2 用ChatGPT做数据分析的注意事项
7.5.3 示例:使用ChatGPT选择算法并设计数据集
第8章 基于ChatGPT进行开发
8.1 ChatGPT API:利用ChatGPT制作自己的应用
8.1.1 什么是API
8.1.2 API的参数:如何造就疯癫赛博诗人
8.2 LangChain:大语言模型开发框架
第9章 ChatGPT的替代品们
9.1 Claude:ChatGPT的孪生姐妹
9.2 PaLM 2:来自谷歌的实力对手
9.3 HuggingChat:“抱抱脸”聊天机器人
9.4 ChatGLM:来自清华大学的语言模型
9.5 Alpaca&Vicuna:语言模型之羊驼家族
9.6 其他大语言模型
9.6.1 文心一言:百度的聊天机器人
9.6.2 讯飞星火:科大讯飞的聊天机器人
9.6.3 通义千问:阿里巴巴的聊天机器人
参考文献
获取方式
京东:https://item.jd.com/14098844.html
当当:http://product.dangdang.com/29612772.html