大模型能力扩展之——提示词(Prompt),知识库,思维链(CoT)和Agent(代理)

前言

大模型的推理能力配合外部工具才能真正发挥大模型的作用

在学习和使用大模型的过程中,我们会发现大模型只能用来进行一下简单的问答;一旦涉及到复杂的问题,大模型就无能为力了。

其原因就在于我们并不会使用大模型,或者说不知道怎么发挥大模型的强大能力。‍‍‍

虽然很多人使用别人开发好的AI工具去生成一些文本,图像等内容进行创作;或者通过外挂知识库的方式来增强大模型的能力范围,但离真正发挥大模型的能力还差好远。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

怎么发挥大模型的能力?‍‍‍‍‍

对大模型的使用大致分为以下几种类型,入门级别可以简单使用大模型提供的聊天窗口进行问答来解决一些问题;再厉害一点的就是学会使用一些第三方基于大模型开发的一些AI工具。

而在更加高级的使用场景中,就不是普通人能够完成的了,这就需要有一定的技术和开发能力才能实现。‍‍‍‍‍

比如,自己搭建一个知识库,每次使用大模型的时候都会从知识库中获取知识输入到大模型,以获得更好的结果;而再高级一点的就是使用提示词+知识库+思维链+外部工具(API,功能代码等)来实现人类才能做到的事情。‍‍‍‍‍‍‍‍

举个例子,通过以上方式,告诉大模型给我规划一个三天两晚的短期旅程,并且要给出完整的可行性方案,还要让大模型帮你提取预定好酒店和门票等。‍‍‍‍‍‍‍‍‍‍‍

这个依靠大模型本身的能力是无法完成的,因此就需要使用外部工具,而这也叫做Agent(代理)技术。‍

_大模型知识来源_‍‍‍‍‍

我们都知道大模型有很强大的知识储备,在预训练阶段用于训练的数据越多,数据质量越好,大模型的性能就越好。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

一般来说,大模型的知识来源有三个方向,第一种就是大模型本身的知识储备,这些知识来源于预训练数据;这也是为什么大模型在不依靠任何外力的情况下就可以回答一些问题。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

但由于预训练的原因,大模型每次更新自身知识就需要重新训练或者微调;由于成本和技术原因就导致大模型自身知识更新不及时;这时就会出现一个问题,在涉及到大模型自身知识范围之外的问题时,大模型就会“一本正经的跟你胡说八道”。‍‍‍‍‍

因此就有了后面两种情况,第一种就是知识库,简单来说就是给大模型配置一个资料库。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

这样,大模型在遇到问题的时候就可以依靠自身的知识储备加上外部资料库的知识来回答问题。这样就间接解决了大模型知识更新不及时的问题。‍‍‍‍‍‍‍

但仅有知识库还不够完善,因为有些东西是动态改变的,比如说每天的天气情况,金融市场的交易情况等;这是知识库解决不了的问题,因此就需要给大模型配备外部工具,比如天气查询的API或者股票查询接口等。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

这时,大模型就可以利用其Function call的能力来调用外部工具来实现目的。‍‍‍

**Function call是在大模型之上封装的一层可以调用外部工具的一个方法,有些模型实现了Function call的功能,而有些模型没有实现这个功能,这时就需要你自己来实现。**‍‍‍‍‍‍‍‍‍

以上就是大模型知识的三个来源,根本不同的情景,大模型可能会使用自身的知识来解决问题;在自身知识解决不了的情况下就会使用知识库和外部工具的方式来解决——前提是配置了知识库和外部工具集。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

_Agent(代理)_‍‍‍‍‍‍‍

人工智能代理(AI Agent),目前为止其并没有一个公认的定义;简单来说就是让大模型能够像真正的人类一样来完成更加复杂任务的一种方式和方法论。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

因为大模型虽然能力很强大,但从应用的角度来说它更像是一个“大脑”,它能够理解问题,思考问题,但没办法解决问题。‍‍

比如说我想出去玩,让大模型给我规划行程,这个是没问题的;但你让它帮你订票就有问题了,而这时Agent就出现了,它就是可以让大模型不但能帮你规划,还能帮你订票。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

提示词

使用过大模型的人都知道,提示词直接影响到大模型的表现;简单的提升词虽然也能让大模型完成任务,但往往完成的不是很好,甚至会有很大问题。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

而在专业的提升词工程中,大模型会有几个角色,一个是system(系统)角色,一个是assistant(助手)角色和user(用户)角色。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

system角色是来限定大模型定角色范围的,比如是老师,科学家,医生等,不同的角色会擅长不同的领域;而user角色就是我们使用者的角色,可以用来提出问题等;assistant角色就是大模型本身或者说是大模型回答user角色问题的“助手”。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

因此良好的提示词能够激发大模型的能力,比如其推理和规划的能力;提示词越详细大模型就能回答的越好。‍‍‍‍

比如说,在设计提示词时需要告诉大模型的角色,当前背景,需要完成的任务以及大模型回答的风格等。‍‍‍‍‍‍

您想要ChatGPT帮您写一篇关于气候变化的文章,最终的提示词可能是这样:‍

作为一个专业研究气候变化的科学家(CR:能力与角色),请基于当前的科学共识和最新的研究数据(I:洞察),撰写一篇详细且科学严谨的报告(S:陈述),内容需涵盖气候变化的原因、影响以及可能的解决方案。请采用客观且权威的写作风格(P:个性),并提供几种不同的结构和论点供选择(E:实验)

https://blog.csdn.net/qq_17827079/article/details/136475535

思维链

而仅有提示词功能还不足以完全发挥大模型的能力,因此又有了思维链(CoT)的出现,思维链的作用就是让大模型有一个完整的思考过程,并且可以给出一些案例,来让大模型处理更加复杂的任务。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

比如说,让大模型帮你设计一个详细的理财方案;虽然依靠大模型或者知识库的能力,大模型也能完成任务;但完成任务的效果可能就不是那么满意了。‍‍‍‍‍‍

因此,大模型就可以通过自身的推理能力以及外部工具,通过多次思考来完成这个任务。‍‍‍‍‍

比如说,你想要一个理财方案,第一步要评估当前的财务情况;第二步要明确理财目标;第三步要怎么具体实施等。‍‍‍‍‍‍

而这就需要借助大模型等推理和规划能力来制定一个详细的可行性方案。‍‍‍‍‍‍‍‍‍‍‍‍‍

思维链的作用就是让大模型像人类一样思考,一步一步的来完成任务。‍‍‍‍‍‍

外部工具(tools)

外部工具的作用就是让大模型可以实时获取当前的信息,比如股票的价格波动;以及能够借助外部工具自主完成任务,比如订票。‍‍‍‍‍‍‍‍‍‍‍‍‍

通过以上方式用户就可以创建一个具有某种功能的Agent,比如一个理财大师;而用户可以创建多个不同的Agent来互相协作,比如创建一个投资人的Agent,它能够根据当前的市场环境做出准确的投资决策;然后再创建一个软件开发的Agent,这样就可以让两个角色互相配合,软件开发的Agent复杂产品的设计和研发,投资Agent复杂做市场融资和市场开拓。‍‍‍‍‍‍‍‍

总结

大模型并不只是一个用来回答问题的机器人,通过提示词,思维链,知识库和工具集的合理配合,它能够发挥人们无法想象的威力。

最后的最后

感谢你们的阅读和喜欢,我收藏了很多技术干货,可以共享给喜欢我文章的朋友们,如果你肯花时间沉下心去学习,它们一定能帮到你。

因为这个行业不同于其他行业,知识体系实在是过于庞大,知识更新也非常快。作为一个普通人,无法全部学完,所以我们在提升技术的时候,首先需要明确一个目标,然后制定好完整的计划,同时找到好的学习方法,这样才能更快的提升自己。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

大模型知识脑图

为了成为更好的 AI大模型 开发者,这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

经典书籍阅读

阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。

在这里插入图片描述

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

面试资料

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下

在这里插入图片描述

