Kaynağa Gözat

fix Superscript

jjyaoao 9 ay önce
ebeveyn
işleme
978b5e7f9a

+ 2 - 2
docs/chapter1/第一章 初识智能体.md

@@ -73,7 +73,7 @@
 
 (1)**基于内部决策架构的分类**
 
-第一种分类维度是依据智能体内部决策架构的复杂程度,这个视角在《Artificial Intelligence: A Modern Approach》中系统性地提出^[1]^。正如 1.1.1 节所述,传统智能体的演进路径本身就构成了最经典的分类阶梯,它涵盖了从简单的**反应式**智能体,到引入内部模型的**模型式**智能体,再到更具前瞻性的**基于目标**和**基于效用**的智能体。此外,**学习能力**则是一种可赋予上述所有类型的元能力,使其能通过经验自我改进。
+第一种分类维度是依据智能体内部决策架构的复杂程度,这个视角在《Artificial Intelligence: A Modern Approach》中系统性地提出<sup>[1]</sup>。正如 1.1.1 节所述,传统智能体的演进路径本身就构成了最经典的分类阶梯,它涵盖了从简单的**反应式**智能体,到引入内部模型的**模型式**智能体,再到更具前瞻性的**基于目标**和**基于效用**的智能体。此外,**学习能力**则是一种可赋予上述所有类型的元能力,使其能通过经验自我改进。
 
 (2)**基于时间与反应性的分类**
 
@@ -127,7 +127,7 @@
 
 - **神经符号主义AI(Neuro-Symbolic AI)**
 
-长久以来,符号主义和亚符号主义这两大阵营如同两条平行线,各自发展。为克服上述两种范式的局限,一种“大和解”的思想开始兴起,这就是神经符号主义AI,也称神经符号混合主义。它的目标,是融合两大范式的优点,创造出一个既能像神经网络一样从数据中学习,又能像符号系统一样进行逻辑推理的混合智能体。它试图弥合感知与认知、直觉与理性之间的鸿沟。诺贝尔经济学奖得主丹尼尔·卡尼曼(Daniel Kahneman)在其著作《思考,快与慢》(Thinking, Fast and Slow)中提出的双系统理论,为我们理解神经符号主义提供了一个绝佳的类比^[2]^,如图1.4所示:
+长久以来,符号主义和亚符号主义这两大阵营如同两条平行线,各自发展。为克服上述两种范式的局限,一种“大和解”的思想开始兴起,这就是神经符号主义AI,也称神经符号混合主义。它的目标,是融合两大范式的优点,创造出一个既能像神经网络一样从数据中学习,又能像符号系统一样进行逻辑推理的混合智能体。它试图弥合感知与认知、直觉与理性之间的鸿沟。诺贝尔经济学奖得主丹尼尔·卡尼曼(Daniel Kahneman)在其著作《思考,快与慢》(Thinking, Fast and Slow)中提出的双系统理论,为我们理解神经符号主义提供了一个绝佳的类比<sup>[2]</sup>,如图1.4所示:
 
 - **系统1**是快速、凭直觉、并行的思维模式,类似于亚符号主义AI强大的模式识别能力。
 - **系统2**是缓慢、有条理、基于逻辑的审慎思维,恰如符号主义AI的推理过程。

+ 10 - 10
docs/chapter2/第二章 智能体发展史.md

@@ -10,7 +10,7 @@
 
 ### 2.1.1 物理符号系统假说
 
-符号主义时代的理论根据,是1976年由**艾伦·纽厄尔(Allen Newell)**和**赫伯特·西蒙(Herbert A. Simon)**共同提出的**物理符号系统假说(PhysicalSymbol SystemHypothesis, PSSH)**^[1]^。这两位图灵奖得主通过这一假说,为在计算机上实现通用人工智能提供了理论指导和判定标准。
+符号主义时代的理论根据,是1976年由**艾伦·纽厄尔(Allen Newell)**和**赫伯特·西蒙(Herbert A. Simon)**共同提出的**物理符号系统假说(PhysicalSymbol SystemHypothesis, PSSH)**<sup>[1]</sup>。这两位图灵奖得主通过这一假说,为在计算机上实现通用人工智能提供了理论指导和判定标准。
 
 该假说包含两个核心论断:
 
@@ -53,7 +53,7 @@
 
 **应用案例与分析:MYCIN系统**
 
-MYCIN是历史上最著名、最具影响力的专家系统之一,由斯坦福大学于20世纪70年代开发^[2]^。它被设计用于辅助医生诊断细菌性血液感染并推荐合适的抗生素治疗方案。
+MYCIN是历史上最著名、最具影响力的专家系统之一,由斯坦福大学于20世纪70年代开发<sup>[2]</sup>。它被设计用于辅助医生诊断细菌性血液感染并推荐合适的抗生素治疗方案。
 
 - **工作原理**:MYCIN通过与医生进行问答式交互来收集病人的症状、病史和化验结果。其知识库包含了约600条由医学专家提供的“IF-THEN”规则。推理机主要采用反向链的方式工作:从“确定致病菌”这一最高目标出发,反向推导需要哪些证据和条件,然后向医生提问以获取这些信息。其简化的工作流程如图2.3所示。
 
@@ -67,7 +67,7 @@ MYCIN是历史上最著名、最具影响力的专家系统之一,由斯坦福
 
 ### 2.1.3 SHRDLU
 
-如果说专家系统展示了符号AI在专业领域的“深度”,那么由**特里·威诺格拉德(Terry Winograd)**于1968-1970年开发的SHRDLU项目^[3]^,则在“广度”上实现了革命性的突破。SHRDLU旨在构建一个能在“积木世界”这一微观环境中,通过自然语言与人类流畅交互的综合性智能体。“积木世界”是一个模拟的三维虚拟空间,其中包含不同形状、颜色和大小的积木,以及一个可以抓取和移动它们的虚拟机械臂。用户通过自然语言向SHRDLU下达指令或提问,SHRDLU则在虚拟世界中执行动作或给出文字回答。
+如果说专家系统展示了符号AI在专业领域的“深度”,那么由**特里·威诺格拉德(Terry Winograd)**于1968-1970年开发的SHRDLU项目<sup>[3]</sup>,则在“广度”上实现了革命性的突破。SHRDLU旨在构建一个能在“积木世界”这一微观环境中,通过自然语言与人类流畅交互的综合性智能体。“积木世界”是一个模拟的三维虚拟空间,其中包含不同形状、颜色和大小的积木,以及一个可以抓取和移动它们的虚拟机械臂。用户通过自然语言向SHRDLU下达指令或提问,SHRDLU则在虚拟世界中执行动作或给出文字回答。
 
 <div align="center">
   <img src="https://raw.githubusercontent.com/datawhalechina/Hello-Agents/main/docs/images/2-figures/1757246501849-3.png" alt="图片描述" width="90%"/>
@@ -100,13 +100,13 @@ SHRDLU的历史地位与影响主要体现在三个方面:
 符号主义智能体的“智能”完全依赖于其知识库的质量和完备性。然而,如何构建一个能够支撑真实世界交互的知识库,被证明是一项极其艰巨的任务,主要体现在两个方面:
 
 - **知识获取瓶颈(Knowledge Acquisition Bottleneck)**:专家系统的知识需要由人类专家和知识工程师通过繁琐的访谈、提炼和编码过程来构建。这个过程成本高昂、耗时漫长,且难以规模化。更重要的是,人类专家的许多知识是内隐的、直觉性的,很难被清晰地表达为“IF-THEN”规则。试图将整个世界的知识都进行手工符号化,被认为是一项几乎不可能完成的任务。
-- **常识问题(Common-sense Problem)**:人类行为依赖于庞大的常识背景(例如,“水是湿的”、“绳子可以拉不能推”),但符号系统除非被明确编码,否则对此一无所知。为广阔、模糊的常识建立完备的知识库至今仍是重大挑战,Cyc项目^[4]^历经数十年努力,其成果和应用仍然非常有限。
+- **常识问题(Common-sense Problem)**:人类行为依赖于庞大的常识背景(例如,“水是湿的”、“绳子可以拉不能推”),但符号系统除非被明确编码,否则对此一无所知。为广阔、模糊的常识建立完备的知识库至今仍是重大挑战,Cyc项目<sup>[4]</sup>历经数十年努力,其成果和应用仍然非常有限。
 
 **(2)框架问题与系统脆弱性**
 
 除了知识层面的挑战,符号主义在处理动态变化的世界时也遇到了逻辑上的困境。
 
-- **框架问题(Frame Problem)**:在一个动态世界中,智能体执行一个动作后,如何高效判断哪些事物未发生改变是一个逻辑难题^[5]^。为每个动作显式地声明所有不变的状态,在计算上是不可行的,而人类却能毫不费力地忽略不相关的变化。
+- **框架问题(Frame Problem)**:在一个动态世界中,智能体执行一个动作后,如何高效判断哪些事物未发生改变是一个逻辑难题<sup>[5]</sup>。为每个动作显式地声明所有不变的状态,在计算上是不可行的,而人类却能毫不费力地忽略不相关的变化。
 - **系统脆弱性(Brittleness)**:符号系统完全依赖预设规则,导致其行为非常“脆弱”。一旦遇到规则之外的任何微小变化或新情况,系统便可能完全失灵,无法像人类一样灵活变通。SHRDLU的成功,也正是因为它运行在一个规则完备的封闭世界里,而真实世界充满了例外。
 
 ## 2.2 构建基于规则的聊天机器人
