用途:本技能覆盖 Agently 的 FastAPIHelper 集成面,重点是把智能体、请求、流程、流程执行或生成器函数暴露为 HTTP、SSE 或 WebSocket 端点,并使用该助手标准的请求载荷与响应包装。不涉及完整服务架构或多组件业务系统设计。前置条件:Agently >= 4.0.8.5。
主要能力:FastAPIHelper;use_post(...)、use_get(...)、use_sse(...)、use_websocket(...);请求载荷结构;响应包装与错误载荷;TriggerFlow 契约感知的请求与响应模型;OpenAPI 中的契约元数据;支持 BaseAgent、ModelRequest、TriggerFlow、TriggerFlowExecution 或生成器函数等提供者类型。
使用方式:当主要问题是选择哪种提供者类型时,先读 references/provider-types-and-payloads.md;在普通 API、SSE 与 WebSocket 之间选择时读 references/http-sse-websocket.md;涉及载荷结构、包装语义或错误处理时读 references/response-wrapping-and-errors.md;快速接入智能体端点或流式 TriggerFlow 端点时读 references/service-recipes.md;行为异常时读 references/troubleshooting.md。若任务扩展为更广泛的服务系统设计,应离开本技能,转到 playbook 层。
核心模型:FastAPIHelper 是服务暴露助手,不是服务架构框架。它标准化请求载荷解析、提供者调用、响应包装,以及可选的 SSE 或 WebSocket 流式输出。对带 set_contract(...) 的 TriggerFlow 提供者,还可暴露契约感知的 HTTP 与 OpenAPI 表面:POST 请求体类型来自 contract.initial_input,包装响应数据类型来自 contract.result,OpenAPI 扩展元数据来自导出的 TriggerFlow 契约元数据。建议保持 async 优先:优先异步提供者,优先用 SSE 或 WebSocket 做渐进输出,同步包装仅作兼容桥接。
选择规则:快速单请求 HTTP 端点用 POST 或 GET 助手;单向渐进流用 SSE;双向会话式流用 WebSocket;单端点后接普通智能体或模型请求用 BaseAgent 或 ModelRequest;TriggerFlow 的运行时流用 TriggerFlow 或 TriggerFlowExecution;需在 OpenAPI 中暴露类型化请求或类型化包装响应用契约支持的 TriggerFlow。
限制:FastAPIHelper 只标准化请求体结构,不自动设计周边服务架构;默认包装可保持 HTTP 传输状态稳定,同时在响应体内报告实际助手级状态,客户端必须检查包装后的状态字段,而非只看 HTTP 传输状态;FastAPI 请求模型校验可能在助手包装运行前以 HTTP 422 拒绝格式错误的 POST 请求体;契约支持的 TriggerFlow POST 路由可在路由级校验之上增加更深的类型化请求体校验;提供者逻辑与业务编排仍与 HTTP 暴露分离。