首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

LLM大模型基础知识学习总结

编程知识
2024年09月04日 08:01

大家好,我是Edison。

在这个已经被AI大模型包围的时代,不了解一点大模型的基础知识和相关概念,可能出去聊天都接不上话。刚好近期我也一直在用GPT和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种主要方式

大模型直答

最常见的方式:直接向LLM提问,LLM给出回答。

大模型微调(Fine-Tuning)

首先,将企业私有知识加给通用大模型进行微调形成私有大模型;然后,再将问题给到私有大模型进行回答。

大模型RAG(检索增强生成)

首先,对企业的知识库进行检索得到相关的知识片段;然后,将知识片段和原问题组合成新的提示词发给通用大模型得到回答;

3种方式的效果对比:

总结:在企业落地知识问答库时,如果为了追求成本和回答准确度,推荐使用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掉,然后重新进入规划模块重新规划。

在这三个模块或者说能力中,最重要的当属规划模块!

大模型和程序员的关系

目前ChatGPT对程序员到底有哪些实质性的帮助?

第一点:Code Review

ChatGPT能够理解代码,并针对代码给出针对性的建议和优化方案;

第二点:写测试用例、单元测试、集成测试等,这些ChatGPT都很擅长!

第三点:对线上问题的定位和分析

线上问题的各种疑难杂症,ChatGPT都能胜任!

第四点:SQL的翻译

实现两种数据库的SQL语言转换,比如将Oracle的SQL脚本转换成MySQL的SQL脚本。

有了AI编程,还需要程序员吗?

第一,在冯诺依曼架构体系下,程序需要的是确定性计算

第二,由于大模型本身的概率性,目前大模型生成的代码还具备一定的随意性和不确定性

第三,目前大模型更擅长的是一些抽象层次比较低的工作,比如一段代码或一个算法的实现,写一个单元测试等等。而一些抽象层次比较高的工作,比如需求分析、架构设计、领域设计、架构选型等,这些工作反而是大模型不擅长的,而这些工作是比较具备有竞争力的,这恰恰是一些高级程序员以及系统架构师的价值所在。

应用实践AIGC有几层境界?

第一层境界:简单对话;

通过ctrl-c/v出结果,人人都会。

第二层境界:系统掌握Prompt Engineering;

通过系统掌握好提示词工程,真正赋能工作提效。

目前,Edison还处于这一层。

第三层境界:将AIGC融入业务流程,指挥AIGC完成复杂的任务;

通过掌握AIGC的技能,并完成业务领域知识的深入结合。

第四层境界:拥有自己的大模型;

熟悉大模型的架构原理,通过开源大模型微调,最好能够拥有一定的行业数据壁垒。

第五层境界:参与设计训练大模型;

比如从事ChatGPT等研发工作。

如何掌握AI大模型开发技能?

第一步:掌握开发AGI时代新应用程序的技能;

比如:大模型应用内核、LangChain开发框架、向量数据库等;

第二步:搞定开发企业级AI Agent的应用技能;

比如:AI Agent、大模型缓存、算力等;

第三步:驾驭开发企业级专有大模型的技能;

比如:RAG、微调等;

第四步:深入应用大模型技术成为开发大师;

比如:大模型预训练、LLMOps等;

小结

大模型应用开发学习实践之路漫漫,我们IT开发者也会逐渐从Application的开发转向Agent的开发的范式的转变,一起加油吧!

参考资料

玄姐聊AGI:https://space.bilibili.com/412720389 (推荐观看玄姐的视频)

甲子光年,《2024年AI Agent行业报告》

 

作者:周旭龙

出处:https://edisonchou.cnblogs.com

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。

