你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
为了使你的 AI 智能体能够获得可靠的数据或具有采取行动和自动化工作流程的能力,Foundry 智能体服务提供了一系列内置工具(例如:使用必应搜索查找事实依据、Azure AI 搜索、Azure 逻辑)以及一些第三方合作工具,例如 Tripadvisor。 本页旨在概述 Foundry 代理服务中提供的工具。
知识工具
让你的 AI 智能体从各种数据源中获取更丰富的上下文信息,使其保持知情状态。 Foundry 智能体服务涵盖了各种数据类型:
- 专用数据:Azure AI 搜索、文件搜索、Microsoft Fabric 等
- 公开 Web 数据:使用必应搜索查找事实依据
- 许可数据:Tripadvisor、Morningstar
- 非结构化数据:Azure AI 搜索、文件搜索
- 结构化数据:Microsoft Fabric 等
操作工具
使用具有行动能力的AI代理来简化工作流程。 Foundry代理服务为您提供不同种类的操作工具,具有不同的灵活性、控制以及易于集成的程度。
- Azure 逻辑应用:低代码/无代码解决方案,用于将工作流添加到 AI 代理
- OpenAPI 规范工具:引入要添加到 AI 代理的现有服务 API 的 OpenAPI 规范,无需修改或仅需轻微修改。
- 函数调用:编写自己的自定义无状态函数以定义预期行为。
- Azure Functions:编写和管理自己的自定义有状态函数。
工具如何在 Foundry 智能体服务中工作?
工具是可以添加到 AI 代理中的可选功能,AI 模型可以根据用户查询和上下文进行决定和选择。 当用户发送查询时,AI 模型使用上下文标识意向,并可能重写用户查询。 然后,AI 模型决定为每个运行调用哪些工具。 例如,如果您将必应搜索工具和 Azure AI 搜索工具都添加到您的虚拟代理中,并询问“今天西雅图的天气怎么样?”,模型将识别出您想要询问实时信息的意图,更有可能调用必应的搜索工具。
可以在代理、线程或运行级别添加工具。 通过在较窄级别提供工具,工具资源将替代更宽泛级别的工具资源。 例如,运行级别的工具资源会覆盖线程级别的工具资源。 目前,可以添加多个工具,但以下每种工具只能添加一个实例:文件搜索、Azure AI 搜索、与必应搜索整合、与必应自定义搜索整合、Microsoft Fabric,以及位于knowledge
部分下的其他工具。
当用户向代理发送查询时,它将创建 线程、运行和消息。 对于每次运行,AI 模型都会根据用户意向和可用工具资源决定要调用的工具。 根据工具输出,AI 模型可能会决定调用另一个工具或再次调用同一工具以获取更多上下文。 例如,将 Grounding 与必应搜索工具配合使用时,跟踪 线程时可能会看到多个必应搜索查询。 这意味着 AI 模型实际上会使用不同的查询多次调用“使用必应搜索查找事实依据”来获取更多信息。 若要了解有关调用哪些工具以及如何调用 AI 模型的详细信息,请查看运行步骤详细信息。
可通过多种方式影响 AI 代理调用工具的方式:
参数
tool_choice
:控制模型调用哪个工具(如果有)的最确定性方法。 默认情况下,它设置为auto
,这意味着 AI 模型将决定。 如果要 强制 模型调用特定工具,可以提供此工具的规范,例如run = project_client.agents.runs.create_and_process( thread_id=thread.id, agent_id=agent.id, tool_choice={"type": "bing_grounding"} # specify the tool to use )
参数
instructions
:不确定。 使用说明帮助 AI 模型了解用例和每个工具的目的。 你想要告诉 AI 模型每个工具可以执行哪些信息或操作。 例如“将 AI 搜索工具<tool_name>
用于产品相关信息,使用 Fabric 工具<tool_name>
获取销售相关信息”。有时,用户查询可以通过模型的基本知识或工具做出响应,你希望提供“使用工具输出生成响应,不要使用自己的知识”等说明。
先决条件
- 已创建的代理
- 请确保 AI 模型分配了足够的每分钟令牌 (TPM)。 建议至少使用 30k TPM。 要更改 TPM 分配,可以在 AI Foundry 门户中进入 模型 + 终结点 并编辑您的模型。
内置工具
Foundry 代理服务提供以下内置工具。 可以将它们与 REST API、SDK 和 Azure AI Foundry 门户配合使用。
工具 | DESCRIPTION |
---|---|
Azure AI 搜索 | 使用现有的 Azure AI 搜索索引来为你的 AI 智能体提供基础数据,并基于你的数据进行聊天。 |
Azure Functions | 利用 Azure Functions 创建智能的事件驱动应用程序。 |
代码解释器 | 使代理能够在沙盒执行环境中编写和运行 Python 代码。 |
文件搜索 | 利用其模型外部的知识增强代理,例如专有产品信息或用户提供的文档。 |
函数调用 | 描述向代理创建的函数结构,并在代理与用户的交互期间适当时调用它们。 |
使用必应搜索查找事实依据 | 使代理能够将 Grounding 与必应搜索配合使用,以便从 Internet 访问和返回信息。 |
使用必应自定义搜索提供事实依据(预览版) | 使用所选 Web 域增强代理响应 |
Microsoft Fabric(预览版) | 将代理与 Microsoft Fabric 数据代理 集成,以解锁强大的数据分析功能。 |
OpenAPI 3.0 指定工具 | 使用具有 OpenAPI 3.0 规范的函数将 Azure AI 代理连接到外部 API。 |
非Microsoft工具
以下工具由第三方合作伙伴创作。 使用以下链接查看文档和代码示例。
重要
- 您使用连接的非Microsoft服务受你与服务提供商之间的条款的约束。 通过连接到非Microsoft服务,你确认某些数据(如提示内容)已传递到非Microsoft服务,并且/或应用程序可能会从非Microsoft服务接收数据。 你负责使用非Microsoft服务和数据(以及与使用相关的任何费用)。
- 这些非 Microsfot 文件中的代码是由第三方创建的,不是Microsoft,也没有经过Microsoft测试或验证。 您的代码示例的使用受相关第三方提供的条款的约束。 通过使用此文件中的任何第三方示例,你承认Microsoft对于这些示例中的相关事宜不对你或其他人负责。
工具 | DESCRIPTION |
---|---|
Auquan | 基于人工智能的机构金融工作流自动化 |
Celonis | Celonis 提供进程智能以大规模加速企业 AI |
InsureMO 保险报价 | 用于汽车、房屋和旅游保险报价的操作 API |
LEGALFLY | 法律见解源自你的司法管辖区的受信任来源。 |
LexisNexis | 无缝访问 LexisNexis 内容。 |
MiHCM | 与 MiHCM 的 HR 功能无缝集成 |
晨星 | 访问最新的投资研究和数据,例如分析师研究、专家评论和基本 Morningstar 数据。 |
Trademo | 为多个国家/地区之间的贸易提供最新的关税和过去的发货数据 |
Tripadvisor | 获取旅行数据、指南和评论 |
最佳做法
使用系统指令帮助模型调用正确的工具
为了使模型了解要使用的工具,你需要为模型提供详细说明,以描述何时以及如何使用该工具。 可能需要考虑提供以下信息:
- 主要目标:此代理的目标是什么?相关任务的目标是什么?预期结果是什么?
- 你的职责:你期望代理执行哪些任务。 例如,调用“使用必应搜索提供事实依据”工具获取关于本地事件的最新信息。
- 你可能会收到的输入:你期望代理接收哪些输入?
- 对于每个工具:
- 工具名称
- 工具的说明
- 触发器:何时需要调用此工具? 将搜索哪些类型的信息? 查询将包含哪些内容?
- 查询示例
例如,对于“使用必应搜索提供事实依据”工具,你可提供如下工具说明:
“使用必应搜索提供事实依据”工具
- 使用:收集外部趋势或新闻,通过实时见解丰富帖子。
- 在以下情况下触发此触发器:
- 用户要求引用最近的数据或竞争上下文。
- 示例:“是否可以引用最新的行业趋势?”或“竞争对手正在做什么?”