Microsoft Agent Framework
Microsoft Agent Framework 支持 Python、C# 和 Go 工作流,用于构建 Agent、工具、上下文提供方、中间 件和 AI 应用。当应用使用带自定义端点的兼容 OpenAI 客户端时,AISIX 位于模型请求边界。
本指南使用采用 Responses API 的 Python OpenAIChatClient,该客户端通过 base_url 支持兼容 OpenAI 的端点。你将使用 AISIX 代理 URL、调用方 API Key 和模型别名配置客户端。
前置条件
开始前,请准备以下内容:
- 一个受 Microsoft Agent Framework 支持的 Python 环境。
- 一个代理监听器可用的运行中 AISIX 网关。
- 一个 AISIX 调用方 API Key。
- 一个调用方 API Key 可通过Responses API访问的模型别名。
配置 Microsoft Agent Framework
如果应用尚未包含 OpenAI 服务提供方包,请先安装:
pip install agent-framework-openai
设置 Agent 应用要使用的值:
# Replace with your values
export AISIX_BASE_URL="http://127.0.0.1:3000/v1"
export AISIX_API_KEY="YOUR_CALLER_API_KEY"
export AISIX_MODEL="gpt-4o-prod"
使用 AISIX 值创建 OpenAIChatClient,并将其转换为 Agent:
import asyncio
import os
from agent_framework.openai import OpenAIChatClient
client = OpenAIChatClient(
base_url=os.environ["AISIX_BASE_URL"],
api_key=os.environ["AISIX_API_KEY"],
model=os.environ["AISIX_MODEL"],
)
agent = client.as_agent(
name="GatewayAgent",
instructions="You answer in one concise sentence.",
)
async def main():
response = await agent.run("Why do gateways help AI teams?")
print(response)
asyncio.run(main())
Microsoft 将 OpenAIChatCompletionClient 记录为适用于广泛模型兼容性或现有 Chat Completions 集成的 Chat Completions 回退路径。
如果应用仍使用 Semantic Kernel,请改为使用 AISIX 端点配置其 OpenAI 聊天补全连接器:
#pragma warning disable SKEXP0010
builder.AddOpenAIChatCompletion(
modelId: Environment.GetEnvironmentVariable("AISIX_MODEL")!,
endpoint: new Uri(Environment.GetEnvironmentVariable("AISIX_BASE_URL")!),
apiKey: Environment.GetEnvironmentVariable("AISIX_API_KEY")!
);
#pragma warning restore SKEXP0010
模型值应填写 AISIX 模型别名,而不是上游服务提供方模型 ID。AISIX 管理模型请求路径,而 Microsoft 框架代码继续负责 Agent、工具、上下文提供方、中间件、提示词和工作流行为。
验证集成
在已设置 AISIX 环境变量的 Shell 中运行应用。
请求成功后,请确认以下结果:
- 应用输出 Agent 响应。
- AISIX 为
OpenAIChatClient路径记录一条成功的POST /v1/responses请求,或为 Semantic Kernel 回退路径记录一条成功的POST /v1/chat/completions请求。
对于托管部署,请在托管网关日志中验证请求。对于自托管网关,请使用已配置的日志、指标或上游服务提供方日志。
如果请求失败,请先确认调用方 API Key 可以访问所选模型别名,且 base_url 指向包含 /v1 的 AISIX 代理 API 根路径。
Microsoft Agent Framework 同时支持 Responses 和 Chat Completions 客户端。当需要通过 AISIX 获得广泛的兼容 OpenAI 模型支持时,请使用 Chat Completions。
Responses 托管工具和服务提供方特有功能可能无法映射到所有上游服务提供方。依赖网关对流式传输、工具或 Responses 托管工具行为执行策略或采集遥测前,请先验证 Responses 工作流。
后续步骤
- Responses API:查看面向网关的 Responses 行为。
- 兼容 OpenAI 的 API:当工作流需要广泛的兼容 OpenAI 支持时使用 Chat Completions。
- 工具调用:在启用 Agent 工具前确认工具调用行为。