640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1550452.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【韩顺平Java笔记】第3章:变量

只记录我觉得重点的,自用,如果有漏的请自己看视频 文章目录 33. 内容梳理34. 变量原理34.1 为什么需要变量35. 变量概念35.1 概念35.2 变量使用的基本步骤36. 变量入门36.1 变量使用入门案例 37. 变量细节37.1 变量使用注意事项 38. 加号使用38.1 程序中…

Node.js安装Express,Node.js支持Typescript以及Express支持Typescript的步骤

1. Node.js 安装Express 运行如下命令: $ mkdir express-demo $ cd express-demo$ npm install express $ npm install body-parser //(可选)中间件,用于处理 JSON, Raw, Text 和 URL 编码的数据 $ npm install cookie-parser //(可选)通过req.cookies…

如何使用ssm实现大学生校园招聘网的设计与实现

TOC ssm738大学生校园招聘网的设计与实现jsp 第1章 绪论 1.1 课题背景 二十一世纪互联网的出现,改变了几千年以来人们的生活,不仅仅是生活物资的丰富,还有精神层次的丰富。在互联网诞生之前,地域位置往往是人们思想上不可跨域…

网页WebRTC电话和软电话哪个好用?

关于WebRTC电话与软件电话哪个更好用,这实际上取决于多个因素,并没有一个绝对的答案。不过,我可以根据WebRTC技术的一些特点,以及与传统软件电话相比的优劣势,为你提供一个清晰的对比。 首先,让我们了解一下…

单细胞miloR分析(基于 KNN 图的细胞差异丰度分析方法)

通常情况下,对两组或多组样本进行了不同处理/干预之后,研究者首先会进行同种细胞亚群处理前后的细胞数量的比较,但在单细胞分辨率时代之后,即使是同一个亚群中的不同细胞也应当看成不同的样本。 那么问题就来了,既然应…

算法:按既定顺序创建目标数组

力扣1389 提示&#xff1a; 1 < nums.length, index.length < 100nums.length index.length0 < nums[i] < 1000 < index[i] < i 题解&#xff1a; class Solution {public int[] createTargetArray(int[] nums, int[] index) {int[] target new int[num…

SD2.0 Specification之CRC(Cyclic Redundancy Code)

文章目录 本文章主要讲解关于SD2.0中的CRC应用&#xff0c;其它基础概念和其它内容请参考以下文章。 SD2.0 Specification简述 CRC全称为Cyclic Redundancy Code&#xff0c;中文名称是循环冗余校验&#xff0c;该方法通过附加冗余数据来保证数据的完整性&#xff0c;即用于检…

RabbitMQ的高级特性-限流

消息分发: RabbitMQ队列拥有多个消费者时, 队列会把收到的消息分派给不同的消费者. 每条消息只会发送给订阅列表⾥的⼀个消费者. 这种⽅式⾮常适合扩展, 如果现在负载加重,那么只需要创建更多的消费者来消费处理消息即可. 默认情况下, RabbitMQ是以轮询的⽅法进⾏分发的, ⽽不管…

BetterAndBetter--Mac上强大的手势操控软件,让你的Mac更加得心应手

很多新人在开始使用Mac的时候&#xff0c;很难脱离鼠标操作&#xff0c;但是Mac的触摸板可以说是Mac的一大特色&#xff0c;能够完成非常多的操作&#xff0c;甚至在有些时候比鼠标更加的好用&#xff0c;那么新手该如何使用触摸板呢&#xff0c;BetterAndBetter可以帮助新手快…

Alternative Reconciliation Accounts 备选统驭科目

业务场景&#xff1a; #1 海外项目对于应付账款&#xff0c;超过1年期的需要转入到其他科目&#xff1b; #2. 通过备选统驭科目进行 从应付账款&#xff0c;到应付账款-长期的结转 备选统驭科目的使用与配置 备选统驭科目&#xff08;AlternativeReconciliation Accounts)就…

Dynamics 365 dependency EntityType

