欢迎参加“AI 代理入门”课程!本课程将为您提供构建 AI 代理的基础知识和实践示例。
加入 Azure AI Discord 社区,与其他学习者和 AI 代理构建者交流,并提出您在课程中遇到的任何问题。
为了开始这门课程,我们将首先更好地理解什么是 AI 代理,以及如何在我们构建的应用程序和工作流中使用它们。
本节课程内容包括:
- 什么是 AI 代理?有哪些不同类型的代理?
- AI 代理适用于哪些用例?它们如何帮助我们?
- 设计代理解决方案时需要了解的基本构建块有哪些?
完成本节课程后,您将能够:
- 理解 AI 代理的概念及其与其他 AI 解决方案的区别。
- 高效应用 AI 代理。
- 为用户和客户高效设计代理解决方案。
AI代理是通过为 大语言模型(LLMs) 提供 工具 和 知识 的访问权限,从而扩展其能力以 执行操作 的 系统。
我们将这一定义拆解为几个部分:
- 系统 - 需要将代理视为由多个组件组成的系统,而不是单一组件。AI代理的基本组件包括:
- 环境 - 定义 AI 代理运行的空间。例如,如果我们有一个旅游预订 AI 代理,环境可能是 AI 代理用于完成任务的旅游预订系统。
- 传感器 - 环境提供信息和反馈。AI 代理使用传感器来收集和解释有关环境当前状态的信息。在旅游预订代理的例子中,旅游预订系统可以提供酒店可用性或航班价格等信息。
- 执行器 - 一旦 AI 代理接收到环境的当前状态信息,它会根据当前任务决定执行什么操作以改变环境。例如,旅游预订代理可能为用户预订一个可用的房间。
大语言模型 - 在大语言模型出现之前,代理的概念已经存在。利用 LLMs 构建AI 代理的优势在于它们能够解释人类语言和数据。这种能力使 LLMs 能够解释环境信息并制定改变环境的计划。
执行操作 - 在 AI 代理系统之外,LLMs 的操作通常仅限于根据用户提示生成内容或信息。在AI代理系统中,LLMs 可以通过解释用户请求并利用环境中可用的工具来完成任务。
工具访问 - LLM 可以访问哪些工具由两个因素决定:1)它运行的环境;2)AI代理开发者。例如,在旅游代理的例子中,代理的工具可能仅限于预订系统中的操作,或者开发者可以限制代理的工具访问权限,仅限于航班预订。
知识 - 除了环境提供的信息外,AI 代理还可以从其他系统、服务、工具,甚至其他代理中检索知识。在旅游代理的例子中,这些知识可能包括存储在客户数据库中的用户旅游偏好信息。
现在我们已经了解了 AI 代理的一般定义,让我们来看一些具体的代理类型,以及它们如何应用于旅游预订 AI 代理。
代理类型 | 描述 | 示例 |
---|---|---|
简单反射代理 | 根据预定义规则执行即时操作。 | 旅游代理解析邮件上下文并将旅行投诉转发给客户服务部门。 |
基于模型的反射代理 | 根据世界模型及其变化执行操作。 | 旅游代理根据历史价格数据的访问优先考虑价格变化显著的路线。 |
基于目标的代理 | 通过解释目标并决定实现目标的操作来创建计划。 | 旅游代理通过确定从当前位置到目的地所需的旅行安排(如汽车、公共交通、航班)来预订行程。 |
基于效用的代理 | 考虑偏好并通过数值权衡如何实现目标。 | 旅游代理在预订旅行时,通过权衡便利性与成本来最大化效用。 |
学习型代理 | 通过响应反馈并相应调整操作来随着时间推移不断改进。 | 旅游代理通过使用客户在行程结束后的反馈调查结果来调整未来的预订,从而不断改进。 |
分层代理 | 包含多级代理系统,高级代理将任务分解为子任务,由低级代理完成。 | 旅游代理通过将取消行程的任务分解为子任务(如取消特定预订)并让低级代理完成这些任务,再向高级代理汇报完成情况。 |
多代理系统(MAS) | 代理可以独立完成任务,无论是合作还是竞争。 | 合作:多个代理分别预订特定的旅行服务,如酒店、航班和娱乐活动。竞争:多个代理管理并竞争共享的酒店预订日历,为客户预订酒店。 |
在前面的部分中,我们使用旅游代理的用例解释了如何在不同的旅行预订场景中使用不同类型的代理。在整个课程中,我们将继续使用这一应用。
让我们来看一下 AI 代理最适合使用的用例类型:
- 开放性问题 - 允许 LLM 决定完成任务所需的步骤,因为这些步骤无法始终硬编码到工作流中。
- 多步骤流程 - 需要一定复杂度的任务,AI 代理需要在多个回合中使用工具或信息,而不是单次检索。
- 逐步改进 - 代理可以通过从环境或用户接收反馈来改进,以提供更好的效用。
在“构建可信的 AI 代理”课程中,我们将进一步探讨使用AI代理的考虑因素。
设计 AI 代理系统的第一步是定义工具、操作和行为。在本课程中,我们重点使用 Azure AI Agent Service 来定义我们的代理。它提供以下功能:
- 选择开放模型,如 OpenAI、Mistral 和 Llama
- 使用提供商(如 Tripadvisor )提供的授权数据
- 使用标准化的 OpenAPI 3.0 工具
与 LLM 的通信是通过提示完成的。鉴于 AI 代理的半自主特性,在环境发生变化后,手动重新提示 LLM 并非总是必要或可行。我们使用 代理模式,以更可扩展的方式在多个步骤中提示 LLM。
本课程分为当前流行的几种代理模式。
代理框架允许开发者通过代码实现代理模式。这些框架提供模板、插件和工具,以促进AI 代理的协作。这些优势为 AI 代理系统提供了更好的可观察性和故障排除能力。
在本课程中,我们将探讨以研究为驱动的 AutoGen 框架,以及 Semantic Kernel 提供的面向生产的 Agent 框架。
免责声明:
本文件使用基于机器的人工智能翻译服务进行翻译。尽管我们努力确保准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文件作为权威来源。对于关键信息,建议寻求专业人工翻译。我们对于因使用此翻译而产生的任何误解或错误解读不承担责任。