在这个已经被大模型包围的时代,不了解一点大模型的基础知识和相关概念,可能出去聊天都接不上话。刚好近期我也一直在用ChatGPT和GitHub Copilot,也刚好对这些基础知识很感兴趣,于是看了一些科普类视频和报告,做了如下的整理总结,分享与你!
一句话描述GPT
GPT全称Generative Pre-Training Transformer,即三个关键词:生成式 预训练 变换模型。
GPT模型通过在大量数据上学习到的语言模式,预测下一个字(token),生成自然语言文本。
大模型的6大关键技术
- 大模型
类似于人类的大脑,通过思考和规划来完成任务;
- Prompt(提示词工程)
类似于人类的沟通,上级通过布置任务来让下级完成一项任务;
- RAG(检索增强生成)
类似于人类想要暂时完成一件任务,但是这件任务暂时不会做。例如马上要大学期末考试了,我们需要临时抱佛脚突击一周,以求得考试及格分数,但是考完试以后,这些知识就忘得一干二净了。又或者说它也类似于大学期末的开卷考试,反正知识点都在书里,你平时都没学过,得先找一找,找到了就把相关答案写在试卷上,考完了还是忘得一干二净,但是你的目标达到了:考试及格60分万岁!
- Fine-tunig(微调)
类似于人类想要彻底学会一个技能,例如想要学会大模型的技术,我们需要通过系统的培训以及通过实战去真正的掌握大模型技术。
- Function Calling(函数调用)
类似于人类使用工具完成一件任务,例如想要查询成都的天气情况,我们要么直接打开天气预报的App,要么直接在百度上搜索,总之是通过工具来完成这件事。
- Agent
类似于人类通过沟通、分工和协作来完成一件复杂的任务,通常会结合使用到上面提到的五个技术来完成任务,而且大模型时代的Agent也不是单兵作战而是多个Agent之间合作来完成任务。例如想要开发一个客服项目,需要产品经理Agent、架构师Agent、开发者Agent、测试者Agent、运维Agent 和 项目管理Agent 像人类一样去沟通协作,最后才能把这个项目自动地完成。
知识问答的3种主要方式
(1)大模型直答
最常见的方式:直接向LLM提问,LLM给出回答。
(2)大模型微调(Fine-Tuning)
首先,将企业私有知识加给通用大模型进行微调形成私有大模型;然后,再将问题给到私有大模型进行回答。
(3)大模型RAG(检索增强生成)
首先,对企业的知识库进行检索得到相关的知识片段;然后,将知识片段和原问题组合成新的提示词发给通用大模型得到回答;
3种方式的效果对比:
方式 | 外在幻觉 | 领域知识 | 实时信息 | 可溯源 | 成本 |
直答 | 多 | 无 | 无 | 无 | 低 |
微调 | 中 | 有 | 无 | 无 | 高 |
RAG | 少 | 有 | 有 | 有 | 低 |
总结:在企业落地知识问答库时,如果为了追求成本和回答准确度,推荐使用RAG方案。
AI Agent到底是什么?
首先,在产品层面:AI Agent是AGI时代新的应用形态;
这其实是应用形态的演进:在AGI时代之前是移动互联网时代,它的产品形态是APP。在进入AGI时代后,产品形态变为了AI Agent。
未来现有的部分高级程序员写的应用就不再会是App,而是AI Agent了!
其次,在技术层面:面向过程架构 → 面向目标架构 的转变(也称为:软件架构的范式迁移);
比如,在App时代写一个用户系统,需要把整个用户从注册到登录再到注销,一步一步地把整个流程结合if-else把它开发出来。这个生成的过程我们叫做面向过程的架构,需要预定义指令、逻辑和规则。
但是,在AI Agent时代,很多情况下不需要把这些指令一个一个地指出来,只需要一句话就行了,比如说提供一个prompt“请帮我完成一个用户系统,它包含用户注册、登录、查询等功能”,然后大模型就会帮你去完成。这个生成的过程我们叫做面向目标的架构,具有目标导向和动态规划的特点,由AI Agent自主生成。
大模型和Agent有啥区别?
Agent会在大模型的推理结果基础之上,使用一些工具(如调用API)完成某个特定的任务,这个技术也被称为Function Calling(函数调用)。
当下大模型的参数量提升AI Agent的理解力和泛化能力,使其能够更好地处理多种任务和上下文信息,这增强了AI代理的自然语言处理能力,从而提供更加个性化、连贯的交互体验,是当下Agent的构建关键!
总结:大模型时代下的 AI Agent = LLM × (规划+记忆+工具+行动)
AI Agent的应用场景通常与特定任务或环境紧密相关。例如,在智能家居系统中,AI Agent可以根据用户的生活习惯和偏好自动调节家庭设备的运行状态。在游戏中,AI Agent能够提供具有挑战性的对手或复杂的游戏环境动态。
Agent架构的核心流程
Agent架构有三个重要的模块:规划 模块(Planning)、执行模块(Action) 和 观察 模块(Observation),如下图所示:
举个例子,假设我们有一个prompt“请用python画一个圆心”。
首先,在规划模块,Agent会将这个需求拆解为三个子项:写Python代码、调用IPython解释器、调用Docker运行环境;
其次,在执行模块,Agent会分别执行拆解的事项,也就是去调用各种工具;
最后,在观察模块,Agent会对每一步的执行结果做观测,如果check完毕没问题,就给到用户最终的答案。如果觉得有问题,比如执行的过程中出现了Timeout之类的错误,就会做一些Retry的操作。如果Retry次数超过了最大重试次数,这时候就可能会把这个进程Kill掉,然后重新进入规划模块重新规划。
在这三个模块或者说能力中,最重要的当属规划模块!
大模型和程序员的关系
(1)目前ChatGPT对程序员到底有哪些实质性的帮助?
第一点:Code Review
ChatGPT能够理解代码,并针对代码给出针对性的建议和优化方案;
第二点:写测试用例、单元测试、集成测试等,这些ChatGPT都很擅长!
第三点:对线上问题的定位和分析
线上问题的各种疑难杂症,ChatGPT都能胜任!
第四点:SQL的翻译
实现两种数据库的SQL语言转换,比如将Oracle的SQL脚本转换成MySQL的SQL脚本。
(2)有了AI编程,还需要程序员吗?
第一,在冯诺依曼架构体系下,程序需要的是确定性计算;
第二,由于大模型本身的概率性,目前大模型生成的代码还具备一定的随意性和不确定性;
第三,目前大模型更擅长的是一些抽象层次比较低的工作,比如一段代码或一个算法的实现,写一个单元测试等等。而一些抽象层次比较高的工作,比如需求分析、架构设计、领域设计、架构选型等,这些工作反而是大模型不擅长的,而这些工作是比较具备有竞争力的,这恰恰是一些高级程序员以及系统架构师的价值所在。
(3)应用实践AIGC有几层境界?
第一层境界:简单对话;
通过ctrl-c/v出结果,人人都会。
第二层境界:系统掌握Prompt Engineering;
通过系统掌握好提示词工程,真正赋能工作提效。
第三层境界:将AIGC融入业务流程,指挥AIGC完成复杂的任务;
通过掌握AIGC的技能,并完成业务领域知识的深入结合。
第四层境界:拥有自己的大模型;
熟悉大模型的架构原理,通过开源大模型微调,最好能够拥有一定的行业数据壁垒。
第五层境界:参与设计训练大模型;
比如从事ChatGPT等研发工作。
目前,Edison还处于第二层即提示词工程,我们整理了很多针对SDLC(软件开发生命周期)过程中的经典场景的提示词模板来做提效。
那么,你处于哪一层呢?
(4)如何掌握AI大模型开发技能?
第一步:掌握开发AGI时代新应用程序的技能;
比如:大模型应用内核、LangChain开发框架、向量数据库等;
第二步:搞定开发企业级AI Agent的应用技能;
比如:AI Agent、大模型缓存、算力等;
第三步:驾驭开发企业级专有大模型的技能;
比如:RAG、微调等;
第四步:深入应用大模型技术成为开发大师;
比如:大模型预训练、LLMOps等;
小结
大模型应用开发学习实践之路漫漫,我们IT开发者也会逐渐从Application的开发转向Agent的开发的范式的转变,一起加油吧!
读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用
对于0基础小白入门:
如果你是零基础小白,想快速入门大模型是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费
】🆓
👉AI大模型学习路线汇总👈
大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉大模型实战案例👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉大模型视频和PDF合集👈
观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费
】🆓