Skip to content

Commit 237d275

Browse files
authored
Merge pull request #24 from xindoo/improve
update
2 parents 15aba82 + 7c454c3 commit 237d275

3 files changed

Lines changed: 20 additions & 20 deletions

chapters/Appendix C - Quick overview of Agentic Frameworks.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## LangChain
44

5-
LangChain 是一个用于开发由大语言模型驱动的应用程序的框架。其核心优势在于 LangChain 表达式语言(LCEL),它允许你将组件通过"管道"操作符连接成链。这种设计创建了清晰的线性序列,其中每一步的输出自动成为下一步的输入。该框架专为有向无环图(DAG)工作流构建,意味着处理流程单向流动且无循环。
5+
LangChain 是一个用于开发由大语言模型(LLM)驱动的应用程序的框架。其核心优势在于 LangChain 表达式语言(LCEL),它允许您使用管道操作符将组件连接成链。这种设计形成了清晰的线性序列,每一步的输出自动成为下一步的输入。该框架专为有向无环图(DAG)工作流构建,意味着处理流程单向流动且无循环。
66

77
适用场景:
88

@@ -20,7 +20,7 @@ chain = prompt | model | output_parse
2020

2121
### LangGraph
2222

23-
LangGraph 是构建于 LangChain 之上的库,专为处理更高级的 Agentic 系统设计。它允许你将工作流定义为包含节点(函数或 LCEL 链)和边(条件逻辑)的图结构。其主要优势在于支持循环创建,使应用程序能够循环执行、重试操作或以灵活顺序调用工具,直至任务完成。该库显式管理应用程序状态,状态在节点间传递并在整个流程中持续更新。
23+
LangGraph 是构建于 LangChain 之上的库,专为处理更高级的 Agentic 系统设计。它允许您将工作流定义为包含节点(函数或 LCEL 链)和边(条件逻辑)的图结构。其主要优势在于支持循环创建,使应用程序能够循环执行、重试操作或以灵活顺序调用工具,直至任务完成。该库显式管理应用程序状态,状态在节点间传递并在整个流程中持续更新。
2424

2525
适用场景:
2626

@@ -37,8 +37,8 @@ LangGraph 是构建于 LangChain 之上的库,专为处理更高级的 Agentic
3737

3838
### 如何选择?
3939

40-
* 当应用程序具备清晰、可预测的线性步骤流程时,选择 LangChain。若你能定义从 A 到 B 再到 C 的直连过程而无需回环,则采用 LCEL 的 LangChain 是理想工具。
41-
* 当应用程序需进行推理、规划或循环操作时,选择 LangGraph。若你的 Agent 需使用工具、反思结果并可能尝试不同策略,则需借助 LangGraph 的循环和有状态特性。
40+
* 当应用程序具备清晰、可预测的线性步骤流程时,选择 LangChain。若您能定义从 A 到 B 再到 C 的直连过程而无需回环,则采用 LCEL 的 LangChain 是理想工具。
41+
* 当应用程序需进行推理、规划或循环操作时,选择 LangGraph。若您的 Agent 需使用工具、反思结果并可能尝试不同策略,则需借助 LangGraph 的循环和有状态特性。
4242

4343
Python
4444

@@ -107,7 +107,7 @@ print(state["combined_output"])
107107

108108
## Google's ADK
109109

110-
Google 的 Agent 开发工具包(ADK)提供了一个高级、结构化的框架,用于构建和部署由多个交互式 AI Agent 组成的应用程序。与 LangChain 和 LangGraph 相比,它提供了一个更具指导性和生产就绪的系统来编排 Agent 协作,而非提供 Agent 内部逻辑的基础构建块。
110+
Google 的 Agent 开发工具包(ADK)提供了一个高级、结构化的框架,用于构建和部署由多个交互式 AI Agent 组成的应用程序。与 LangChain 和 LangGraph 相比,它提供了一个更偏向指导性和生产就绪的系统,用于编排 Agent 协作,而不是提供 Agent 内部逻辑的基础构建块。
111111