From:https://www.cnblogs.com/edisonchou/p/-/llm-study-notes
本文地址: http://www.shuzixingkong.net/article/1719
0评论
提交 加载更多评论
其他文章 1p-frac:已开源,仅用单张分形图片即可媲美ImageNet的预训练效果 | ECCV 2024
分形几何是一个数学分支,主要应用于作图方面。一般来说,分形经过无数次递归迭代后的结果。比如取一条线段,抹去中间的三分之一,会得到长度是原三分之一长的两条线段,中间隔着相同长度的间隙。然后重复这个动作,直到所有的线段都被抹掉,就将会得到被以固定模式出现的间隙隔开的无限多的点,这就是康托尔集合。 目前有
1p-frac:已开源,仅用单张分形图片即可媲美ImageNet的预训练效果 | ECCV 2024 1p-frac:已开源,仅用单张分形图片即可媲美ImageNet的预训练效果 | ECCV 2024 1p-frac:已开源,仅用单张分形图片即可媲美ImageNet的预训练效果 | ECCV 2024
架构师备考的一些思考
前言 之前的python-pytorch的系列文章还没有写完,只是写到卷积神经网络。因为我报名成功了系统架构师的考试,所以决定先备考,等考完再继续写。 虽然架构师证书不能证明技术水平,但在现实生活中的某些情况下是有意义的。考试虽然无聊,但有些考题还是蛮有意思的。 思考 看了几套架构师的考题,发现个有
架构师备考的一些思考 架构师备考的一些思考
图穷匕见-所有反DDD模式都是垃圾
本文书接上回《主观与客观,破除DDD凭经验魔咒》,关注公众号(老肖想当外语大佬)获取信息: 最新文章更新; DDD框架源码(.NET、Java双平台); 加群畅聊,建模分析、技术实现交流; 视频和直播在B站。 开个玩笑 “我不是针对这一个问题,我是说所有的反DDD模式都是垃圾”,作为教练,在团队中我
图穷匕见-所有反DDD模式都是垃圾 图穷匕见-所有反DDD模式都是垃圾 图穷匕见-所有反DDD模式都是垃圾
借助表格技术提升智能审计云平台应用体验
背景说明: 2009年,立信加入全球第五大国际会计网络——BDO国际。BDO 全球各地成员所均使用统一的审计方式,在完全遵守国际审计准则的原则同时,也会应不同地区要求提供附加指引,确保在全球提供一致的服务水平。如今,立信的审计过程及档案记录均已实现电子化。然而,审计工作并非一成不变,为了给客户提供最
借助表格技术提升智能审计云平台应用体验 借助表格技术提升智能审计云平台应用体验 借助表格技术提升智能审计云平台应用体验
LoRA大模型微调的利器
LoRA模型是小型的Stable Diffusion模型,它们对checkpoint模型进行微小的调整。它们的体积通常是检查点模型的10到100分之一。因为体积小,效果好,所以lora模型的使用程度比较高。
LoRA大模型微调的利器 LoRA大模型微调的利器 LoRA大模型微调的利器
OpenTelemetry 实战:gRPC 监控的实现原理
前言 最近在给 opentelemetry-java-instrumentation 提交了一个 PR,是关于给 gRPC 新增四个 metrics: rpc.client.request.size: 客户端请求包大小 rpc.client.response.size:客户端收到的响应包大小 rpc
OpenTelemetry 实战:gRPC 监控的实现原理 OpenTelemetry 实战:gRPC 监控的实现原理 OpenTelemetry 实战:gRPC 监控的实现原理
WebShell流量特征检测_冰蝎篇
80后用菜刀,90后用蚁剑,95后用冰蝎和哥斯拉,以phpshell连接为例,本文主要是对这四款经典的webshell管理工具进行流量分析和检测。 什么是一句话木马? 1、定义 顾名思义就是执行恶意指令的木马,通过技术手段上传到指定服务器并可以正常访问,将我们需要服务器执行的命令上传并执行 2、特点
WebShell流量特征检测_冰蝎篇 WebShell流量特征检测_冰蝎篇 WebShell流量特征检测_冰蝎篇
manim边学边做--曲线类
manim中曲线,除了前面介绍的圆弧类曲线,也可以绘制任意的曲线。 manim中提供的CubicBezier模块,可以利用三次贝塞尔曲线的方式绘制任意曲线。 关于贝塞尔曲线的介绍,可以参考:https://en.wikipedia.org/wiki/B%C3%A9zier_curve。 本文主要介绍
manim边学边做--曲线类 manim边学边做--曲线类 manim边学边做--曲线类