@@ -115,7 +115,7 @@ SHRDLU的历史地位与影响主要体现在三个方面:
 
 ### 2.2.1 ELIZA 的设计思想
 
-ELIZA是由麻省理工学院的计算机科学家**约瑟夫·魏泽鲍姆(Joseph Weizenbaum)**于1966年发布的一个计算机程序^[6]^,是早期自然语言处理领域的著名尝试之一。ELIZA并非一个单一的程序,而是一个可以执行不同“脚本”的框架。其中,最广为人知也最成功的脚本是“DOCTOR”,它模仿了一位罗杰斯学派的非指导性心理治疗师。
+ELIZA是由麻省理工学院的计算机科学家**约瑟夫·魏泽鲍姆(Joseph Weizenbaum)**于1966年发布的一个计算机程序<sup>[6]</sup>,是早期自然语言处理领域的著名尝试之一。ELIZA并非一个单一的程序,而是一个可以执行不同“脚本”的框架。其中,最广为人知也最成功的脚本是“DOCTOR”,它模仿了一位罗杰斯学派的非指导性心理治疗师。
 
 ELIZA的工作方式极其巧妙:它从不正面回答问题或提供信息,而是通过识别用户输入中的关键词,然后应用一套预设的转换规则,将用户的陈述转化为一个开放式的提问。例如,当用户说“我为我的男朋友感到难过”时,ELIZA可能会识别出关键词“我为……感到难过”,并应用规则生成回应:“你为什么会为你的男朋友感到难过?”
 
@@ -280,7 +280,7 @@ ELIZA的实践清晰地揭示了符号主义方法的核心矛盾:系统看似
 
 ## 2.3 马文·明斯基的心智社会
 
-符号主义的探索和ELIZA的实践,共同指向了一个问题:通过预设规则构建的、单一的、集中的推理引擎,似乎难以通向真正的智能。无论规则库多么庞大,系统在面对真实世界的模糊性、复杂性和无穷变化时,总是显得僵化而脆弱。这一困境促使一些顶尖的思考者开始反思人工智能最底层的设计哲学。其中,**马文·明斯基(Marvin Minsky)**没有继续尝试为单一推理核心添加更多规则,而是在他的**《心智社会》(The Society of Mind)**^[7]^ 一书中提出了一个革命性的问题:"What magical trick makes us intelligent? The trick is that there is no trick. The power of intelligence stems from our vast diversity, not from any single, perfect principle."
+符号主义的探索和ELIZA的实践,共同指向了一个问题:通过预设规则构建的、单一的、集中的推理引擎,似乎难以通向真正的智能。无论规则库多么庞大,系统在面对真实世界的模糊性、复杂性和无穷变化时,总是显得僵化而脆弱。这一困境促使一些顶尖的思考者开始反思人工智能最底层的设计哲学。其中,**马文·明斯基(Marvin Minsky)**没有继续尝试为单一推理核心添加更多规则,而是在他的**《心智社会》(The Society of Mind)**<sup>[7]</sup> 一书中提出了一个革命性的问题:"What magical trick makes us intelligent? The trick is that there is no trick. The power of intelligence stems from our vast diversity, not from any single, perfect principle."
 
 ### 2.3.1 对单一整体智能模型的反思
 
@@ -342,7 +342,7 @@ ELIZA的实践清晰地揭示了符号主义方法的核心矛盾:系统看似
 
 ### 2.4.1 从符号到联结
 
-作为对符号主义局限性的直接回应,**联结主义(Connectionism)**在20世纪80年代重新兴起。与符号主义自上而下、依赖明确逻辑规则的设计哲学不同,联结主义是一种自下而上的方法,其灵感来源于对生物大脑神经网络结构的模仿^[8]^。它的核心思想可以概括为以下几点:
+作为对符号主义局限性的直接回应,**联结主义(Connectionism)**在20世纪80年代重新兴起。与符号主义自上而下、依赖明确逻辑规则的设计哲学不同,联结主义是一种自下而上的方法,其灵感来源于对生物大脑神经网络结构的模仿<sup>[8]</sup>。它的核心思想可以概括为以下几点:
 
 1. **知识的分布式表示**:知识并非以明确的符号或规则形式存储在某个知识库中,而是以连接权重的形式,分布式地存储在大量简单的处理单元(即人工神经元)的连接之间。整个网络的连接模式本身就构成了知识。
 2. **简单的处理单元**:每个神经元只执行非常简单的计算,如接收来自其他神经元的加权输入,通过一个激活函数进行处理,然后将结果输出给下一个神经元。