112112
LangChain 在最基础层面运作,提供组件和标准化接口以创建操作序列,例如调用模型并解析其输出。LangGraph 通过引入更灵活强大的控制流对此进行扩展;它将 Agent 工作流视为有状态图。使用 LangGraph,开发者显式定义节点(函数或工具)和边(决定执行路径)。这种图结构支持复杂循环推理,系统可循环执行、重试任务,并基于节点间传递的显式管理状态对象做出决策。它为开发者提供了对单个 Agent 认知过程的细粒度控制,或从第一性原理构建多 Agent 系统的能力。
113113

chapters/Appendix D - Building an Agent with AgentSpace (on-line only).md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22

33
## 概述
44

5-
AgentSpace 是一个旨在通过将人工智能融入日常工作流程来推动"Agent 驱动型企业"发展的平台。其核心能力在于为组织的整个数字足迹(涵盖文档、电子邮件和数据库)提供统一搜索功能。该系统借助先进的 AI 模型(如 Google 的 Gemini)来理解并整合来自这些多样化来源的信息。
5+
AgentSpace 是一个旨在通过将人工智能融入日常工作流程来推动"Agent 驱动型企业"发展的平台。其核心能力在于为组织的整个数字足迹(包括文档、电子邮件和数据库)提供统一的搜索功能。该系统借助先进的 AI 模型(如 Google 的 Gemini)来理解并整合来自这些多样化来源的信息。
66

7-
该平台支持创建和部署专业化的 AI "Agent",这些 Agent 能够执行复杂任务并实现流程自动化。它们不仅是聊天机器人,更具备自主推理、规划和执行多步骤操作的能力。例如,一个 Agent 可研究特定主题,编纂带引用的报告,甚至生成音频摘要。
7+
该平台支持创建和部署专业化的 AI "Agent",这些 Agent 能够执行复杂任务并实现流程自动化。它们不仅是聊天机器人,更具备自主推理、规划和执行多步骤操作的能力。例如,一个 Agent 可以研究特定主题,编纂带引用的报告,甚至生成音频摘要。
88

9-
为实现此目标,AgentSpace 构建了企业知识图谱,映射人员、文档和数据间的关联关系。这使得 AI 能理解上下文,提供更相关且个性化的结果。平台还包含名为 Agent Designer 的无代码界面,无需深厚技术专长即可创建自定义 Agent。
9+
为实现此目标,AgentSpace 构建了企业知识图谱,映射人员、文档和数据之间的关联关系。这使得 AI 能够理解上下文,提供更相关且个性化的结果。平台还包含名为 Agent Designer 的无代码界面,无需深厚技术专长即可创建自定义 Agent。
1010

11-
此外,AgentSpace 支持多 Agent 系统,不同 AI Agent 可通过称为 Agent2Agent(A2A)协议的开放协议进行通信与协作。这种互操作性支持更复杂、协调的工作流。安全性是基础架构的重要组成部分,具备基于角色的访问控制和数据加密等功能,以保护企业敏感信息。最终,AgentSpace 致力于通过将智能自主系统直接嵌入组织运营架构,提升生产力与决策水平。
11+
此外,AgentSpace 支持多 Agent 系统,不同的 AI Agent 可以通过称为 Agent2Agent(A2A)协议的开放协议进行通信与协作。这种互操作性支持更复杂、协调的工作流。安全性是基础架构的重要组成部分,具备基于角色的访问控制和数据加密等功能,以保护企业敏感信息。最终,AgentSpace 致力于通过将智能自主系统直接嵌入组织运营架构,提升生产力与决策水平。
1212

1313
## 如何使用 AgentSpace UI 构建 Agent
1414

@@ -17,17 +17,17 @@ AgentSpace 是一个旨在通过将人工智能融入日常工作流程来推动
1717
![][image1]
1818
图 1:通过 Google Cloud Console 访问 AgentSpace 的方法
1919