导解决方案时经常会碰到组件依赖导致导入报错&#xff0c;而错误提示中组件只有type, 比如下图中的type 20和60, 初看之下并不知道是什么意思&#xff0c;从parentDisplayName能看出来&#xff0c;这个parent是个实体&#xff0c;但实体中的什么呢&#xff0c;目测是看不出来的…

怎样用python+sqlalchemy获得mssql视图对应物理表关系(二)

话不多说 目标:为了实现低代码数据视图对接,有必要得到视图所对应物理表及字段名称,字段类型等 1)约束:视图中用到的物理表不能起别名,所以修改上一篇中存储过程建立语句 USE [agui_conn] GO /****** Object: StoredProcedure [dbo].[sp_GetOrdersByTimestamp] Script D…

生信机器学习入门4 - 构建决策树(Decision Tree)和随机森林(Random Forest)分类器

机器学习文章回顾 生信机器学习入门1 - 数据预处理与线性回归&#xff08;Linear regression&#xff09;预测 生信机器学习入门2 - 机器学习基本概念 生信机器学习入门3 - Scikit-Learn训练机器学习分类感知器 生信机器学习入门4 - scikit-learn训练逻辑回归&#xff08;L…

第五周做题总结_数据结构_队列与应用

id:43 A. DS队列之银行排队 题目描述 银行营业大厅共服务3种客户&#xff0c;类型为A\B\C&#xff0c;大厅分别设置了3个窗口分别服务三种客户&#xff0c;即每个窗口只服务一种客户。现有一批客户来银行办理业务&#xff0c;每个客户都有类型和办理业务时间。每个窗口按照客…

Servlet详细讲解(一篇就够)

目录 一、Servlet 1.1 Servlet介绍 1.2 HTTP 1.2.1 在http请求中有请求报文 1.2.2 在http响应中有响应报文 1.3 GET和POST 1.3.1 GET 1.3.2 POST 二、第一个Servlet程序[重点] 2.1 创建web项目 2.2 pom依赖 2.3 编写Servlet 2.4 配置Servlet 2.5 部署项目 2.6 启…

C++进阶知识2 多态

多态 1. 多态的概念2. 多态的定义及实现2.1 多态的构成条件2.1.2 虚函数2.1.3 虚函数的重写/覆盖2.1.5 虚函数重写的⼀些其他问题2.1.6 override和final关键字2.1.7 重载/重写/隐藏的对⽐ 3. 多态的原理3.2 多态的原理3.2.1 多态是如何实现的3.2.2 动态绑定与静态绑定3.2.3 虚函…

PL/SOL 连接提示 Initialization error 解决方法

问题 测试连接数据库报错&#xff0c;提示如下 解决方法 1、OCI 库输入的时候&#xff0c;路径两遍有" " 2、Instant Client 和 PL/SOL Developer 位数版本不一致 要么都是x64位&#xff0c;要么都是x86位&#xff08;32位&#xff09;&#xff0c;以下为下载链接…

算力运力解决方案:构建未来智算新生态

中国联通国际有限公司产品之算力运力解决方案&#xff1a;构建未来智算新生态 在当今这个数据爆炸、技术日新月异的时代&#xff0c;算力已成为推动社会进步和产业升级的关键力量。中国联通国际有限公司紧跟时代步伐&#xff0c;依托其强大的网络资源和深厚的技术积累&#xf…

63.5 注意力提示_by《李沐:动手学深度学习v2》pytorch版

系列文章目录 文章目录 系列文章目录注意力提示生物学中的注意力提示查询、键和值注意力的可视化使用 show_heatmaps 显示注意力权重代码示例 代码解析结果 小结练习 注意力提示 &#x1f3f7;sec_attention-cues 感谢读者对本书的关注&#xff0c;因为读者的注意力是一种稀缺…

此连接非私人连接

当你手机浏览器输入网站打开提示“此连接非私人连接&#xff0c;此网站可能在冒充来窃取你的个人或财务信息。你应回到之前的页面”这是因为该网站的SSL数字证书到期导致&#xff0c;需要此网站的管理员重新申请数字证书替换之前的文件才可以实现。 注意&#xff1a;如果你不是…