@@ -361,7 +361,7 @@ ELIZA的实践清晰地揭示了符号主义方法的核心矛盾:系统看似
 
 联结主义主要解决了感知问题(例如,“这张图片里有什么?”),但智能体更核心的任务是进行决策(例如,“在这种情况下,我应该做什么?”)。**强化学习(Reinforcement Learning, RL)**正是专注于解决序贯决策问题的学习范式。它并非直接从标注好的静态数据集中学习,而是通过智能体与环境的直接交互,在“试错”中学习如何最大化其长期收益。
 
-以AlphaGo为例,其核心的自我对弈学习过程便是强化学习的经典体现^[9]^。在这个过程中,AlphaGo(智能体)通过观察棋盘的当前布局(环境状态),决定下一步棋的落子位置(行动)。一局棋结束后,根据胜负结果,它会收到一个明确的信号:赢了就是正向奖励,输了则是负向奖励。通过数百万次这样的自我对弈,AlphaGo不断调整其内部策略,逐渐学会了在何种棋局下选择何种行动,最有可能导向最终的胜利。这个过程完全是自主的,不依赖于人类棋谱的直接指导。
+以AlphaGo为例,其核心的自我对弈学习过程便是强化学习的经典体现<sup>[9]</sup>。在这个过程中,AlphaGo(智能体)通过观察棋盘的当前布局(环境状态),决定下一步棋的落子位置(行动)。一局棋结束后,根据胜负结果,它会收到一个明确的信号:赢了就是正向奖励,输了则是负向奖励。通过数百万次这样的自我对弈,AlphaGo不断调整其内部策略,逐渐学会了在何种棋局下选择何种行动,最有可能导向最终的胜利。这个过程完全是自主的,不依赖于人类棋谱的直接指导。
 
 这种通过与环境互动、根据反馈信号来优化自身行为的学习机制,就是强化学习的核心框架。下面我们将详细拆解其基本构成要素和工作模式。
 
@@ -460,7 +460,7 @@ ELIZA的实践清晰地揭示了符号主义方法的核心矛盾:系统看似
   <p>图 2.11 AI Agent 技术栈概览</p>
 </div>
 
-该技术栈图由Letta公司于2024年11月发布^[10]^,它将AI智能体相关的工具、平台和服务进行了分层与分类,为我们理解当前的市场格局和技术选型提供了宝贵的参考。
+该技术栈图由Letta公司于2024年11月发布<sup>[10]</sup>,它将AI智能体相关的工具、平台和服务进行了分层与分类,为我们理解当前的市场格局和技术选型提供了宝贵的参考。
 
 ## 2.5 本章小结
 

+ 14 - 14
docs/chapter3/第三章 大模型基础.md

@@ -106,7 +106,7 @@ N-gram 模型虽然简单有效,但有两个致命缺陷:
 
 **(2)神经网络语言模型与词嵌入**
 
-N-gram 模型的根本缺陷在于它将词视为孤立、离散的符号。为了克服这个问题,研究者们转向了神经网络,并提出了一种思想:用连续的向量来表示词。2003年,Bengio 等人提出的**前馈神经网络语言模型 (Feedforward Neural Network Language Model)** 是这一领域的里程碑^[1]^
+N-gram 模型的根本缺陷在于它将词视为孤立、离散的符号。为了克服这个问题,研究者们转向了神经网络,并提出了一种思想:用连续的向量来表示词。2003年,Bengio 等人提出的**前馈神经网络语言模型 (Feedforward Neural Network Language Model)** 是这一领域的里程碑<sup>[1]</sup>
 
 其核心思想可以分为两步:
 
@@ -166,7 +166,7 @@ king - man + woman 的结果向量: [0.9 0.2]
 
 **(3)循环神经网络 (RNN) 与长短时记忆网络 (LSTM)**
 
