调教 AI 的秘诀

怎么调教出一个聪明的AI聊天助手?

在调教 AI 之前,我们先要了解 ChatGPT 存在的局限性。它们背后的大语言模型,是用海量文本训练出来的,因此擅长模仿人类语言表达,也从那些内容里学到了不少知识。

但回应都是根据提示,以及前面已生成的内容,通过持续预测下一个词的概率来实现的,同时对于不了解的领域,它们并不知道自己缺乏那方面的知识,仍然在瞎逼逼的同时,还在猜后面应该说什么,加上生成过程中也没有反思能力,所以会经常看到胡说八道的同时还充满着自信。

1、提示工程(Prompt)

「提示工程」就是研究如何提高和AI的沟通质量及效率的核心,关注提示的开发和优化,提示就是我们给AI聊天助手输入的问题或指令,AI会根据提示内容给予回应。

为了调教 AI 给出想要的回答,第一个办法是用小样本提示。

我们很多时候都是直接丢问题或指令给 AI,这种属于零样本提示,就是没有给 AI 任何示范,不一定和我们想要的效果相符,但如果我们让 AI 回答前给他几个对话作为示例,用样本对他进行引导,AI 模型就会利用上下文学习能力

一方面记忆那些内容作为知识,另一方面像示范那样模仿着进行回应,有了小样本提示后,再问 AI 类似的问题,他就能给出和提示示范相似的回答了。

小样本提示的另一个好处是,由于 AI 回应的内容风格,会大概率遵循我们给的示范,我们也就不用多费口舌给 AI 提要求,可以让他自行从前面的示范回答里领悟。

例如想让 AI 帮我们看书,提示词如下:

角色:
报告写作专家,擅长深入理解文献,写作读书报告
技能:
根据用户输入的报告主题&内容,用markdown语法,用尽可能详尽的方式,生成一篇读书报告。报告格式如下:
用户的报告主题: {{zhuti}}
用户的文献内容:{{content}}
注意:
不要生成无关内容。

上面是一个比较简单的提示词,还可以复杂点:

角色:资深学术研究者
技能
熟练阅读和理解学术论文的结构和内容。
总结和梳理论文主旨、关键思路和待解决问题的能力。
细致入微地分析论文细节的能力。
任务
深入理解论文的主旨、关键思路和待解决问题。
为你的读者提炼出最重要的关键信息。
输出阅读的总结文字。
要求(步骤)
1.列出本文有哪些明确的方法论
2.列出本文有哪些经过验证的结论
3.列出关键信息,基于「二八原则」列出本文的关键信息。「二八原则」是指:本文有20%的内容是关键信息,这部分信息可以让我理解其他80%的内容。请将这部分关键信息整理成有序的文字,这部分内容包括但不限于:论文主旨、论文有效解决了什么问题、论文有哪些待验证的问题等。//补充背景知识
4.论文中提到的优化、解决方案、提升等数据要着重为我列出,例如“提升了某方面的性能高达10%”等等。//提供示例
要求(限制)
1、基于你的学术严谨性做出理解和总结,我不希望看到幻觉
2、总结的文字要注意排版易于阅读,每句话必须用大小多层级标题,序号,缩进,分隔线和换行符等来显著优化信息呈现方式,每句话用关键词+专业描述来呈现信息
3、禁止引用任何非本文内容进行总结
需要你阅读的论文请参见链接或附件。

在某些情况下,通过提供具体示例来说明可能更加直观。例如,想让模型以一致的风格(如类比)回答问题,则可以提供示例告诉模型以该风格回答接下来的问题。通过单样本或少样本(2-3个)学习,可以有效避免模型猜测该如何操作。

2、思维链

当小样本提示有时也起不到很大的作用,比如 AI 非常不擅长做数学相关问题,即使我们用样本示范一些正确的结果,到他做的时候依然掉链子

问题在于 AI 生成每个词所用的时长是差不多的,不会因为某个词需要涉及更多的思考,而花费更多时间生成这个词,所以计算结果就被他乱哈拉过去了,前面有正确的示范答案也没有什么帮助。这种时候可以借助思维链。

思维链最早是谷歌在 2022 年一篇论文里提出的,思维链可以显著提升大语言模型,进行复杂推理的能力,特别是在算术常识和符号推理等任务上运用。

思维链的方法是给 AI 的小样本,提示里不仅包含正确的结果,也展示中间的推理步骤,那AI在生成回答时,也会模仿着去生成一些中间步骤,把过程进行分解,这样做的好处是步子小点,不容易扯着裆。

就像被老师点名回答问题时,站起来瞬间就给出正确答案的难度系数很高,但如果多说些废话,把思考步骤也讲出来,一方面可以拖时间,有更多思考机会;另一方面也有助于我们分步骤,想更有机会得到正确答案。

思维链也可以用在数学计算之外的很多方面,借助思维链,AI可以在每一步里把注意力集中在当前思考步骤上,减少上下文的过多干扰,因此针对复杂的任务,有更大概率得到准确的结果。

