LLM是指什么?一文快速掌握核心概念与原理!
本文系统介绍了大语言模型(LLM)的核心原理与应用发展。首先解析了Transformer架构中的自注意力机制,通过QKV向量实现上下文关联;其次详细说明了API调用中的temperature参数、角色设定等关键要素;进而阐述了Function Calling和Agent的实现原理,介绍了MCP协议如何实现工具解耦;最后展望了AI编程的未来趋势,提出程序员将转向解决AI模糊性问题。文章还提供了包含视
一. LLM (大语言模型)
本质就是文字接龙
把问题当成输入, 把大模型当成函数, 把回答当成输出.
大模型回答问题的过程, 就是一个循环执行函数的过程.
另外有必要了解一下, AI技术爆发于2023年, ChatGPT经过了几次迭代才崭露头角.
● Transformer架构
● 参数爆发增长
● 人工干预奖励模型
思考题: 语言能代表智能吗?
二. Transformer (自注意力机制)
自注意力机制就是动态关联上下文的能力. 如何实现的呢?
● 每个分词就是一个 token
● 每个token 都有一个 Q, K, V 向量 (参数)
○ Q 是查询向量
○ K 是线索向量
○ V 是答案向量
● 推理的过程:
○ 当前token 的Q 与 前面所有的 K 计算权重
○ 每个 token 的V加权相加得到一个 token预测值
○ 选择 N 个与预测值最接近的 token, 掷骰子选择
最简化示例: 小明吃完冰淇淋,结果 => 肚子疼
首先分词及每个token的 Q, K, V向量
token |
Q(查询) |
K(键) |
V(值) |
语义解释 |
小明 |
[0.2, 0.3] |
[0.5, -0.1] |
[0.1, 0.4] |
人物主体 |
吃完 |
[-0.4, 0.6] |
[0.3, 0.8] |
[-0.2, 0.5] |
动作(吃完) |
冰淇淋 |
[0.7, -0.5] |
[-0.6, 0.9] |
[0.9, -0.3] |
食物(冷饮,可能致腹泻) |
结果 |
[0.8, 0.2] |
[0.2, -0.7] |
[0.4, 0.1] |
结果(需关联原因) |
接着开始推理:
1. 使用最后一个 token 的 Q(“结果”的 Q 向量)
Q_current = [0.8, 0.2]
2. 计算 Q_current 与所有 K 的点积(相似度)
点积公式:Q·K = q₁*k₁ + q₂*k₂
Token |
K向量 |
点积计算 |
结果 |
小明 |
[0.5, -0.1] |
0.8 * 0.5 + 0.2*(-0.1) = 0.4 - 0.02 |
0.38 |
吃完 |
[0.3, 0.8] |
0.8 * 0.3 + 0.2 * 0.8 = 0.24 + 0.16 |
0.40 |
冰淇淋 |
[-0.6, 0.9] |
0.8*(-0.6) + 0.2 * 0.9 = -0.48 + 0.18 |
-0.30 |
结果 |
[0.2, -0.7] |
0.8 * 0.2 + 0.2*(-0.7) = 0.16 - 0.14 |
0.02 |
3. Softmax 归一化得到注意力权重
将点积结果输入 Softmax 函数
Token |
点积 |
指数值(e^x) |
权重 |
小明 |
0.38 |
e^0.38 ≈ 1.46 |
1.46 / 2.74 ≈ 0.53 |
吃完 |
0.4 |
e^0.40 ≈ 1.49 |
1.49 / 2.74 ≈ 0.54 |
冰淇淋 |
-0.3 |
e^-0.30 ≈ 0.74 |
0.74 / 2.74 ≈ 0.27 |
结果 |
0.02 |
e^0.02 ≈ 1.02 |
1.02 / 2.74 ≈ 0.37 |
4. 加权求和 V 向量生成上下文向量
将权重与对应 V 向量相乘后相加:
Token |
权重 |
V向量 |
加权 V 向量 |
小明 |
0.53 |
[0.1, 0.4] |
0.53*[0.1, 0.4] ≈ [0.053, 0.212] |
吃完 |
0.54 |
[-0.2, 0.5] |
0.54*[-0.2, 0.5] ≈ [-0.108, 0.27] |
冰淇淋 |
0.27 |
[0.9, -0.3] |
0.27*[0.9, -0.3] ≈ [0.243, -0.081] |
结果 |
0.37 |
[0.4, 0.1] |
0.37*[0.4, 0.1] ≈ [0.148, 0.037] |
最终上下文向量:
[0.053−0.108+0.243+0.148,0.212+0.27−0.081+0.037]=[0.336,0.438]
5. 预测下一个 token
模型将上下文向量 [0.336, 0.438] 与候选 token 的嵌入向量对比:
嵌入向量不作过多解释, 只要知道QKV三个向量可从嵌入向量计算得到即可
候选词 |
嵌入向量 |
相似度(点积) |
概率 |
肚子疼 |
[0.3, 0.5] |
0.336 * 0.3 + 0.438 * 0.5 ≈ 0.101 + 0.219 = 0.320 |
最大概率(例如 65%) |
头疼 |
[0.2, 0.1] |
0.336 * 0.2 + 0.438 * 0.1 ≈ 0.067 + 0.044 = 0.111 |
次之(例如 20%) |
开心 |
[-0.5, 0.8] |
0.336*(-0.5) + 0.438 * 0.8 ≈ -0.168 + 0.350 = 0.182 |
较低(例如 15%) |
最终模型选择最高概率的 “肚子疼” 作为下一个 token.
注意在实际场景中, 预测的下一个token是不确定的, 是因为有一个掷骰子的操作, 大模型会在概率最大的几个token中随机挑选一个作为最终输出
三. Prompt (提示词)
对于这个词大家并不陌生. 我们用chatGPT时经常会用到, "你是一个......."
但你真的理解它吗?
与ai对话时的这种预设角色, 其实并不是严格意义上的 prompt
为什么这么说呢? 先看一下API
四. 理解API
我们前面提到过大语言模型的 本质就是文字接龙 , 相对应的使用大模型也比较简单. 可以参见deepseek的文字接龙 api 请求:
这里比较重要的几个部分, 需要理解:
1. temperature 温度
Temperature(温度) 是一个控制生成文本随机性和多样性的关键参数。它通过调整模型输出的概率分布,直接影响生成内容的“保守”或“冒险”程度. 看几个典型场景:
场景 |
温度 |
代码生成/数学解题 |
0 |
数据抽取/分析 |
1 |
通用对话 |
1.3 |
翻译 |
1.3 |
创意类写作/诗歌创作 |
1.5 |
2. tools 工具支持
大模型对 function calling 的支持, 后面再详细介绍
3. 角色和信息
这一部分是ai对话的主体. 其中role 定义了四个角色
● system 系统设定
● user 用户回复
● assistant 模型回答
● tool 是配合function call工作的角色, 可以调用外部工具
回到前一章的问题, ai对话时其实是user部分输入的内容, 所以system角色的设定内容才应该是严格意义上的Prompt.
这有啥区别呢? (user 与 system?)
个人一个合理的猜测: system的内容在Transformer推理中拥有较高的权重. 所以拥有较高的响应优先级.
4. 关于多轮对话
因为LLM是无状态的. 我们要时刻记得文字接龙的游戏, 因此在实际操作中也是这样的.
● 在第一轮请求时,传递给 API 的 messages 为
● 大模型回答
● 当用户发起第二轮问题时, 请求变成了这样
五. Function Calling (函数调用)
仅仅一个可以回答问题的机器人, 作用并不太大.
要完成复杂的任务, 就需要大模型的输出是稳定的, 而且是可编程的.
因此OpenAI 推出了 function calling的支持. 也就是前面提到的 tools参数相关内容.
1. 基本流程
● 工具声明及用户输入
● 模型检测到需要使用工具, 返回相关工具参数
● 开发者根据方法名和参数, 调用相关工具方法
● 将工具方法的返回值, 附加到请求中, 再次请求大模型
● 得出最终结果
"The current temperature in Paris is 14°C (57.2°F)."
总结一下
2. 实现原理(猜测)
a. 实现方式一: prompt 遵循 (示例)
提前设置规则:
b. 实现方式二: 模型训练特定优化
对结构化输出有特定要求, 可能需要特定训练吧. 这个不太确定?
六. Agent (智能体)
包含: 大模型, 任务规划, 上下文记忆, 工具调用. 它是大模型能力的拓展. 其实只要对API进行简单的封装, 只要能完成特定任务, 都可以称为智能体. 比如下面的例子:
1. 创建AI客服系统
这个智能体, 主要包括:
1. 配置了一个 prompt: "你是一个电商客服, 可查询订单状态"
2. 引入 query_order 工具
2. 其它创建方式
服务商开放接口, 供用户创建, 比如腾讯元器
一个简单的提示词都可以创建智能体
七. MCP (模型上下文协议)
通过上面的智能体调用工具的示例我们可以看到, 每接入一个工具, 都需要编写相应的接入代码. 经常写代码的我们都知道, 这不是好的架构设计. 好的设计应该把动态改变的部分 ( tools的声名和调用分离出来 ), 做为一个独立的模块来拓展. 这就有了大众追捧的 MCP: -----(哪有这么玄, 都是程序员的常规操作啊....)
MCP是工具接入的标准化协议
遵循这套协议, 可以实现工具与Agent的解耦. 你的Agent 接入MCP协议的client sdk后. 接入工具不再需要编写工具调用代码, 只需要注册 MCP Server就可以了. 而MCP Server可由各个服务商独立提供.
MCP Server做什么呢?
1. 声明提供的能力 ListTools
2. 调用能力的方式 CallTool
来看一下MCP Server的部分代码 (红框中就是做上面两个事, 不难理解) :
八. A2A (Agent通信协议)
A2A本质是对 MCP协议的拓展, 按字面意思就是 Agent to Agent. 有兴趣的自己详细看吧.
智能体与智能体之间通信的标准化协议
在这套协议下, 一个智能体要引入其它的智能体的能力, 也变得可插拔了.
九. 未来假想
如同蒸汽机, 电, 计算机这些伟大的技术一样. AI会成为下一个彻底改变人类生活工作方式的新技术.
1. 现在AI编程能力越来越强, 程序员是不是要失业了?
职业不会消失, 消失的只有人. 但是AI编程的确会重塑整个行业.
我预想几年后, 纯粹的业务代码工程师可能会消失. 而会增加更多的AI编程工程师.
AI编程工程师的职责是解决AI模糊性的问题. 而工具的引入就是增加确定性的手段.
我们程序员可以把自己的积累通过 mcp server的方式, 挂载到项目agent 上去. 这样我们就可以解放双手, 去解决更多有挑战性的问题.
2. 当前我们有哪些工作可以由AI来处理?
理论上一切重复性的工作都可以交由AI完成. 保险起见, 创造性的工作暂时可以只作为参考.
● 日常的反馈分析.
● 团队知识库
● 个人知识库
十、AI大模型从0到精通全套学习大礼包
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
只要你是真心想学AI大模型,我这份资料就可以无偿共享给你学习。大模型行业确实也需要更多的有志之士加入进来,我也真心希望帮助大家学好这门技术,如果日后有什么学习上的问题,欢迎找我交流,有技术上面的问题,我是很愿意去帮助大家的!
如果你也想通过学大模型技术去帮助就业和转行,可以点扫描下方链接👇👇
大模型重磅福利:入门进阶全套104G学习资源包免费分享!
01.从入门到精通的全套视频教程
包含提示词工程、RAG、Agent等技术点
02.AI大模型学习路线图(还有视频解说)
全过程AI大模型学习路线
03.学习电子书籍和技术文档
市面上的大模型书籍确实太多了,这些是我精选出来的
04.大模型面试题目详解
05.这些资料真的有用吗?
这份资料由我和鲁为民博士共同整理,鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位,在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利,同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。
所有的视频由智泊AI老师录制,且资料与智泊AI共享,相互补充。这份学习大礼包应该算是现在最全面的大模型学习资料了。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念,通过动态追踪大模型开发、数据标注伦理等前沿技术趋势,构建起"前沿课程+智能实训+精准就业"的高效培养体系。
课堂上不光教理论,还带着学员做了十多个真实项目。学员要亲自上手搞数据清洗、模型调优这些硬核操作,把课本知识变成真本事!
如果说你是以下人群中的其中一类,都可以来智泊AI学习人工智能,找到高薪工作,一次小小的“投资”换来的是终身受益!
应届毕业生:无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。
零基础转型:非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界。
业务赋能 突破瓶颈:传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型。
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
更多推荐
所有评论(0)