Tsumugii24 пре 9 месеци
родитељ
комит
45644cb684
1 измењених фајлова са 13 додато и 13 уклоњено
  1. 13 13
      docs/chapter1/第一章 初识智能体.md

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

@@ -10,7 +10,7 @@
 
 这个定义包含了智能体存在的四个基本要素。环境是智能体所处的外部世界。对于自动驾驶汽车,环境是动态变化的道路交通;对于一个交易算法,环境则是瞬息万变的金融市场。智能体并非与环境隔离,它通过其传感器持续地感知环境状态。摄像头、麦克风、雷达或各类**应用程序编程接口(Application Programming Interface, API)**返回的数据流,都是其感知能力的延伸。
 
-获取信息后,智能体需要采取行动来对环境施加影响,它通过执行器来改变环境的状态。执行器可以是物理设备(如机械臂、方向盘)或虚拟工具(如执行一段代码、调用一个服务)。
+获取信息后,智能体需要采取行动来对环境施加影响,它通过执行器来改变环境的状态。执行器可以是物理设备(如机械臂、方向盘)或虚拟工具(如执行一段代码、调用一个服务)。
 
 然而,真正赋予智能体“智能”的,是其**自主性(Autonomy)**。智能体并非只是被动响应外部刺激或严格执行预设指令的程序,它能够基于其感知和内部状态进行独立决策,以达成其设计目标。这种从感知到行动的闭环,构成了所有智能体行为的基础,如图1.1所示。
 
@@ -48,7 +48,7 @@
 
 ### 1.1.2 大语言模型驱动的新范式
 
-以**GPT(Generative Pre-trained Transformer)**为代表的大语言模型的出现,正在显著改变智能体的构建方法与能力边界。由大语言模型驱动的智能体,其核心决策机制与传统智能体存在本质区别,从而赋予了其一系列全新的特性。
+以**GPT(Generative Pre-trained Transformer)**为代表的大语言模型的出现,正在显著改变智能体的构建方法与能力边界。由大语言模型驱动的LLM智能体,其核心决策机制与传统智能体存在本质区别,从而赋予了其一系列全新的特性。
 
 这种转变,可以从两者在核心引擎、知识来源、交互方式等多个维度的对比中清晰地看出,如表1.1所示。简而言之,传统智能体的能力源于工程师的显式编程与知识构建,其行为模式是确定且有边界的;而LLM智能体则通过在海量数据上的预训练,获得了隐式的世界模型与强大的涌现能力,使其能够以更灵活、更通用的方式应对复杂任务。
 
@@ -73,7 +73,7 @@
 
 (1)**基于内部决策架构的分类**
 
-第一种分类维度是依据智能体内部决策架构的复杂程度,这个视角在《Artificial Intelligence: A Modern Approach》中系统性地提出[1]。正如 1.1.1 节所述,传统智能体的演进路径本身就构成了最经典的分类阶梯,它涵盖了从简单的**反应式**智能体,到引入内部模型的**模型式**智能体,再到更具前瞻性的**基于目标**和**基于效用**的智能体。此外,**学习能力**则是一种可赋予上述所有类型的元能力,使其能通过经验自我改进。
+第一种分类维度是依据智能体内部决策架构的复杂程度,这个视角在《Artificial Intelligence: A Modern Approach》中系统性地提出^[1]^。正如 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)中提出的双系统理论,为我们理解神经符号主义提供了一个绝佳的类比^[2]^,如图1.4所示:
 
 - **系统1**是快速、凭直觉、并行的思维模式,类似于亚符号主义AI强大的模式识别能力。
 - **系统2**是缓慢、有条理、基于逻辑的审慎思维,恰如符号主义AI的推理过程。
@@ -157,7 +157,7 @@
 
 ### 1.2.1 任务环境的特性
 
