> ## Documentation Index
> Fetch the complete documentation index at: https://dify-6c0370d8-docs-new-agent-experience.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent

> 本文档由 AI 自动翻译。如有任何不准确之处，请参考 [英文原版](/en/cloud/use-dify/nodes/agent)。

Agent 节点让你的大型语言模型自主控制工具，使其能够迭代决定使用哪些工具以及何时使用它们。Agent 不是预先规划每一步，而是动态地推理问题，根据需要调用工具来完成复杂任务。

<Frame caption="Agent节点配置界面">
  ![Agent 节点配置界面](https://assets-docs.dify.ai/dify-enterprise-mintlify/en/guides/workflow/node/1f4d803ff68394d507abd3bcc13ba0f3.png)
</Frame>

## Agent 策略

Agent 策略定义了你的 Agent 如何思考和行动。选择最适合你的模型能力和任务需求的方法。

<Frame caption="可用的Agent策略选项">
  ![可用的 Agent 策略选项](https://assets-docs.dify.ai/dify-enterprise-mintlify/en/guides/workflow/node/f14082c44462ac03955e41d66ffd4cca.png)
</Frame>

<Tabs>
  <Tab title="函数调用">
    使用大型语言模型的原生函数调用能力，通过工具参数直接传递工具定义。大型语言模型使用其内置机制决定何时以及如何调用工具。

    最适合像 GPT-4、Claude 3.5 和其他具有强大函数调用支持的模型。
  </Tab>

  <Tab title="推理与行动 (ReAct)">
    使用结构化提示词来引导大型语言模型通过明确的推理步骤。遵循 **思维 → 行动 → 观察** 循环进行透明的决策制定。

    适用于可能没有原生函数调用能力的模型，或者当你需要明确推理轨迹时。
  </Tab>
</Tabs>

<Info>
  从 **市场 → Agent 策略** 安装其他策略，或向 [社区仓库](https://github.com/langgenius/dify-plugins) 贡献自定义策略。
</Info>

<Frame caption="函数调用策略配置">
  ![函数调用策略配置](https://assets-docs.dify.ai/dify-enterprise-mintlify/en/guides/workflow/node/10505cd7c6f0b3ba10161abb88d9e36b.png)
</Frame>

## 配置

### 模型选择

选择支持你所选 Agent 策略的大型语言模型。更强大的模型能更好地处理复杂推理，但每次迭代成本更高。如果使用函数调用策略，请确保你的模型支持函数调用。

### 工具配置

配置你的 Agent 可以访问的工具。每个工具需要：

**授权** - 在工作空间中配置的外部服务的 API 密钥和凭据

**描述** - 清楚说明工具的作用以及何时使用它（这指导 Agent 的决策制定）

**参数** - 工具接受的必需和可选输入，带有适当的验证

### 指令和上下文

使用自然语言指令定义 Agent 的角色、目标和上下文。使用 Jinja2 语法引用上游工作流节点的变量。

**查询** 指定 Agent 应该处理的用户输入或任务。这可以是来自先前工作流节点的动态内容。

<Frame caption="Agent配置参数">
  ![Agent 配置参数](https://assets-docs.dify.ai/dify-enterprise-mintlify/en/guides/workflow/node/54c8e4f0eaa7379bd8c1b5ac6305b326.png)
</Frame>

### 执行控制

**最大迭代次数** 设置安全限制以防止无限循环。根据任务复杂性进行配置 - 简单任务需要 3-5 次迭代，而复杂研究可能需要 10-15 次。

**记忆** 控制 Agent 使用 TokenBufferMemory 记提供更多上下文，但会增加标记成本。这使得对话连续性成为可能，用户可以引用以前的行动。

### 工具参数自动生成

工具可以将参数配置为 **自动生成** 或 **手动输入**。自动生成的参数（`auto: false`）由 Agent 自动填充，而手动输入参数需要明确的值，这些值成为工具永久配置的一部分。

<video controls src="https://assets-docs.dify.ai/2025/04/1801b96763eb8f22f1e2158645897885.mp4" width="100%" />

## 输出变量

Agent 节点提供全面的输出，包括：

**最终答案** - Agent 对查询的最终响应

**工具输出** - 执行期间每次工具调用的结果

**推理轨迹** - 逐步决策过程（推理与行动策略特别详细）在 JSON 输出中可用

**迭代计数** - 使用的推理循环次数

**成功状态** - Agent 是否成功完成任务

**Agent 日志** - 带有元数据的结构化日志事件，用于调试和监控工具调用

## 用例

**研究与分析** - Agent 可以自主搜索多个来源，综合信息，并提供全面的答案。

**故障排除** - 诊断任务，Agent 需要收集信息、测试假设，并根据发现调整其方法。

**多步数据处理** - 复杂的工作流，其中下一个行动取决于中间结果。

**动态 API 集成** - API 调用序列取决于无法预先确定的响应和条件的场景。

## 最佳实践

**清晰的工具描述** 帮助 Agent 了解何时以及如何有效使用每个工具。

**适当的迭代限制** 防止失控成本，同时为复杂任务提供足够的灵活性。

**详细的指令** 提供关于 Agent 角色、目标以及任何约束或偏好的上下文。

**记忆管理** 根据你的用例要求平衡上下文保留与标记效率。