-前一节的神经网络语言模型虽然引入了词嵌入解决了泛化问题,但它和 N-gram 模型一样,上下文窗口是固定大小的。为了预测下一个词,它只能看到前 n−1 个词,再早的历史信息就被丢弃了。这显然不符合我们人类理解语言的方式。为了打破固定窗口的限制,**循环神经网络 (Recurrent Neural Network, RNN)** 应运而生,其核心思想非常直观:为网络增加“记忆”能力^[2]^
+前一节的神经网络语言模型虽然引入了词嵌入解决了泛化问题,但它和 N-gram 模型一样,上下文窗口是固定大小的。为了预测下一个词,它只能看到前 n−1 个词,再早的历史信息就被丢弃了。这显然不符合我们人类理解语言的方式。为了打破固定窗口的限制,**循环神经网络 (Recurrent Neural Network, RNN)** 应运而生,其核心思想非常直观:为网络增加“记忆”能力<sup>[2]</sup>
 
 如图3.3所示,RNN 的设计引入了一个**隐藏状态 (hidden state)** 向量,我们可以将其理解为网络的短期记忆。在处理序列的每一步,网络都会读取当前的输入词,并结合它上一刻的记忆(即上一个时间步的隐藏状态),然后生成一个新的记忆(即当前时间步的隐藏状态)传递给下一刻。这个循环往复的过程,使得信息可以在序列中不断向后传递。
 
@@ -177,7 +177,7 @@ king - man + woman 的结果向量: [0.9 0.2]
 
 然而,标准的 RNN 在实践中存在一个严重的问题:**长期依赖问题 (Long-term Dependency Problem)** 。在训练过程中,模型需要通过反向传播算法根据输出端的误差来调整网络深处的权重。对于 RNN 而言,序列的长度就是网络的深度。当序列很长时,梯度在从后向前传播的过程中会经过多次连乘,这会导致梯度值快速趋向于零(**梯度消失**)或变得极大(**梯度爆炸**)。梯度消失使得模型无法有效学习到序列早期信息对后期输出的影响,即难以捕捉长距离的依赖关系。
 
-为了解决长期依赖问题,**长短时记忆网络 (Long Short-Term Memory, LSTM)** 被设计出来^[3]^。LSTM 是一种特殊的 RNN,其核心创新在于引入了**细胞状态 (Cell State)** 和一套精密的**门控机制 (Gating Mechanism)** 。细胞状态可以看作是一条独立于隐藏状态的信息通路,允许信息在时间步之间更顺畅地传递。门控机制则是由几个小型神经网络构成,它们可以学习如何有选择地让信息通过,从而控制细胞状态中信息的增加与移除。这些门包括:
+为了解决长期依赖问题,**长短时记忆网络 (Long Short-Term Memory, LSTM)** 被设计出来<sup>[3]</sup>。LSTM 是一种特殊的 RNN,其核心创新在于引入了**细胞状态 (Cell State)** 和一套精密的**门控机制 (Gating Mechanism)** 。细胞状态可以看作是一条独立于隐藏状态的信息通路,允许信息在时间步之间更顺畅地传递。门控机制则是由几个小型神经网络构成,它们可以学习如何有选择地让信息通过,从而控制细胞状态中信息的增加与移除。这些门包括:
 
 - **遗忘门 (Forget Gate)** : 决定从上一时刻的细胞状态中丢弃哪些信息。
 - **输入门 (Input Gate)** : 决定将当前输入中的哪些新信息存入细胞状态。
@@ -185,7 +185,7 @@ king - man + woman 的结果向量: [0.9 0.2]
 
 ### 3.1.2 Transformer 架构解析
 
-在上一节中,我们看到RNN及LSTM通过引入循环结构来处理序列数据,这在一定程度上解决了捕捉长距离依赖的问题。然而,这种循环的计算方式也带来了新的瓶颈:它必须按顺序处理数据。第 t 个时间步的计算,必须等待第 t−1 个时间步完成后才能开始。这意味着 RNN 无法进行大规模的并行计算,在处理长序列时效率低下,这极大地限制了模型规模和训练速度的提升。Transformer在2017 年由谷歌团队提出^[4]^。它完全抛弃了循环结构,转而完全依赖一种名为**注意力 (Attention)** 的机制来捕捉序列内的依赖关系,从而实现了真正意义上的并行计算。
+在上一节中,我们看到RNN及LSTM通过引入循环结构来处理序列数据,这在一定程度上解决了捕捉长距离依赖的问题。然而,这种循环的计算方式也带来了新的瓶颈:它必须按顺序处理数据。第 t 个时间步的计算,必须等待第 t−1 个时间步完成后才能开始。这意味着 RNN 无法进行大规模的并行计算,在处理长序列时效率低下,这极大地限制了模型规模和训练速度的提升。Transformer在2017 年由谷歌团队提出<sup>[4]</sup>。它完全抛弃了循环结构,转而完全依赖一种名为**注意力 (Attention)** 的机制来捕捉序列内的依赖关系,从而实现了真正意义上的并行计算。
 
 **(1)Encoder-Decoder 整体结构**
 