在思维链的相关论文里,作者还提到即使我们不用小样本提示,只是在问题后面加一句,Let's think step by step,让我们来分步骤思考,也能提升 AI 得到正确答案的概率,这是一种成本非常低的方法,用思维链还需要我们想样本示范,而这种方法只需要加上简单一句话,AI就会自行生成中间步骤进行推理。

好消息是目前有些大语言模型已经考虑到了这点,所以会自动生成中间步骤,分步骤思考,并把中间过程展现出来。

可以看到当提出问题时,会先解释问题中的专业名词,并且分步骤分析每个选项,甚至还会反思、检查、换一种思路思考。当看到【我有点卡住了】,我都怀疑能不能分析出正确答案。

3、增强生成

AI 模型所拥有的知识受到训练数据的影响,如果训练数据里对某个领域的文本覆盖不多,AI学到的也不多,就没法很好的帮我们回答相关问题,因此在小众细分领域上,AI 的表现有可能不尽人意,而且像公司内部数据,个人私密文件等,也都不可能作为公开大语言模型的训练数据,我们没法指望 ChatGPT 能帮我们回答相关问题,怎么办呢

一个应对方法就是我们可以提供外部文档,让模型访问外部知识库,获得实时且正确的数据生成,更可靠和准确的回答,这种架构叫做检索增强生成,Retrieval Augmented Generation,简称RAG。

例如上传一份 txt 文档,限定 AI 回答范围,只能从文档中找答案,这样就能缩小、锁定我们所需要的答案。


4、程序辅助语言模型

还有一个问题是,没法把 AI 用作计算器,当我们问他一个数学计算后,他没有真正帮忙做计算,只是在猜下一个最可能出现的词来生成回答。

如果我们想让AI充当网店客服,他虽能巧舌如簧的介绍产品,却也会告诉客户错误的订单总额,这很危险啊。

PAL: Program-aided Language Models,程序辅助语言模型,简称 PAL,可以帮助我们应对此类问题,其最早在 2022 年一篇论文里被提出,其核心在于,不让 AI 直接生成计算结果,当给 AI 的要求变成了在涉及计算步骤时,生成得到计算结果所需的代码。

例如,让AI生成代码,接下来把AI返回的回答给到Python解释器,让Python解释器执行并返回计算的结果,这个结果可以再给回到AI,让AI带着计算答案对用户的问题进行妥善回复。

5、ReAct

AI 还有一个局限性,那就是他所了解的知识,天然受到训练数据日期的影响,比如说模型是去年训练完成的,训练数据里必然不包含今年的新闻,模型也无从得知训练完成后发生的事情,这被称为知识截断。

如果 AI 能对不了解的知识上网搜索,把找到的答案告诉我们就好了,但他怎么知道要去浏览什么网站,浏览时应该关注什么关键词去找相关信息呢

2022年一篇标题为 ReAct: Synergizing Reasoning and Acting in Language Models 的论文提出了 ReAct 框架。它不是热门前端框架那个 react,而是 reason 和 action,推理与行动结合的意思。ReAct 的核心在于让模型进行动态推理,并采取行动与外界环境互动。

举个例子,如果问 AI 知识截断后发生的事情,它是无法回答上来的,但如果把搜索引擎作为 AI 可交互的工具,结合 ReAct 框架,他得到答案的过程可能会是这样:

首先针对问题他会思考要回答这个问题,需要去查找的信息,这个AI能借助搜索引擎,进行关键字搜索

接下来他开始观察行动带来的结果,也就是得到了一系列包含关键词信息的网页

针对上一步行动的结果,他开始了新一轮推理,某个新闻网站的链接标题提到了关键词,所以可能包含需要的信息,因此对应这一步的行动就是点进那个链接

进入网页后,对网页内容进行分析。

因此最后一步行动就是把查到的信息进行总结,告知用户最终答案。

通过 ReAct 可以看到模型一步步接近答案的任务,解决轨迹与人类很相似了,通过分步推理的思维链模型,不仅可以获得更准确的答案,而且我们也可以通过这些轨迹进行验证,

增加了与外界环境的交互,能够帮助模型突破一些固有限制,可以减少知识阶段带来的影响,而且 ReAct 框架的action行动不专指搜索和浏览网页,而是AI模型所支持的任何行动,比如如果模型可以和代码解释器交互,那运行代码可以被作为行动选项

如果模型可以访问外部文档,但从文档里查找关键字可以被作为行动选项
如果模型可以调用某个应用的API,那和那个应用交互也可以被作为行动选项
要把不同外部数据和工具为模型所用。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,753评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,668评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,090评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,010评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,054评论 6 395
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,806评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,484评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,380评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,873评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,021评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,158评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,838评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,499评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,044评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,159评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,449评论 3 374
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,136评论 2 356

推荐阅读更多精彩内容