Agent Skills
返回列表
🤖

Venice 结构化响应接口

AI Agent 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/venice-responses-lr-97pz。

技能介绍

要解决的问题

基于 Venice 的 Agent 如果直接调用 /chat/completions,拿到的只是一段 message.content 字符串。模型的推理内容、正式消息、function_call 工具调用、web_search_call 内置搜索事件全部揉在同一个字段里,客户端必须自己写解析逻辑去拆分。而期待 OpenAI Responses 响应形状的客户端库面对这种结构,要么丢失信息,要么被迫做字符串匹配。

这个技能做什么

Veniceresponses 对应 Venice 的 Responses API (Alpha),走 POST /api/v1/responses,是 OpenAI 兼容的 Responses 端点:

  • 返回结构化、类型化的输出数组,而不是单个字符串
  • output[] 中每个块都带 type 字段,取值为 reasoning / message / function_call / web_search_call
  • 推理、消息、工具调用各自独立成块,Agent 可以直接按类型分发处理
  • 支持 SSE 流式输出,事件本身也是带类型的

对客户端来说流程很直接:按 Responses 格式发请求 → 按 type 遍历 output[] → 推理块可缓存或丢弃,message 块渲染给用户,function_call 块交给工具执行器。

适用边界

  • Alpha 阶段,schema 可能变化,生产环境接入前需要评估
  • Bearer API key 需开启 responsesApiEnabled 标志,beta 期间仅 staff 可用;x402 钱包认证可绕过该标志,按次付费即可调用
  • 如果只是普通对话,用 venice-chat 更合适——模型更多、Venice 参数更全
  • 与 /chat/completions 相比存在功能取舍,不应把它当作后者的完全替代品

使用场景

  • 编写基于 Venice 的 Agent 时,客户端库要求返回 OpenAI Responses 格式的 output 数组
  • 需要把模型的推理内容和正式回复分开处理,避免在 message.content 字符串里做拆分
  • 实现实时流式对话界面时,要求 SSE 事件携带类型,以便区分 reasoning 和 message 块
  • 对接内置 web_search_call 事件时,要把搜索调用过程与最终消息分别记录和展示

适合人员

  • 基于 Venice 搭建 Agent 的后端工程师,希望响应格式符合 OpenAI Responses 规范
  • 开发 AI 对话客户端的工程师,需要按类型分离推理、消息和工具调用
  • 构建流式聊天界面的前端工程师,要求 SSE 事件可按类型分发渲染
  • 维护工具调用链路的开发者,希望直接读取结构化 function_call 块交给执行器