20-
你的 Agent 可连接至多种服务,包括 Calendar、Google Mail、Workaday、Jira、Outlook 和 Service Now(见图 2)。
20+
您的 Agent 可以连接到多种服务,包括 Calendar、Google Mail、Workaday、Jira、Outlook 和 Service Now(见图 2)。
2121

2222
![][image2]
2323
图 2:与 Google 及第三方平台等多样化服务集成
2424

25-
随后,Agent 可使用自有提示词,从 Google 提供的预制提示词库中选取,如图 3 所示。
25+
随后,Agent 可以使用自有的提示词,也可以从 Google 提供的预制提示词库中选取,如图 3 所示。
2626

2727
![][image3]
2828
图 3:Google 预置提示词库
2929

30-
或者,你可自定义提示词,如图 4 所示,供你的 Agent 使用。
30+
或者,您可以自定义提示词,如图 4 所示,供您的 Agent 使用。
3131
![][image4]
3232
图 4:Agent 提示词定制
3333

chapters/Appendix E - AI Agents on the CLI.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@
44

55
开发者的命令行界面,长期以来作为精确命令式指令的堡垒,正经历一场深刻变革。它正从简单的 shell 演变为由新型工具驱动的智能协作工作空间:AI Agent 命令行界面(CLI)。这些 Agent 不仅限于执行命令;它们能理解自然语言,维护整个代码库的上下文,并可执行复杂的多步骤任务,自动化开发生命周期的关键环节。
66

7-
本指南深入剖析这一新兴领域的四位主要参与者,探索其独特优势、适用场景及设计理念,助你甄选最适合工作流程的工具。需注意的是,针对特定工具列出的许多用例示例,通常也可由其他 Agent 完成。这些工具的核心差异往往体现在它们为给定任务所达成结果的质量、效率与精细度上。后续章节将讨论专门设计用于衡量这些能力的基准测试。
7+
本指南深入剖析这一新兴领域的四位主要参与者,探索其独特优势、适用场景及设计理念,助您甄选最适合工作流程的工具。需注意的是,针对特定工具列出的许多用例示例,通常也可由其他 Agent 完成。这些工具的核心差异往往体现在它们为给定任务所达成结果的质量、效率与精细度上。后续章节将讨论专门设计用于衡量这些能力的基准测试。
88

99
## Claude CLI (Claude Code)
1010

1111
Anthropic 的 Claude CLI 被设计为一款具备项目架构深度全局认知的高级编码 Agent。其核心优势在于其"agentic"特性,能为复杂多步骤任务构建代码库的心智模型。交互过程高度对话化,类似结对编程会话,它在执行前会阐述其计划。这使其成为从事涉及重大重构或具有广泛架构影响功能实现的大型项目的专业开发者的理想选择。
1212

1313
**示例用例:**
1414

15-
1. **大规模重构:** 你可指示:"我们当前的用户认证依赖会话 cookie。请重构整个代码库以采用无状态 JWT,更新登录/登出端点、中间件及前端令牌处理逻辑。"Claude 将读取所有相关文件并执行协调一致的更改。
16-
2. **API 集成:** 在提供新天气服务的 OpenAPI 规范后,你可指令:"集成此新天气 API。创建服务模块处理 API 调用,新增组件展示天气信息,并更新主仪表板以包含该组件。"
17-
3. **文档生成:** 指向文档匮乏的复杂模块,你可要求:"分析 ./src/utils/data\_processing.js 文件。为每个函数生成全面的 TSDoc 注释,阐明其用途、参数及返回值。"
15+
1. **大规模重构:** 您可以指示:"我们当前的用户认证依赖会话 cookie。请重构整个代码库以采用无状态 JWT,更新登录/登出端点、中间件及前端令牌处理逻辑。"Claude 将读取所有相关文件并执行协调一致的更改。
16+
2. **API 集成:** 在提供新天气服务的 OpenAPI 规范后,您可以指令:"集成此新天气 API。创建服务模块处理 API 调用,新增组件展示天气信息,并更新主仪表板以包含该组件。"
17+
3. **文档生成:** 指向文档匮乏的复杂模块,您可以要求:"分析 ./src/utils/data\_processing.js 文件。为每个函数生成全面的 TSDoc 注释,阐明其用途、参数及返回值。"
1818

