Skip to content
鼓励作者:欢迎打赏犒劳

大模型基础概念

什么是llm

简单的来说,llm就是 给定上文,预测下一个最可能的词(或子词单元,即 token)

比如你输入 “今天天气真”,模型会计算词表中每个词出现的概率,然后选一个(或按某种策略采样)作为下一个词,比如 “好”;然后拿 “今天天气真好” 再预测下一个词,比如 “啊”…… 如此循环,直到生成完整回答。

总结:LLM 生成文本时 = 循环执行“根据已生成的文本,预测下一个 token”。

什么是token

token就是根据分词器分好的最小单元。 不同的模型 可能对同一句话有不同的分法。 每个模型在训练之前,要先“制造”一个词汇表(Vocabulary)和一个分词规则(Tokenizer)。这个规则是固定的,训练完成后就不会再变。

LLM的Token既不是一个完整的单词,也不是一个固定的汉字。它会把常见的短词、词根、甚至单个字母拆开,又能把高频组合(如“ChatGPT”中的“Chat”)合并成一个Token

词表是什么

词表非常的重要!

  • 词表类似是一个“字典”,列出了模型所有认识的token。
  • LLM是根据这些token的某种“表示”来计算和预测下一个token。

举个例子,比如

第一步

例如GPT-4的部分词表可能是:

text
{
  "我": 1234,
  "你": 5678,
  "你好": 9012,
  "Chat": 3456,
  "GPT": 7890,
  ...
}

词表大小 = 模型知道多少个不同的token。比如10万、5万等。

作用:把文本变成模型能处理的数字ID。比如“你好” → 整数 9012。

第二步:

当模型拿到token的ID(比如9012)后,它会做一件事:去一个巨大的“查找表”里,把这个ID对应的“向量”取出来。

这个向量就是一串小数,比如:

text
9012对应的向量 = [0.123, -0.456, 0.789, ..., 1.3234, ...]

向量的长度(维度)通常是几百到几千,比如768维、1024维、4096维等。

LLM是怎么预测下一个token的 (完整流程)

假设输入“你好”,模型要预测下一个token:

步骤1:转成ID

  • “你” → ID 5678
  • “好” → ID 6789(假设)

步骤2:查表得向量

  • ID 5678 → 向量 A = [0.1, 0.2, ...]
  • ID 6789 → 向量 B = [0.3, 0.4, ...]

步骤3:加上位置编码

  • 位置1(你)→ 加上位置向量P1 → 得到新向量 X1
  • 位置2(好)→ 加上位置向量P2 → 得到新向量 X2

步骤4:经过Transformer的几十层计算(这是真正的“理解”过程)

  • 输入 X1, X2 → 层层传递、交互、变换 → 最后输出一个预测向量 Y

步骤5:预测下一个token

  • 预测向量 Y 的长度 = 词表大小(比如10万)
  • Y 中的每个数值代表词表中对应token的得分(比如第1234个token得分8.5,第5678个token得分3.2...)
  • 用softmax函数把得分转成概率(所有概率加起来=1)
  • 得分最高的token就是模型的“最佳猜测”

步骤6:输出

  • 如果最高概率对应ID 9012(“你好”中的“好”已经输过了,这里假设是“吗”),那就输出“吗”

什么是Agent

其实就是 通过目标(输入)-> 感知上下文 -> 思考规划 -> 调用工具 -> 观察结果 -> 自我判断 -> 是否完成,如果完成了 就结束,如果没有完成,就再次循环(从感知上下文开始) 直到完成

如有转载或 CV 的请标注本站原文地址