@@ -477,7 +477,7 @@ class PositionalEncoding(nn.Module):
 
 前面一节中,我们动手构建了一个完整的Transformer 模型,它能在很多端到端的场景表现出色。但是当任务转换为构建一个与人对话、创作、作为智能体大脑的通用模型时,或许我们并不需要那么复杂的结构。
 
-Transformer的设计哲学是“先理解,再生成”。编码器负责深入理解输入的整个句子,形成一个包含全局信息的上下文记忆,然后解码器基于这份记忆来生成翻译。但 OpenAI 在开发 **GPT (Generative Pre-trained Transformer)** 时,提出了一个更简单的思想^[5]^:**语言的核心任务,不就是预测下一个最有可能出现的词吗?**
+Transformer的设计哲学是“先理解,再生成”。编码器负责深入理解输入的整个句子,形成一个包含全局信息的上下文记忆,然后解码器基于这份记忆来生成翻译。但 OpenAI 在开发 **GPT (Generative Pre-trained Transformer)** 时,提出了一个更简单的思想<sup>[5]</sup>:**语言的核心任务,不就是预测下一个最有可能出现的词吗?**
 
 无论是回答问题、写故事还是生成代码,本质上都是在一个已有的文本序列后面,一个词一个词地添加最合理的内容。基于这个思想,GPT 做了一个大胆的简化:**它完全抛弃了编码器,只保留了解码器部分。** 这就是 **Decoder-Only** 架构的由来。
 
@@ -647,7 +647,7 @@ How are you?
 
 **3.2.2.2 字节对编码算法解析**
 
-字节对编码 (Byte-Pair Encoding, BPE) 是最主流的子词分词算法之一^[6]^,GPT系列模型就采用了这种算法。其核心思想非常简洁,可以理解为一个“贪心”的合并过程:
+字节对编码 (Byte-Pair Encoding, BPE) 是最主流的子词分词算法之一<sup>[6]</sup>,GPT系列模型就采用了这种算法。其核心思想非常简洁,可以理解为一个“贪心”的合并过程:
 
 1. **初始化**:将词表初始化为所有在语料库中出现过的基本字符。
 2. **迭代合并**:在语料库上,统计所有相邻词元对的出现频率,找到频率最高的一对,将它们合并成一个新的词元,并加入词表。
@@ -719,8 +719,8 @@ for i in range(num_merges):
 
 后续的许多算法都是在BPE的基础上进行优化的。其中,Google 开发的 WordPiece 和 SentencePiece 是影响力最大的两种。
 
-- **WordPiece**: Google BERT 模型采用的算法^[7]^。它与 BPE 非常相似,但合并词元的标准不是“最高频率”,而是“能最大化提升语料库的语言模型概率”。简单来说,它会优先合并那些能让整个语料库的“通顺度”提升最大的词元对。
-- **SentencePiece**: Google 开源的一款分词工具^[8]^,Llama 系列模型采用了此算法。它最大的特点是,将空格也视作一个普通字符(通常用下划线 `_` 表示)。这使得分词和解码过程完全可逆,且不依赖于特定的语言(例如,它不需要知道中文不使用空格分词)。
+- **WordPiece**: Google BERT 模型采用的算法<sup>[7]</sup>。它与 BPE 非常相似,但合并词元的标准不是“最高频率”,而是“能最大化提升语料库的语言模型概率”。简单来说,它会优先合并那些能让整个语料库的“通顺度”提升最大的词元对。
+- **SentencePiece**: Google 开源的一款分词工具<sup>[8]</sup>,Llama 系列模型采用了此算法。它最大的特点是,将空格也视作一个普通字符(通常用下划线 `_` 表示)。这使得分词和解码过程完全可逆,且不依赖于特定的语言(例如,它不需要知道中文不使用空格分词)。
 
 **3.2.2.3 分词器对开发者的意义**
 
@@ -872,15 +872,15 @@ print(response)
 
 **缩放法则(Scaling Laws)**是近年来大语言模型领域最重要的发现之一。它揭示了模型性能与模型参数量、训练数据量以及计算资源之间存在着可预测的幂律关系。这一发现为大语言模型的持续发展提供了理论指导,阐明了增加资源投入能够系统性提升模型性能的底层逻辑。
 
-研究发现,在对数-对数坐标系下,模型的性能(通常用损失 Loss 来衡量)与参数量、数据量和计算量这三个因素都呈现出平滑的幂律关系^[9]^。简单来说,只要我们持续、按比例地增加这三个要素,模型的性能就会可预测地、平滑地提升,而不会出现明显的瓶颈。这一发现为大模型的设计和训练提供了清晰的指导:在资源允许的范围内,尽可能地扩大模型规模和训练数据量。
+研究发现,在对数-对数坐标系下,模型的性能(通常用损失 Loss 来衡量)与参数量、数据量和计算量这三个因素都呈现出平滑的幂律关系<sup>[9]</sup>。简单来说,只要我们持续、按比例地增加这三个要素,模型的性能就会可预测地、平滑地提升,而不会出现明显的瓶颈。这一发现为大模型的设计和训练提供了清晰的指导:在资源允许的范围内,尽可能地扩大模型规模和训练数据量。
 
-早期的研究更侧重于增加模型参数量,但 DeepMind 在 2022 年提出的“Chinchilla 定律”对此进行了重要修正^[10]^。该定律指出,在给定的计算预算下,为了达到最优性能,**模型参数量和训练数据量之间存在一个最优配比**。具体来说,最优的模型应该比之前普遍认为的要小,但需要用多得多的数据进行训练。例如,一个 700 亿参数的 Chinchilla 模型,由于使用了比 GPT-3(1750 亿参数)多 4 倍的数据进行训练,其性能反而超越了后者。这一发现纠正了“越大越好”的片面认知,强调了数据效率的重要性,并指导了后续许多高效大模型(如 Llama 系列)的设计。
+早期的研究更侧重于增加模型参数量,但 DeepMind 在 2022 年提出的“Chinchilla 定律”对此进行了重要修正<sup>[10]</sup>。该定律指出,在给定的计算预算下,为了达到最优性能,**模型参数量和训练数据量之间存在一个最优配比**。具体来说,最优的模型应该比之前普遍认为的要小,但需要用多得多的数据进行训练。例如,一个 700 亿参数的 Chinchilla 模型,由于使用了比 GPT-3(1750 亿参数)多 4 倍的数据进行训练,其性能反而超越了后者。这一发现纠正了“越大越好”的片面认知,强调了数据效率的重要性,并指导了后续许多高效大模型(如 Llama 系列)的设计。
 
 缩放法则最令人惊奇的产物是“能力的涌现”。所谓能力涌现,是指当模型规模达到一定阈值后,会突然展现出在小规模模型中完全不存在或表现不佳的全新能力。例如,**链式思考 (Chain-of-Thought)** 、**指令遵循 (Instruction Following)** 、多步推理、代码生成等能力,都是在模型参数量达到数百亿甚至千亿级别后才显著出现的。这种现象表明,大语言模型不仅仅是简单地记忆和复述,它们在学习过程中可能形成了某种更深层次的抽象和推理能力。对于智能体开发者而言,能力的涌现意味着选择一个足够大规模的模型,是实现复杂自主决策和规划能力的前提。
 
 ### 3.3.2 模型幻觉
 
-**模型幻觉(Hallucination)**通常指的是大语言模型生成的内容与客观事实、用户输入或上下文信息相矛盾,或者生成了不存在的事实、实体或事件。幻觉的本质是模型在生成过程中,过度自信地“编造”了信息,而非准确地检索或推理。根据其表现形式,幻觉可以被分为多种类型^[11]^,例如:
+**模型幻觉(Hallucination)**通常指的是大语言模型生成的内容与客观事实、用户输入或上下文信息相矛盾,或者生成了不存在的事实、实体或事件。幻觉的本质是模型在生成过程中,过度自信地“编造”了信息,而非准确地检索或推理。根据其表现形式,幻觉可以被分为多种类型<sup>[11]</sup>,例如:
 
 - **事实性幻觉 (Factual Hallucinations)** : 模型生成与现实世界事实不符的信息。
 - **忠实性幻觉 (Faithfulness Hallucinations)** : 在文本摘要、翻译等任务中,生成的内容未能忠实地反映源文本的含义。
@@ -888,14 +888,14 @@ print(response)
 
 幻觉的产生是多方面因素共同作用的结果。首先,训练数据中可能包含错误或矛盾的信息。其次,模型的自回归生成机制决定了它只是在预测下一个最可能的词元,而没有内置的事实核查模块。最后,在面对需要复杂推理的任务时,模型可能会在逻辑链条中出错,从而“编造”出错误的结论。例如:一个旅游规划 Agent,可能会为你推荐一个现实中不存在的景点,或者预订一个航班号错误的机票。
 