1919
Claude CLI 作为专业化编码助手,内置了核心开发任务工具,包括文件摄取、代码结构分析与编辑生成。其与 Git 的深度集成支持直接分支与提交管理。Agent 的可扩展性通过多工具控制协议(MCP)实现,允许用户定义并集成自定义工具。这使其能与私有 API 交互、执行数据库查询及运行项目特定脚本。此架构将开发者定位为 Agent 功能范畴的决策者,实质上将 Claude 塑造为由用户定义工具增强的推理引擎。
2020

@@ -24,8 +24,8 @@ Google 的 Gemini CLI 是一款多功能开源 AI Agent,专为强大性能与
2424

2525
**示例用例:**
2626

27-
1. **多模态开发:** 你提供设计稿中的 Web 组件截图(gemini describe component.png)并指示:"编写 HTML 和 CSS 代码,构建外观与此完全一致的 React 组件。确保具备响应式设计。"
28-
2. **云资源管理:** 利用其内置 Google Cloud 集成,你可命令:"查找生产项目中所有运行版本低于 1.28 的 GKE 集群,并生成逐个升级这些集群的 gcloud 命令。"
27+
1. **多模态开发:** 您提供设计稿中的 Web 组件截图(gemini describe component.png)并指示:"编写 HTML 和 CSS 代码,构建外观与此完全一致的 React 组件。确保具备响应式设计。"
28+
2. **云资源管理:** 利用其内置 Google Cloud 集成,您可以命令:"查找生产项目中所有运行版本低于 1.28 的 GKE 集群,并生成逐个升级这些集群的 gcloud 命令。"
2929
3. **企业工具集成(通过 MCP):** 开发者为 Gemini 配置名为 get-employee-details 的自定义工具,该工具连接公司内部 HR API。提示词为:"为新员工起草欢迎文档。首先使用 get-employee-details \--id=E90210 工具获取其姓名与团队信息,随后用该信息填充 welcome\_template.md。"
3030
4. **大规模重构:** 开发者需重构大型 Java 代码库,以新型结构化日志框架替换已弃用的日志库。他们可对 Gemini 使用如下提示:读取 'src/main/java' 目录下所有 \*.java 文件。针对每个文件,将 'org.apache.log4j' 导入及其 'Logger' 类实例替换为 'org.slf4j.Logger' 与 'LoggerFactory'。重写日志记录器实例化及所有 .info()、.debug() 和 .error() 调用,采用带键值对的新结构化格式。
3131

@@ -38,8 +38,8 @@ Aider 是一款开源 AI 编码助手,通过直接操作文件并将变更提
3838
**示例用例:**
3939

4040
1. **测试驱动开发(TDD):** 开发者可指令:"为计算数字阶乘的函数创建失败测试。"Aider 编写测试并确认失败后,后续提示为:"现在编写代码使测试通过。"Aider 实现函数后再次运行测试以验证。
41-
2. **精准 Bug 修复:** 给定 bug 报告,你可指示 Aider:"billing.py 中的 calculate\_total 函数在闰年计算失败。将文件添加上下文,修复此 bug,并依据现有测试套件验证修复。"
42-
3. **依赖项更新:** 你可指令:"我们项目使用的 'requests' 库版本过时。请检查所有 Python 文件,更新导入语句及任何已弃用的函数调用以兼容最新版本,随后更新 requirements.txt。"
41+
2. **精准 Bug 修复:** 给定 bug 报告,您可以指示 Aider:"billing.py 中的 calculate\_total 函数在闰年计算失败。将文件添加上下文,修复此 bug,并依据现有测试套件验证修复。"
42+
3. **依赖项更新:** 您可以指令:"我们项目使用的 'requests' 库版本过时。请检查所有 Python 文件,更新导入语句及任何已弃用的函数调用以兼容最新版本,随后更新 requirements.txt。"
4343

4444
## GitHub Copilot CLI
4545

0 commit comments

Comments
 (0)