前言:像老师一样思考

欢迎来到第三章节的学习。如果说前两章我们是在了解智能体是个“什么样的人”以及他的“家谱”,那么这一章,我们要真正打开它的头盖骨,看看那个被称为“大语言模型(LLM)”的大脑到底是如何像生物神经元一样运作的。

别被那些学术名词吓倒。什么 Transformer、注意力机制、自回归……把它们当成我们为了造出一个“会说话的机器”而发明的一系列精巧的工具。我们会用最直观的方式拆解它们。

准备好了吗?让我们开始这趟大脑漫游之旅。


第一部分:从“鹦鹉学舌”到“拥有灵魂”——语言模型的进化史

在深度学习称霸之前,教计算机说话是一件很笨拙的事情。

1.1 统计时代的“盲人摸象”:N-gram 模型

最早的语言模型非常单纯。它们认为,想知道下一词说什么,只要看看前面几个词就够了。这就是 N-gram

  • 核心思想:依靠统计。如果在过去的书里,“我喜欢”后面接“吃苹果”的概率最高,那我就猜“吃苹果”。
  • 马尔可夫假设:这是它的“短视症”根源。它假设一个词的出现只与它前面 N-1 个词有关。
    • Bigram (N=2):只看前 1 个词。
    • Trigram (N=3):只看前 2 个词。

【案例重现:Datawhale Agent】
假设我们有一个微型语料库:

  1. datawhale agent learns
  2. datawhale agent works

我们要算 datawhale agent learns 这句话的概率。

  • Bigram 视角下,我们把句子切成两截:datawhale -> agentagent -> learns
  • P(agent|datawhale) = 100% (因为 datawhale 后面总是跟 agent)
  • P(learns|agent) = 50% (因为 agent 后面一半是 learns,一半是 works)
  • 最终概率就是它们的连乘。

现实中的痛点:它无法理解“语境”。如果你说“昨天我在苹果店买了一个……”,N-gram 可能会填“苹果”,但如果前面哪怕再多几个词提到“屏幕碎了”,它可能就不知道该填“iPhone”了。它就像一个盲人,摸到象腿说是柱子,摸到象耳说是扇子,因为他摸到的范围太小了。


1.2 神经网络的魔法:从“单词”到“向量”

为了让计算机理解“苹果”和“梨”是近亲,而不是毫无关系的两个符号,我们引入了 词嵌入 (Word Embedding)

  • 核心概念:把每个词变成高维空间的一个点(向量)。
  • 神奇的“数学炼金术”
    在这个空间里,词与词的距离代表了它们的语义距离。最经典的案例是:
    King⃗−Man⃗+Woman⃗≈Queen⃗ \vec{King} - \vec{Man} + \vec{Woman} \approx \vec{Queen} King Man +Woman Queen
    这说明模型通过向量运算,“学会”了性别的概念。

【RNN:有了记忆,但记不久】
为了解决 N-gram 记不住长句子的毛病,科学家发明了 循环神经网络 (RNN)
它像一个在流水线上工作的工人,处理完一个词,就把记忆(隐藏状态)传给下一个时刻的自己。

  • 局限长期依赖问题。就像传话游戏,传到第 100 个人时,最初的信息早就面目全非了(梯度消失)。虽然 LSTM(长短时记忆网络)加了些“开关”来试图锁住记忆,但依然无法处理超长文本。
    在这里插入图片描述

1.3 真正的变革者:Transformer

2017年,Google 一篇《Attention Is All You Need》改变了一切。它抛弃了“循环”,拥抱了“注意力”。

【核心隐喻:全知图书馆】
如果说 RNN 是在读如晦涩的长卷轴,读到后面忘了前面;那么 Transformer 就像是拥有了“上帝视角”。

  • 自注意力机制 (Self-Attention)
    想象你在图书馆读书(如上图)。当你读到“它”这个词时,书页上会射出无数道光线,自动照亮前文中提到的“那个苹果”、“那个特工”或者任何“它”可能指代的东西。
    这些光线的亮度(权重),就是模型对上下文的“关注度”。模型不需要按顺序读,它一眼就能看完整个句子,并瞬间理清所有词之间的关系。
    • Q (Query):我拿着问题去查。
    • K (Key):书脊上的标签。
    • V (Value):书里的内容。
    • 公式Attention(Q,K,V)=softmax(QKTdk)VAttention(Q,K,V) = softmax(\frac{QK^T}{\sqrt{d_k}})VAttention(Q,K,V)=softmax(dk QKT)V ——本质就是算相关性,然后加权求和。

1.4 GPT 的极简主义:Decoder-Only

ChatGPT 采用的 GPT 架构,是 Transformer 的一个变体,叫 Decoder-Only
它抛弃了负责“理解输入”的 Encoder,只保留负责“生成”的 Decoder。

  • 游戏规则:文字接龙(自回归)。
  • 原理:永远只预测下一个字。
  • 为什么这么强?:虽然任务简单(猜下一个词),但为了猜得准,它被迫学会了逻辑、常识甚至代码。因为只有理解了世界,才能完美地预测下一个字。

第二部分:如何驾驶这台大脑——与 LLM 交互的艺术

拥有了大脑,我们还需要学会如何操控它。

2.1 提示工程 (Prompt Engineering):用英语编程

提示词不是咒语,它是除了代码之外的第二种编程语言。

【温度控制:Temperature】
你在调用 API 时会看到 Temperature 参数。

在这里插入图片描述

  • 左侧 (Low Temp, ~0.1)严谨模式
    • 模型变得保守,只选概率最高的词。
    • 适用:数学题、代码生成、事实问答。你不想让模型在写 Python 代码时发挥“创意”。
  • 右侧 (High Temp, ~0.8)狂野模式
    • 模型会尝试那些概率没那么高的词,产生多样性。
    • 适用:写诗、头脑风暴、写小说。

【少样本提示 (Few-Shot)】
不要只下命令,要给示范。

  • Bad Prompt: “把这个转成 JSON。”
  • Good Prompt: “把这个转成 JSON。例如:输入’A bought B’ -> 输出 {‘buyer’: ‘A’, ‘item’: ‘B’}。现在处理:‘Jack sold a car’…”
    这能极大地规范模型的输出格式,对于 Agents 也就是“工具调用”至关重要。

2.2 文本分词 (Tokenization):机器的咀嚼方式

模型看不懂 “Apple”,它只看得到数字 ID。

在这里插入图片描述

【关键认知】

  1. Token != 单词
    • 常见词 “Agent” 可能是一个 Token。
    • 生僻词 “Antigravity” 可能会被切碎成 “Anti”, “grav”, “ity” 三个 Token。
  2. 算术陷阱
    • 为什么 GPT-3 以前算数很烂?因为对它来说,583 可能是一个独立的 ID,它没学过 5+8+3 的逻辑。现在的分词器改进了对数字的处理,但依然敏感。
    • 实践:写公式时,1 + 1 (带空格) 往往比 1+1 (无空格) 更容易被模型理解,因为空格帮助它分清了边界。
  3. 计费单位:你的钱是按 Token 烧的,不是按字数。中文通常比英文占更多 Token(按字节算),这意味着同样的钱,英文能写更多内容(虽然现在差距在缩小)。

第三部分:边界与真相——缩放法则与幻觉

3.1 缩放法则 (Scaling Laws):大力出奇迹?

OpenAI 发现了一个惊人的规律: 模型性能与参数量、数据量、计算量呈幂律关系。
这意味着,只要你堆更多的显卡、喂更多的数据,模型就会变强,几乎没有瓶颈。这就是为什么现在的模型越来越大。

  • 修正 (Chinchilla Law):大家以前只顾着把模型做大,忽略了数据量。Chinchilla 告诉我们,多喂数据比单纯做大模型更划算。与其练一个傻大的 175B 模型,不如练一个精悍的 70B 模型但喂它 4 倍的数据。Llama 系列就是这一哲学的践行者。

3.2 幻觉 (Hallucination):一本正经的胡说八道

这是所有 Agent 开发者的噩梦。

  • 本质:模型不是在“回忆”事实,它是在“生成”概率上合理的词。如果它可以编造一个看起来很像真的的函数名 UseToolX() 来让句子通顺,它就会毫不犹豫地编造。
  • 解药
    1. RAG (检索增强生成):考试时允许翻书。让模型先去搜这一段知识,再回答。
    2. 工具调用:遇到计算题,别让它心算,给它一个计算器工具。

第四部分:剔除学术噪音——给开发者的10条现实建议

把教科书扔一边,这里是你在构建 Agent 时真正需要记住的:

  1. Token 是金钱,也是生命线
    上下文窗口(Context Window)虽大,但不是无限的。塞入过多无关的垃圾信息(如超长的无关 Logs),不仅浪费钱,还会降低模型的注意力,导致它忽略关键指令(Lost in the Middle 现象)。

  2. Prompt is Code
    对待提示词要像对待代码一样。建立版本控制,写测试用例。在这个时代,英语(或中文)就是最高级的编程语言。

  3. 不要相信模型的记忆,相信它的推理
    不要指望模型背下了你公司的内部文档。它记不住。它擅长的是你把文档喂给它(通过 Context),然后让它基于文档做推理。

  4. 温度 (Temperature) 决定性格
    做客服 Agent?Set T=0.2。做创意写手 Agent?Set T=0.8。永远不要用默认参数走天下。

  5. Chain-of-Thought 是智商倍增器
    遇到复杂任务,强制模型“Let’s think step by step”。这不仅是玄学,它实际上是给了模型更多的计算时间(生成更多 Token)来理清逻辑,然后再给出最终答案。

  6. 结构化输出是 Agent 的基石
    想让 Agent 能够自动执行任务,必须强制模型输出 JSON 或 XML。不要让它输出自然语言,因为代码很难解析“好的,我已经帮你做完了…”这种废话。

  7. 警惕“空格”里的幽灵
    分词器对空格非常敏感。function_namefunction name 是完全不同的 Token 序列。在设计 DSL 或特定指令格式时,保持分隔符的一致性至关重要。

  8. RAG 不是万能药
    虽然 RAG 能缓解幻觉,但如果检索回来的片段是垃圾,模型输出的也是垃圾(Garbage In, Garbage Out)。优化检索质量往往比优化 prompt 更重要。

  9. 模型是“概率机器”而非“逻辑机器”
    它不会真正地“思考” A > B,它只是知道 A > B 这类文本出现的概率高。所以在做严谨逻辑判断时,最好让它写 Python 代码来运行,而不是让它“想”。

  10. 本地模型是未来的隐私护盾
    虽然 GPT-4 很强,但在处理敏感数据(PII)时,像 Qwen 或 Llama 这样能跑在本地显卡上的模型是唯一的合规选择。学会部署本地模型是 Agent 开发者的必修课。


结语

现在你已经了解了大脑的构造。它不是魔法,它是数学,是统计,是工程奇迹。这就是为什么你的 Agent 有时候聪明得惊人,有时候又蠢得好笑。
理解了 Transformer,你就理解了它的注意力极限;理解了 Token,你就懂了它的计费逻辑;理解了 Temperature,你就掌握了它的情绪按钮。

下一章,我们将不再只是观察这个大脑,而是把它连上四肢(工具),让它真正动起来。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