-此外,大语言模型还面临着知识时效性不足和训练数据中存在的偏见等挑战。大语言模型的能力来源于其训练数据。这意味着模型所掌握的知识是其训练数据收集时的最新材料。对于在此日期之后发生的事件、新出现的概念或最新的事实,模型将无法感知或正确回答。与此同时训练数据往往包含了人类社会的各种偏见和刻板印象。当模型在这些数据上学习时,它不可避免地会吸收并反映出这些偏见^[12]^
+此外,大语言模型还面临着知识时效性不足和训练数据中存在的偏见等挑战。大语言模型的能力来源于其训练数据。这意味着模型所掌握的知识是其训练数据收集时的最新材料。对于在此日期之后发生的事件、新出现的概念或最新的事实,模型将无法感知或正确回答。与此同时训练数据往往包含了人类社会的各种偏见和刻板印象。当模型在这些数据上学习时,它不可避免地会吸收并反映出这些偏见<sup>[12]</sup>
 
 为了提高大语言模型的可靠性,研究人员和开发者正在积极探索多种检测和缓解幻觉的方法:
 
-1. **数据层面**: 通过高质量数据清洗、引入事实性知识以及强化学习与人类反馈 (RLHF) 等方式^[13]^,从源头减少幻觉。
+1. **数据层面**: 通过高质量数据清洗、引入事实性知识以及强化学习与人类反馈 (RLHF) 等方式<sup>[13]</sup>,从源头减少幻觉。
 2. **模型层面**: 探索新的模型架构,或让模型能够表达其对生成内容的不确定性。
 3. **推理与生成层面**:
-   1. **检索增强生成 (Retrieval-Augmented Generation, RAG)** ^[14]^: 这是目前缓解幻觉的有效方法之一。RAG 系统通过在生成之前从外部知识库(如文档数据库、网页)中检索相关信息,然后将检索到的信息作为上下文,引导模型生成基于事实的回答。
+   1. **检索增强生成 (Retrieval-Augmented Generation, RAG)** <sup>[14]</sup>: 这是目前缓解幻觉的有效方法之一。RAG 系统通过在生成之前从外部知识库(如文档数据库、网页)中检索相关信息,然后将检索到的信息作为上下文,引导模型生成基于事实的回答。
    2. **多步推理与验证**: 引导模型进行多步推理,并在每一步进行自我检查或外部验证。
    3. **引入外部工具**: 允许模型调用外部工具(如搜索引擎、计算器、代码解释器)来获取实时信息或进行精确计算。
 

+ 182 - 0
docs/chapter4/第四章 智能体经典范式构建.md

@@ -1,2 +1,184 @@
 # 第四章 智能体经典范式构建
 
+
+
+## 4.1 为何要亲手“造轮子”?
+
+
+
+
+
+### 4.1.1 手动实现智能体范式的价值
+
+
+
+### 4.1.2 开发环境配置
+
+
+
+
+
+## 4.2 范式一:ReAct (Reason + Act)
+
+
+
+
+
+### 4.2.1 ReAct 的工作流程
+
+
+
+
+
+### 4.2.2 工具的定义与实现
+
+
+
+
+
+#### 4.2.2.1 WebSearchTool 的实现
+
+
+
+
+
+#### 4.2.2.2 CalculatorTool 的实现
+
+
+
+
+
+### 4.2.3 ReAct 智能体的编码实现
+
+
+
+
+
+#### 4.2.3.1 系统提示词设计
+
+
+
+
+
+#### 4.2.3.2 核心循环的实现
+
+
+
+
+
+#### 4.2.3.3 输出解析器的实现
+
+
+
+
+
+#### 4.2.3.4 工具调用与执行
+
+
+
+
+
+#### 4.2.3.5 观测结果的整合
+
+
+
+
+
+### 4.2.4 ReAct 的特点、局限性与调试技巧
+
+
+
+
+
+## 4.3 范式二:Plan-and-Solve
+
+
+
+
+
+### 4.3.1 Plan-and-Solve 的工作原理
+
+
+
+
+
+### 4.3.2 Plan-and-Solve 智能体的编码实现
+
+
+
+
+
+#### 4.3.2.1 规划器 (Planner) 的实现
+
+
+
+
+
+#### 4.3.2.2 执行器 (Executor) 的实现
+
+
+
+
+
+#### 4.3.2.3 状态管理与结果整合
+
+
+
+
+
+### 4.3.3 Plan-and-Solve 的适用场景与范式对比
+
+
+
+
+
+## 4.4 范式三:Reflection
+
+
+
+
+
+### 4.4.1 Reflection 机制的核心思想
+
+
+
+
+
+### 4.4.2 Reflection 智能体的编码实现
+
+
+
+
+
+#### 4.4.2.1 生成器 (Generator) 的实现
+
+
+
+
+
+#### 4.4.2.2 反思器 (Reflector) 的实现
+
+
+
+
+
+#### 4.4.2.3 反思与迭代循环
+
+
+
+
+
+### 4.4.3 Reflection 机制的成本收益分析
+
+
+
+
+
+## 4.5 本章小结
+
+不同 Agent Loop 的选择与应用
+
+
+
+## 参考文献
+