SuperAPI AI 工具集

agent-framework-agui-py

智能体与模型

查看项目

更新于 10-16 00:31

技能介绍

用途:agent-framework-ag-ui 是 Microsoft Agent Framework 的 Python 集成,用于按 AG-UI(Agent UI)协议通过 HTTP + Server-Sent Events 流式传输智能体交互。它可把任意 Agent 或 Workflow 以一次调用暴露为 AG-UI 服务器,也可用 AGUIChatClient 消费任意 AG-UI 服务器,并支持部分工具在服务端、部分在客户端执行的混合模式。

主要能力:服务端通过 add_agent_framework_fastapi_endpoint(app, target, path) 注册流式 POST 路由,target 可为 Agent、Workflow 或对应包装类;客户端 AGUIChatClient 是 BaseChatClient,可像普通聊天客户端一样使用,支持流式与非流式、thread_id 连续性、中断/恢复透传。集成覆盖七项 AG-UI 特性:智能体对话、后端工具渲染、人在回路、生成式 UI、基于工具的生成式 UI、共享状态、预测性状态更新。state_update 可让工具分别向模型、UI 和共享状态返回不同载荷。

使用方式:安装 pip install agent-framework-ag-ui(或 uv pip install),服务端另需 fastapi 与 uvicorn。示例包为 agent-framework-ag-ui-examples。服务端示例使用 Azure OpenAI 环境变量 AZURE_OPENAI_ENDPOINT、AZURE_OPENAI_MODEL、AZURE_OPENAI_API_KEY;客户端可用 AGUI_SERVER_URL(默认 http://127.0.0.1:5100/)。客户端工具需通过 Agent(client=AGUIChatClient(...), tools=[...]) 包装才能本地执行;直接调用 get_response 只发送工具定义。自定义请求头需传入自建的 httpx.AsyncClient(http_client=),AGUIChatClient 不接受 headers= 参数。

限制:AG-UI 协议仍在演进,生产环境应固定版本。端点默认开放,需自行通过 FastAPI dependencies 添加鉴权。当服务端为 GitHubCopilotAgent 时,CLI 工具列表在会话创建时固定,客户端前端工具不会被合并,且每次工具调用需 on_permission_request 返回 approve-once,否则会被拒绝。有运行时状态的工作流应使用 AgentFrameworkWorkflow(workflow_factory=...) 按线程构建实例。