用于智能 Microsoft 365 Copilot 副驾驶®的 API 插件
API 插件使 智能 Microsoft 365 Copilot 副驾驶® 中的声明性代理能够与具有 OpenAPI 说明的 REST API 进行交互。 使用 API 插件,用户可以要求声明性代理不仅查询 REST API 以获取信息,还可以创建、更新和删除数据和对象。 REST API 可以执行的任何操作都可以通过自然语言提示进行访问。
重要
API 插件仅支持作为 声明性代理中的操作。 智能 Microsoft 365 Copilot 副驾驶®中未启用它们。
API 插件提供 OpenAPI 说明文档和插件清单,Copilot 使用该文档了解 API 的功能。 然后,Copilot 可以决定何时安装并启用的插件的 API 适合回答任何给定的提示。 若要详细了解 API 插件所需的清单文件,请参阅用于智能 Microsoft 365 Copilot 副驾驶®的 API 插件清单架构。
例如,考虑一个预算 API,该 API 允许查询和创建预算、收取费用或向现有预算添加资金。 提示“Contoso 旅行预算中还剩多少”可能会触发预算插件,进行以下 API 调用。
GET /budgets?name=contoso%20travel
Copilot 使用 API 调用的响应来生成其响应:“Contoso 旅行预算当前有 5,000 美元的可用资金。 如果需要将资金分配给特定类别或跟踪支出,我也可以为你提供帮助。 只要告诉我如何帮助!
提示“向 Megan 的机票的 Contoso 旅行预算收取 500 美元”可以转换为以下 API 调用。
POST /budgets/charge
Content-Type: application/json
{
"budgetName": "Contoso travel",
"amount": 500,
"description": "Megan's airline ticket"
}
Copilot 使用返回的信息回复用户:“Megan 机票 500 美元的收费已成功处理。 Contoso 旅行预算现在还有 4,500 美元的可用资金。 如果你需要做更多的交易或需要进一步的预算帮助,请告诉我!
确认操作
Copilot 在将任何数据发送到 API 插件之前会询问用户。
默认情况下,仅检索数据的 API 为用户提供了“始终允许”选项,而修改数据的 API 则不会。 插件开发人员可以替代这些默认值。 有关详细信息,请参阅用于智能 Microsoft 365 Copilot 副驾驶®的 API 插件的确认提示。
自定义响应演示文稿
Copilot 使用 API 响应中的数据生成对话响应。 插件可以通过提供自适应卡片模板以结构化方式显示数据来自定义这些响应。
生成 API 插件包
开发人员可以使用两种工具来生成 API 插件包。
- Visual Studio 或 Visual Studio Code 中的 Teams 工具包可以根据现有的 OpenAPI 说明创建插件包。 如果没有现有 API,Teams 工具包还具有具有示例 API 和相应插件包的初学者项目。
- Kiota 是一个命令行工具和Visual Studio Code扩展,可以根据现有的 OpenAPI 说明生成插件包。
限制
API 响应中的 URL 经过修订
为了保护用户的隐私,Copilot 会编辑 API 响应中包含的任何 URL。 此行为的唯一例外是响应语义属性对象中的 属性指定的url
属性中的任何 URL。