> ## Content Index
> Fetch the complete content index at: https://www.hubwiz.com/blog/llms.txt
> Use this file to discover other available public pages before exploring further.

# AI智能体的五大设计模式
- URL: https://www.hubwiz.com/blog/5-design-patterns-for-ai-agents/
- Published: 2026-06-05T04:22:53.000Z
- Updated: 2026-06-05T04:22:53.000Z
- Description: 现代AI智能体背后的核心架构：反思、工具、规划、多智能体系统和人机协同
- Author: admin
- Tags: AGENT, #Import 2026-10-14 14:41

大语言模型（LLM）是通用的AI系统，能够处理种类繁多的任务。只要给出合适的提示词，LLM就能编写代码、回答复杂问题、总结长篇文档以及生成创意内容。

然而，LLM本质上是反应式的。它们响应提示词，但缺乏实现复杂长期目标的能力。这就是Agentic AI的用武之地。

AI智能体通过巧妙的系统设计，利用LLM主动实现既定目标。本文将探讨五种基本的设计模式，它们将LLM转变为能够自主推理、规划、采取行动并适应环境的AI智能体。

## 1、什么是AI智能体？

AI智能体是一种为实现特定目标而设计的软件系统。与遵循固定脚本的基于规则的自动化软件不同，AI智能体将LLM的强大功能与额外能力相结合，以更独立地处理复杂的多步骤问题。你可以将AI智能体视为一个目标导向的系统，它决定下一步做什么、采取行动，并在过程中不断调整。