-要理解智能体的运作,我们必须先理解它所处的**任务环境**。在人工智能领域,通常使用 **PEAS 模型**来精确描述一个任务环境,即分析其**性能度量 (Performance)、环境 (Environment)、执行器 (Actuators) 和 传感器 (Sensors)**。以一个旅行规划智能体为例,下表1.2展示了如何运用PEAS模型对其任务环境进行规约。
+要理解智能体的运作,我们必须先理解它所处的**任务环境**。在人工智能领域,通常使用**PEAS 模型**来精确描述一个任务环境,即分析其**性能度量 (Performance)、环境 (Environment)、执行器 (Actuators) 和 传感器 (Sensors)**。以一个旅行规划智能体为例,下表1.2展示了如何运用PEAS模型对其任务环境进行规约。
 
 <div align="center">
   <p>表 1.2 旅行规划智能体的PEAS描述</p>
@@ -170,7 +170,7 @@
 
 其次,行动的结果也并非总是确定的。根据结果的可预测性,环境可分为**确定性**和**随机性**。当智能体执行本地代码进行数学计算时,结果是确定的;但当它调用一个实时变化的搜索引擎API时,结果便带有随机性,这就要求智能体必须具备容错和处理不确定性的能力。
 
-此外,环境中还可能存在其他行动者,从而形成**多**智能体** **(Multi-agent)** 环境。在这种情况下,智能体之间需要协作或竞争,一个智能体的行动会成为另一个智能体环境中的变量,这对智能体的沟通和协调能力提出了更高要求。
+此外,环境中还可能存在其他行动者,从而形成**多智能体** **(Multi-agent)** 环境。在这种情况下,智能体之间需要协作或竞争,一个智能体的行动会成为另一个智能体环境中的变量,这对智能体的沟通和协调能力提出了更高要求。
 
 最后,几乎所有任务都发生在**序贯**且**动态**的环境中。“序贯”意味着当前动作会影响未来;而“动态”则意味着环境自身可能在智能体决策时发生变化。这就要求智能体的“感知-思考-行动-观察”循环必须能够快速、灵活地适应持续变化的世界。
 
@@ -201,7 +201,7 @@ Observation: 北京当前天气为晴,气温25摄氏度,微风。
 
 **标准化接口组件定义**
 
-Perception-Thought-Action-Observation循环是通过一套标准化的接口组件来实现的。为确保系统的可扩展性与可维护性,这些接口遵循单一职责原则,分别对应循环中的一个关键环节。下面我们将对这四个核心组件进行定义。
+`Perception-Thought-Action-Observation` 循环是通过一套标准化的接口组件来实现的。为确保系统的可扩展性与可维护性,这些接口遵循单一职责原则,分别对应循环中的一个关键环节。下面我们将对这四个核心组件进行定义。
 
 **接口1:感知器**
 
@@ -312,7 +312,7 @@ class AgentInterface:
         pass
 ```
 
-这些接口定义为后续的具体实现提供了规范。每个接口都有明确的输入输出格式,确保了组件间的解耦和系统的可扩展性。在接下来的1.2.3节中,我们将逐步实现这些接口(分别为PerceptionImpl、ThinkingImpl、ExecutionImpl、ObservationImpl),并最终组装成一个完整的智能体的基本示例。
+这些接口定义为后续的具体实现提供了规范。每个接口都有明确的输入输出格式,确保了组件间的解耦和系统的可扩展性。在接下来的1.2.3节中,我们将逐步实现这些接口(分别为`PerceptionImpl``ThinkingImpl``ExecutionImpl``ObservationImpl`),并最终组装成一个完整的智能体的基本示例。
 
 ### 1.2.3 智能体的行动循环
 
@@ -641,7 +641,7 @@ class BaseLLM:
         raise NotImplementedError("子类必须实现这个方法")
 ```
 
-接下来,我们继承 `BaseLLM` 接口,创建一个具体的、可以和任何兼容OpenAI接口的服务进行通信的客户端。
+接下来,我们继承 `BaseLLM` 接口,创建一个具体的、可以和任何兼容 `OpenAI` 接口的服务进行通信的客户端。
 
 这个类主要负责以下三项任务:
 
