Explorar o código

Merge pull request #14 from jjyaoao/main

Adjusted the table of contents format
jjyaoao hai 9 meses
pai
achega
e9c3d351ac
Modificáronse 2 ficheiros con 7 adicións e 9 borrados
  1. 6 8
      docs/chapter6/第六章 框架开发实践.md
  2. 1 1
      docs/index.html

+ 6 - 8
docs/chapter6/第六章 框架开发实践.md

@@ -34,6 +34,8 @@
   <p>表 6.1 四种智能体框架对比</p>
   <img src="https://raw.githubusercontent.com/datawhalechina/Hello-Agents/main/docs/images/6-figures/01.png" alt="" width="90%"/>
 </div>
+
+
 - <strong>AutoGen</strong>:AutoGen 的核心思想是通过对话实现协作<sup>[1]</sup>。它将多智能体系统抽象为一个由多个“可对话”智能体组成的群聊。开发者可以定义不同角色(如 `Coder`, `ProductManager`, `Tester`),并设定它们之间的交互规则(例如,`Coder` 写完代码后由 `Tester` 自动接管)。任务的解决过程,就是这些智能体在群聊中通过自动化消息传递,不断对话、协作、迭代直至最终目标达成的过程。
 - <strong>AgentScope</strong>:AgentScope 是一个专为多智能体应用设计的、功能全面的开发平台<sup>[2]</sup>。它的核心特点是<strong>易用性</strong>和<strong>工程化</strong>。它提供了一套非常友好的编程接口,让开发者可以轻松定义智能体、构建通信网络,并管理整个应用的生命周期。其内置的<strong>消息传递机制</strong>和对分布式部署的支持,使其非常适合构建和运维复杂、大规模的多智能体系统。
 - <strong>CAMEL</strong>:CAMEL 提供了一种新颖的、名为<strong>角色扮演 (Role-Playing)</strong> 的协作方法<sup>[3]</sup>。其核心理念是,我们只需要为两个智能体(例如,`AI研究员` 和 `Python程序员`)设定好各自的角色和共同的任务目标,它们就能在“<strong>初始提示 (Inception Prompting)</strong>”的引导下,自主地进行多轮对话,相互启发、相互配合,共同完成任务。它极大地降低了设计多智能体对话流程的复杂度。
@@ -1230,19 +1232,15 @@ def create_search_assistant():
 
 (1)优势
 
-如我们的智能搜索助手案例所示,LangGraph 将一个完整的实时问答流程,显式地定义为一个由状态、节点和边构成的“流程图”。这种设计的最大优势是<strong>高度的可控性与可预测性</strong>。开发者可以精确地规划智能体的每一步行为,这对于构建需要高可靠性和可审计性的生产级应用至关重要。
+- 如我们的智能搜索助手案例所示,LangGraph 将一个完整的实时问答流程,显式地定义为一个由状态、节点和边构成的“流程图”。这种设计的最大优势是<strong>高度的可控性与可预测性</strong>。开发者可以精确地规划智能体的每一步行为,这对于构建需要高可靠性和可审计性的生产级应用至关重要。其最强大的特性在于对<strong>循环(Cycles)的原生支持</strong>。通过条件边,我们可以轻松构建“反思-修正”循环,例如在我们的案例中,如果搜索失败,可以设计一个回退到备用方案的路径。这是构建能够自我优化和具备容错能力的智能体的关键。
 
-其最强大的特性在于对<strong>循环(Cycles)的原生支持</strong>。通过条件边,我们可以轻松构建“反思-修正”循环,例如在我们的案例中,如果搜索失败,可以设计一个回退到备用方案的路径。这是构建能够自我优化和具备容错能力的智能体的关键。
-
-此外,由于每个节点都是一个独立的 Python 函数,这带来了<strong>高度的模块化</strong>。同时,在流程中插入一个等待人类审核的节点也变得非常直接,为实现可靠的“人机协作”(Human-in-the-loop)提供了坚实的基础。
+- 此外,由于每个节点都是一个独立的 Python 函数,这带来了<strong>高度的模块化</strong>。同时,在流程中插入一个等待人类审核的节点也变得非常直接,为实现可靠的“人机协作”(Human-in-the-loop)提供了坚实的基础。
 
 (2)局限性
 
-与基于对话的框架相比,LangGraph 需要开发者编写更多的<strong>前期代码(Boilerplate)</strong>。定义状态、节点、边等一系列操作,使得对于简单任务而言,开发过程显得更为繁琐。开发者需要更多地思考“如何控制流程(how)”,而不仅仅是“做什么(what)”。
-
-由于工作流是预先定义的,LangGraph 的行为虽然可控,但也缺少了对话式智能体那种动态的、<strong>“涌现”式的交互</strong>。它的强项在于执行一个确定的、可靠的流程,而非模拟开放式的、不可预测的社会性协作。
+- 与基于对话的框架相比,LangGraph 需要开发者编写更多的<strong>前期代码(Boilerplate)</strong>。定义状态、节点、边等一系列操作,使得对于简单任务而言,开发过程显得更为繁琐。开发者需要更多地思考“如何控制流程(how)”,而不仅仅是“做什么(what)”。由于工作流是预先定义的,LangGraph 的行为虽然可控,但也缺少了对话式智能体那种动态的、<strong>“涌现”式的交互</strong>。它的强项在于执行一个确定的、可靠的流程,而非模拟开放式的、不可预测的社会性协作。
 
-调试过程同样存在挑战。虽然流程比对话历史更清晰,但问题可能出在多个环节:某个节点内部的逻辑错误、在节点间传递的状态数据发生异变,或是边跳转的条件判断失误。这要求开发者对整个图的运行机制有全局性的理解。
+- 调试过程同样存在挑战。虽然流程比对话历史更清晰,但问题可能出在多个环节:某个节点内部的逻辑错误、在节点间传递的状态数据发生异变,或是边跳转的条件判断失误。这要求开发者对整个图的运行机制有全局性的理解。
 
 ## 6.6 本章小结
 

+ 1 - 1
docs/index.html

@@ -20,7 +20,7 @@
             repo: 'https://github.com/datawhalechina/Hello-Agents',
             loadSidebar: true,
             auto2top: true,
-            subMaxLevel: 2,
+            subMaxLevel: 3,
             relativePath: false,  // 启用相对路径支持
             alias: {
                 '/.*/_sidebar.md': '/_sidebar.md'