![None](https://www.hubwiz.com/blog/content/images/2026/06/1-m1lcSr_FRExx_woVenmpFg.png)

我们使用"agentic"这个词，是因为这些系统可以在不同程度上自主运行。与其将"智能体"视为一个非黑即白的分类，不如将agenticness看作一个连续谱系，这样更有帮助。

> *Agenticness定义："系统在有限直接监督下，在复杂环境中适应性地实现复杂目标的程度" \[2\]*

有些系统只是轻度agentic，需要大量的人工输入和控制。另一些则是高度agentic的，能够管理多步骤任务，并在很少或无需人工监督的情况下做出决策。

## 2、反思：AI智能体如何自我批评和改进回答

反思模式将一个LLM的输出传递给另一个LLM（通常称为"批评者"）进行审查。批评者可以是同一个LLM模型，也可以是不同的模型。基于审查结果，批评者提供反馈以帮助改进原始回答。

原始LLM随后可以利用这些反馈来修改其回答。这种审查和改进的过程可以自动重复多次，以精炼结果。

![None](https://www.hubwiz.com/blog/content/images/2026/06/1-hwlaDR5mO7fMMAQrOP_FCw.png)

研究表明，与没有反馈的单步生成相比，反思能够更稳定地提升任务表现 \[3\]。通过审查和修改自身输出，模型可以更有效地识别错误、更精确地遵循指令，并产生更高质量的回答，尤其对于复杂任务而言。

#### 利用外部反馈改进LLM输出

当我们能够提供外部反馈时，反思尤其有效。外部反馈是指模型自身无法推断出的信息。例如，假设你使用LLM来生成代码。与其接受第一个结果，不如：

- 运行生成的代码。
- 捕获任何错误信息或测试失败。
- 将这些信息反馈给LLM，让它重试，这次避免之前的错误。

将执行结果等真实世界的反馈纳入循环，使AI更加可靠和实用。

## 3、工具使用：通过外部系统扩展LLM能力

LLM功能强大，但有一个主要局限。它们只能"知道"训练数据中包含的内容。它们无法访问实时信息，也无法自行执行计算或网络搜索等操作。

工具（也称为函数）解决了这个问题。它们通过将LLM连接到可以执行模型自身无法完成的外部系统，来扩展LLM的能力。

以下是AI智能体常用的一些工具：

- **Web Search**：用于在线查找最新信息。
- **Code Execution**：例如，运行Python代码片段来分析数据。
- **RAG**：在向量数据库中搜索文档或对话历史。
- **Database**：例如，与SQL数据库交互。
- **File System**：用于浏览文件夹以及读取或写入文档。

LLM并不直接执行这些工具。相反，我们预先定义一组工具，并向LLM提供每个工具的功能和使用方法信息。每个工具都通过其模式（schema）来定义，包括工具的名称、描述和参数。当LLM判断某个工具可以帮助回答问题或完成任务时，它会生成一个符合工具规范的结构化请求。

agentic软件应用接收该请求，运行工具，并将结果作为对话的一部分返回给LLM。然后模型可以利用新信息生成回答。

![None](https://www.hubwiz.com/blog/content/images/2026/06/1-ofTRGaWeN_bPKnf7zjUCbA.png)

与其默认让LLM访问所有工具，不如根据特定目标限制可用工具的数量。这有助于降低复杂性，避免错误或不必要的工具使用。

在所有工具中，代码执行尤其高效。与其为每种任务类型创建单独的工具，不如赋予AI智能体编写和运行代码的能力，使其能够灵活解决各种问题。例如，如果可以使用代码执行，就不需要单独的计算器工具，因为模型可以简单地编写一个短程序来完成计算。

然而，允许AI运行代码也存在风险。自动执行AI生成的代码可能会产生意外的副作用。因此，在受控的、隔离的沙箱环境中运行代码执行非常重要。

工具的特殊之处在于LLM在使用它们时的决策能力。这赋予了AI智能体更高程度的自主性。例如，它可以选择仅在需要进行精确数学计算时使用计算器，或仅在无法回答问题时才搜索网络。

要有效使用工具，重要的是使用专门为工具使用训练的LLM \[4\]。这些模型经过微调，能够在结构化聊天格式中正确遵循工具规范。这种训练使它们能够识别工具有用的场景，并生成符合工具模式的请求。

## 4、MCP：连接LLM与工具的标准

工具极大地扩展了LLM的能力。模型上下文协议（MCP）是一个开放标准，定义了LLM如何连接到外部系统。如今，有许多符合MCP标准的工具可以集成到agentic AI系统中。例如，开源工具允许LLM与GitHub、Google Maps、Slack、SQL数据库、本地文件系统交互，甚至只是获取当前时间。

使用MCP的AI应用称为MCP主机。它可以访问由MCP服务器提供的工具，MCP服务器与MCP客户端通信。这种设置建立了一对一的连接：客户端发送请求，服务器返回工具和数据。MCP服务器可以在你的设备上本地运行，也可以在云端远程运行。

![None](https://www.hubwiz.com/blog/content/images/2026/06/0-pyzISpEgZ9NVoymo.png)

MCP服务器向LLM暴露三种主要类型的组件：

- **Tools**：这些是LLM可以调用的主动功能。
- **Resources**：这些提供对有用信息的只读访问。示例包括文档内容、数据库模式或帮助模型理解其环境的API文档。
- **Prompts**：这些是可复用的预定义提示词模板，LLM可以使用它们来产生一致且有效的输出。

在agentic AI系统中，MCP为LLM提供了一种通过与外部系统交互来访问真实世界数据的标准化方法。这使得AI应用在实践中更加强大和实用。

## 5、Agent Skills：引导LLM行为的可复用指令

Agent skills是扩展LLM能力的另一种方式。一个skill通常位于其自己的本地文件夹中，并包含一个名为`SKILL.md`的文件。这个纯文本文件提供了结构化的指令，教导智能体特定于公司、领域或任务的行为。

skill文件必须包含以下三个要素：

1. skill的**名称**
2. skill功能的简短**描述**以及何时使用它
3. skill的**内容**，包含智能体应遵循的实际指令、规则、示例或模板

在根据给定任务选择skill后，智能体在生成回答之前将相应的内容读入其上下文窗口。

例如，假设你在工作中使用agentic软件来帮助完成各种任务，包括撰写电子邮件。你的公司可能有特定的电子邮件模板和写作风格，员工需要遵循。与其每次都重复这些规则，不如将它们存储在skill文件中。

当智能体被要求撰写电子邮件时，它可以识别到存在相关的skill，从该skill中读取指令，然后按照你公司的标准撰写电子邮件。

在这个例子中，文件`write-emails/SKILL.md`可能如下所示：

```
---
name: write-emails
description: Company email standards.
---
# How to Write Emails
## Writing Style
Always be extra friendly.

## Required Email Footer
MyCompany
www.mycompany.example

```

虽然skills与工具相关，但它们服务于不同的目的。工具是执行操作的外部软件程序，例如查询数据库并返回结果。另一方面，skills是按需加载的可复用指令，用于引导LLM的行为。工具和skills可以一起使用。

关于MCP与Skills与AGENTS.md的更详细比较，我推荐我的另一篇关于这个特定主题的文章：

[**The Agentic AI Toolkit: MCP vs. Agent Skills vs. AGENTS.md**](https://ai.gopubby.com/mcp-vs-agent-skills-vs-agents-md-2b558f225b75?ref=hubwiz.com)*Learn how these new standards for AI agent connectivity and behavior work and when to use each one*

## 6、规划：AI智能体如何分解复杂任务

在解决复杂问题时，人们通常不会试图一次性完成所有事情。相反，他们会将问题分解为更小的步骤。这正是agentic AI中规划的核心所在。与其给出单一指令并期待最好的结果，不如让AI提前思考。需要采取哪些步骤？按什么顺序？以及如何执行？

规划设计模式首先提示LLM为特定任务生成一个计划。这个计划通常是AI智能体将要遵循的一系列步骤。计划准备好后，智能体逐步执行每个步骤。在每个阶段，LLM都会收到当前步骤以及之前步骤的任何结果，以便它能够适当地响应并根据需要调整。

如果计划中的某些步骤彼此独立，它们可以并行执行。在最后合并这些步骤的结果，可以显著加快整体进程。

![None](https://www.hubwiz.com/blog/content/images/2026/06/1-q-NfG-EnXx8OviICKEK8OA.png)

为了使计划简洁且易于人类和机器理解，AI智能体的计划通常以JSON格式编写。与纯文本不同，JSON具有清晰的结构，使其更易于解析和可靠地执行每个步骤。每个步骤通常包括任务描述，以及必要时关于使用哪个工具的信息。

以下是一个AI智能体可能创建的、关于给定主题撰写博客文章的简单三步计划示例：

- **Step 1**：使用"Web Search"工具进行研究
- **Step 2**：根据研究结果撰写大纲。
- **Step 3**：使用大纲和研究笔记撰写文章。

然而，并非所有复杂任务都需要详细的计划。例如，在分析数据集时，让LLM直接编写和运行代码可能更有效率。

编程语言通过支持循环来重复任务、变量来存储结果、函数来组织复杂行为，提供了一种强大的结构化逻辑的方式。在这些情况下，代码本身就成了逐行执行的计划 \[6\]。

## 7、多智能体：多个AI智能体如何协作解决复杂任务

在第四种设计模式中，我们使用多个AI智能体构建系统，每个智能体都有特定的角色或专业领域。类似于公司内部人们如何协作，这些智能体通过将大任务分解为更小、更易管理的部分来协同工作。

想想一个典型的工作场所，不同的专业人员处理不同的职责。例如，在软件开发团队中，一个人可能编写代码，另一个人可能进行测试，第三个人可能负责部署。多智能体AI系统的运作方式类似。每个智能体被分配一个特定的角色，并可以访问为该角色量身定制的工具。

#### 多智能体AI系统中的通信模式

多智能体系统中有多种可能的通信模式。以下两种方法通常被使用：

1. **Sequential Chat**：智能体按预定义的顺序工作。每个智能体完成其任务后，将结果传递给队列中的下一个智能体。
2. **Hierarchical Chat**：一个管理智能体监督其他智能体，并根据情况动态分配任务。

![None](https://www.hubwiz.com/blog/content/images/2026/06/1-ADTk1rW5Jo2I4JoF5FpvTA.png)

要使这种设计模式有效工作，每个智能体都应该有一个狭窄、定义明确的角色。与其创建一个通用的"软件开发人员"智能体，不如定义专门的智能体，例如"Python后端开发人员"、"高级DevOps工程师"和"质量保证工程师"。然后可以给这些智能体提供系统提示词，以引导它们的行为和关注的任务。

这些智能体可以使用相同的LLM，也可以使用不同的LLM。例如，管理智能体可以使用通用的推理LLM，而开发人员智能体可以使用为编码任务专门微调过的LLM。

对于软件开发等非常复杂的多步骤任务，多智能体应用已被证明优于单智能体应用 \[7\]。然而，它们高度的自主性可能导致不可预测的结果，以及难以调试的系统。

## 8、Human-In-The-Loop：为智能体添加人工监督

尽管AI智能体可以在很大程度上自主运行，但让它们完全独立运行并不总是理想的。在许多现实情况中，人类的判断、监督和领域知识仍然是必要的。Human-in-the-loop（HITL）是一种agentic设计模式，它在工作流的关键时刻有意地将人工输入整合进来。

考虑这个简单的例子：你使用一个购物智能体来协助你在线购买商品。你会把信用卡交给智能体，让它在不与你确认的情况下进行购买吗？可能不会。在完成交易之前，你会希望智能体暂停并征求你的明确批准。对于具有财务、法律或安全影响的操作，HITL是必须的。

实现HITL有多种方式。两种常见的交互设计是**协作规划**和**协作任务执行** \[8\]。

## 9、协作规划：让人工审查和编辑计划

假设你是一名软件工程师，要求一个AI编码智能体"清理代码库"。智能体广泛地理解了这个请求，开始重构多个模块、重写文档并运行大量的性能测试。经过数小时的计算和代码更改后，你意识到智能体误解了你的意思：你只想保持格式一致和注释更清晰。

协作规划将人工监督整合到智能体的规划过程中。在AI智能体生成初始计划后，用户可以：

- 直接编辑计划
- 按原样接受它
- 提供反馈，让智能体修改它

这种方法增加了透明度，并提高了智能体行为与用户目标一致的可能性。通过在执行前审查计划，用户可以防止浪费时间、不必要的计算和偏离目标的结果。

#### 协作任务执行：人类与AI智能体协同工作

即使有了可靠的计划，执行过程中也可能出现意外情况。协作任务执行允许用户在智能体工作时保持参与。有两种主要的交互形式：

1. **User-initiated intervention**：用户可以随时中断智能体以提供指导或纠正。例如，如果智能体开始偏离正确的方向，用户可以立即重新引导它。
2. **Agent-initiated requests**：智能体可以暂停并向用户请求澄清或批准。实现这一点的一种方法是将人类视为智能体可以调用的"工具"。另一种方法是将用户视为多智能体系统中的一个智能体，其中管理LLM将任务委托给用户"智能体"。某些操作，例如删除文件或进行不可逆的更改，可能始终需要人类的明确批准。

协作规划和协作任务执行自然地融入了agentic AI系统的规划工作流中。让用户参与其中使系统更加可靠、符合用户期望，并且更安全。

![None](https://www.hubwiz.com/blog/content/images/2026/06/1-ONl-00GeKFFH2VD43edkyA.png)

## 10、结束语

本文涵盖了反思、工具使用、规划、多智能体和人机协同这五种设计模式。这些设计模式将反应式的LLM转变为能够自主推理、行动和适应的目标导向型AI智能体。

如果你使用agentic AI软件，你会注意到这些设计模式正在发挥作用。例如，Claude Code会创建计划，生成子智能体来处理这些任务，并执行工具调用以与外部系统交互（例如，使用"web search tool"）。有时，它还会提出澄清问题或在复杂任务期间请求确认。

如果你正在使用LangChain/LangGraph或CrewAI开发自己的agentic AI应用，你可以实现这些设计模式来创建更好的AI智能体。然而，在设计AI智能体时，从简单的工作流开始，只在必要时增加复杂性，这是一个好的实践。

---

原文链接: [Agentic AI: The Five Design Patterns That Turn LLMs Into AI Agents](https://freedium-mirror.cfd/https://levelup.gitconnected.com/agentic-ai-design-patterns-ai-agents-7c95dec92d1b?ref=hubwiz.com)

汇智网翻译整理，转载请标明出处