@@ -836,8 +836,8 @@ if __name__ == "__main__":
 目前,市场上涌现了多款优秀的AI编程辅助工具,它们虽然均能提升开发效率,但在实现路径和功能侧重上各有千秋:
 
 - **GitHubCopilot**: 作为该领域最具影响力的产品之一,Copilot 由 GitHub 与 OpenAI 联合开发。它深度集成于 Visual Studio Code等主流编辑器中,以其强大的代码自动补全能力而闻名。开发者在编写代码时,Copilot 能实时提供整行甚至整个函数块的建议。近年来,它也通过 Copilot Chat 扩展了对话式编程的能力,允许开发者在编辑器内通过聊天解决编程问题。
-- **Tabnine:** Tabnine 是另一款广受欢迎的代码补全工具。它的一个显著特点是支持在本地环境中运行模型,这对于注重代码隐私和安全的企业来说具有很强的吸引力。Tabnine 同样能够学习特定代码库的模式和风格,从而提供更加个性化和贴合项目规范的代码建议
-- **Codeium**: Codeium 作为一个强劲的竞争者而备受关注,它以惊人的速度和个人免费版迅速获得了大量用户。Codeium 在代码补全速度上表现优异,并且支持广泛的编辑器。除了代码补全,它也提供了对话式的聊天功能,使其成为 GitHub Copilot 的替代品,尤其受到独立开发者和对成本敏感的用户的青睐
+- **Claude Code**: Claude Code 是由 Anthropic 开发的 AI 编程助手,旨在通过自然语言指令帮助开发者在终端中高效地完成编码任务。它能够理解完整的代码库结构,执行代码编辑、测试和调试等操作,支持从描述功能到代码实现的全流程开发。Claude Code 还提供了无交互(headless)模式,适用于 CI、pre-commit hooks、构建脚本和其他自动化场景,为开发者提供了强大的命令行编程体验
+- **Trae**: 作为新兴的 AI 编程工具,Trae 专注于为开发者提供智能化的代码生成和优化服务。它通过深度学习技术分析代码模式,能够为开发者提供精准的代码建议和自动化重构方案。Trae 的特色在于其轻量级的设计和快速响应能力,特别适合需要频繁迭代和快速原型开发的场景
 - **Cursor**: 与上述主要作为插件或集成功能存在的工具不同,Cursor 则选择了一条更具整合性的路径,它本身就是一个AI原生的代码编辑器。它并非在现有编辑器上增加AI功能,而是在设计之初就将AI交互作为核心。除了具备顶级的代码生成和聊天能力外,它更强调让AI理解整个代码库的上下文,从而实现更深层次的问答、重构和调试。
 
 当然还有许多优秀的工具没有例举,为了更具体地展示此类工具如何与开发者进行日常协同,我们将选择 Cursor 作为使用案例。因为它编辑器即智能体的设计理念,能完整地体现AI作为开发者工具的交互模式。下面,我们将通过几个常见的开发场景,展示如何与Cursor这样的工具型智能体进行协作。
@@ -1131,7 +1131,7 @@ Next Action: Generate task instruction for `FrontendDeveloper`.
 
 该规划将高层级目标转化为了结构化的子任务和明确的角色分工。
 
-1. 通信机制
+2. 通信机制
 
 规划完成后,各智能体需通过结构化的通信协议交换信息。`项目经理`依据其规划,生成一条 JSON 格式的消息,用于任务分派:
 
@@ -1150,7 +1150,7 @@ Next Action: Generate task instruction for `FrontendDeveloper`.
 
 JSON作为一种机器可读格式,确保了指令的无歧义性。通信模式可分为直接通信(如API调用)和基于共享内存的间接通信,后者耦合度更低,扩展性更好。
 
-1. 协作策略
+3. 协作策略
 
 协作策略定义了智能体间的工作流与依赖关系。在集中式协调中,存在一个编排者节点,负责任务分发与状态监控。其交互流程如下所示: