智能体¶
在智能体开发套件(Agent Development Kit,ADK)中,智能体是一个独立的执行单元,被设计为自主行动以实现特定目标。智能体可以执行任务、与用户交互、使用外部工具以及与其他智能体协调。
所有 ADK 中智能体的基础是 BaseAgent
类。它作为基本蓝图服务。要创建功能性智能体,你通常需要通过以下三种主要方式之一扩展 BaseAgent
,以满足不同需求——从智能推理到结构化过程控制。
核心智能体类别¶
ADK 提供了不同的智能体类别,用于构建复杂的应用程序:
-
LLM 智能体(
LlmAgent
、Agent
):这些智能体利用大型语言模型(LLMs)作为其核心引擎,用于理解自然语言、推理、规划、生成响应,以及动态决定如何前进或使用哪些工具,使其非常适合灵活的、以语言为中心的任务。了解更多关于 LLM 智能体的信息... -
工作流智能体(
SequentialAgent
、ParallelAgent
、LoopAgent
):这些专业智能体以预定义的确定性模式(顺序、并行或循环)控制其他智能体的执行流程,而不使用 LLM 进行流程控制,非常适合需要可预测执行的结构化过程。探索工作流智能体... -
自定义智能体:通过直接扩展
BaseAgent
创建,这些智能体允许你实现独特的操作逻辑、特定的控制流程或标准类型无法涵盖的专业集成,满足高度定制的应用程序需求。了解如何构建自定义智能体...
选择正确的智能体类型¶
下表提供了一个高级比较,帮助区分不同的智能体类型。随着你在后续章节中深入了解每种类型,这些区别将变得更加清晰。
特性 | LLM 智能体(LlmAgent ) |
工作流智能体 | 自定义智能体(BaseAgent 子类) |
---|---|---|---|
主要功能 | 推理、生成、工具使用 | 控制智能体执行流程 | 实现独特逻辑/集成 |
核心引擎 | 大型语言模型 (LLM) | 预定义逻辑(顺序、并行、循环) | 自定义 Python 代码 |
确定性 | 非确定性(灵活) | 确定性(可预测) | 可以是任一种,取决于实现 |
主要用途 | 语言任务、动态决策 | 结构化流程、编排 | 定制需求、特定工作流程 |
智能体协同工作:多智能体系统¶
虽然每种智能体类型都有其独特的用途,但真正的力量往往来自于它们的组合。复杂的应用程序经常采用多智能体架构,其中:
- LLM 智能体处理智能的、基于语言的任务执行。
- 工作流智能体使用标准模式管理整体流程。
- 自定义智能体提供独特集成所需的专业功能或规则。
理解这些核心类型是构建复杂、强大的 AI 应用程序的第一步。
下一步¶
现在你已经了解了 ADK 中可用的不同智能体类型,深入了解它们如何工作以及如何有效地使用它们: