跳到主要内容

Skill 流式调用(36 配置)

POST 

/v1/skills/stream

使用平台 API Key 调用 Skill,以 SSE 返回流式结果。 文档按以下 36 个固定配置拆分展示:

  • fashion-campaign-director(Aris岚岚-AI创意总监)
  • street-style-photographer(Wesley扎克-AI街拍摄影师)
  • icon-designer(Soren阿尚-AI时尚设计师)
  • beauty-photography-master(Astor宝哥-AI香水大师)
  • beverage-photography(Kairos老玖-AI酒水饮料拍摄大师)
  • ecom_shoe_image_shotlist(Modus阿步-AI鞋靴电商专家)
  • app-beauty-storyboard-artist(Aura-7雯雯-AI美妆分镜大师)
  • beverage-ecom-detail-page(Ayn阿饮-AI饮料详情页生成专家)
  • home-appliance-detail-page(Adian阿电-AI家电详情页生成专家)
  • product-animation-video(Kara贝贝-AI产品动画视频导演)
  • xhs-kol-product-photos(Willa丸辣-AI种草图生成专家)
  • appliance-photography(Elias伊亮-AI小家电大片拍摄专家)
  • fashion-shoot(Viora布布拍-AI女装拍摄专家)
  • kidswear-photography-master(Tania童童-AI童装拍摄专家)
  • product-motion(Nina倪娜-AI商品动效生成专家)
  • app-ppt-structure-preserving-polisher(Mia美小妹-AI PPT美化专家)
  • ai-comic-drama-screenwriter(Belle边边-AI漫剧剧本创作专家)
  • social-media-creator-ops(Yvonne莹莹-AI 社媒全案运营专家)
  • ai-comic-drama-video(Mann小曼-AI漫画视频生成专家)
  • ai-comic-drama-role-image(Sylvia大萱-AI漫剧角色设计专家)
  • xiaohongshu-content-expert(Blade大块头-AI鞋服 小红书图文专家)
  • brand-content-strategy(Roy 阿略-AI内容策略专家)
  • generic-ai-koc(Awon阿旺-AI虚拟达人定制专家)
  • mixed-editing-sop-portable-flat-with-voice(Carter卡特-AI批量混剪专家)
  • app-video-remix-prep(Pat帕特-AI批量成片拆条专家)
  • app-data-analysis-orchestrator(Yuyu云云-AI 电商数据分析专家)
  • app-live-stream-analysis-master(Tutu涂涂-AI直播数据分析专家)
  • app-fancy-ops-review-delivery(Kitty阿猫-淘宝内容数据分析专家)
  • app-ppt-framework-master-genready-colleague(Fenton阿峰-PPT逻辑框架设计专家)
  • app-mall-leasing-proposal-master(Sion商商-AI招商方案策划专家)
  • snacks-product-video(Candy糖小柔—休闲零食视频生成专家)
  • skincare-kol-product-video(Mancy曼汐—护肤品KOL视频生成专家)
  • fizzy-drink-product-video(Chase阿澈—气泡补水视频生成专家)
  • women-clothing-detail-page(Shana香香—女装详情页生成专家)
  • fizzy-drink-kol-video(Bubble泡泡—气泡水KOL视频生成专家)
  • kidswear-detail-page(Togen童匠—童装详情页生成专家)
  • app-fashion-product-video(Easeen衣见—AI服装视频生成专家)
  • app-footwear-product-video(Wanford望步—AI鞋类视频生成专家)
  • app-alcohol-product-video(Orin小屿—AI酒类视频生成专家)
  • app-product-manager(Product Manager-指南针)
  • app-backend-engineer(Backend Engineer-服务匠)
  • app-frontend-engineer(Frontend Engineer-界面匠)
  • app-qa-test-engineer(QA Test Engineer-质检官)
  • app-devops-sre-engineer(Devops Sre Engineer-发布官)
  • app-software-architect(Software Architect-蓝图师)

Request

Responses

SSE 流式返回

SSE 流式返回事件说明(通用)

SSE 每条业务消息都通过 data: {json}\n\n 推送,客户端按顶层 type 解析。

type含义前端处理建议
system流初始化事件(通常 subtype=init提取平台下发的 session_id,后续请求必须带上
assistant助手输出内容块(文本/图片/thinking 等)作为主消息流渲染
user工具执行输出建议标记为“工具输出”,不要当作用户手输内容
file_upload_request请求用户上传图片或文件展示上传入口,上传完成后将文件 URL 组织进下一轮 attachments,并携带同一 session_id 继续调用 /v1/skills/stream
ask_user_question请求用户回答问题或选择选项展示问题和选项,收集答案后组织进下一轮 prompt,并携带同一 session_id 继续调用 /v1/skills/stream
token_stats本轮 token 用量增量(输入/输出/缓存)用于展示用量,不要当助手正文渲染。收到后立即扣费
turn_media_stats本次新扣费的生成图片/视频用于展示用量,不要当助手正文渲染。收到后立即扣费。会话总量自行累加
result本轮成功结束信号停止流式拼接,进入完成态
error本轮失败结束信号停止流式拼接,提示错误并允许重试
done可选的结束提示可用于关闭 loading,但业务完成仍以 result / error 为准
heartbeat保活事件(JSON data,约每 15 秒一次)忽略业务渲染
low_balance余额低于 Skill 阈值(可能在本轮结束后下发)提示充值,不要当流失败处理

接入扣费流程

能收到的用量事件就是该记账的增量。把收到的事件累加即可,不要从 assistant 正文抠 URL 计费。

  1. 第一轮 POST /v1/skills/stream 不必传 session_id
  2. 收到 system:存下 session_id,后续请求都带上。
  3. 收到 token_stats:按事件里的 inputTokens / outputTokens / 缓存字段立即记账(本段增量)。
  4. 收到 turn_media_stats:按 media_summary.image_countvideo_count 以及 images / videos 立即记账(本次新扣的图/视频)。没有新素材时不会下发这条。
  5. 流断开:用同一把 Key 调用 GET /v1/skills/usage?session_id=... 对账;重连带上该 session_id,已扣过的图/视频不会再下发。

本地落账时可用 billing_event_id 做幂等键。

补充说明:

  • 流中会定期收到 {"type":"heartbeat"},用于保活,忽略业务渲染即可。
  • 流结束时可能出现 data: [DONE],按传输结束处理,不是业务事件。
  • 用户补充输入(回答追问、回传上传结果等)通过下一轮 POST /v1/skills/stream 继续,并带上同一 session_id
  • 对未知 type 做“可观测但不阻断”处理(记录日志 + 忽略渲染)。流中还可能出现 stream_event 等额外事件,同样忽略渲染。
  • token_stats / turn_media_stats 是本轮/本段增量,会话总量需自行累加。用量事件会带上 request_idsession_idsequence(同一次 HTTP 请求内递增)、billing_event_idbilling_mode: "delta"billable
  • turn_media_stats 只在本次有新的图片/视频 URL 扣费时下发。media_summary.images / videos 以及数量就是本次扣费内容。已扣过的 URL 在重连时不会再下发、也不会再扣。
  • 收到用量事件时按事件实时扣费;整段流都没有这两类事件时,才在流结束时按汇总用量扣费。
  • 第一轮不必自带 session_id。从首个 system 事件取出平台下发的 session_id,后续请求必须带上。SSE 建连成功后立刻记下响应头 X-Oneapi-Request-Id。若连接中断但已经扣费,用同一把 API Key 调用 GET /v1/skills/usage。优先用下发的 session_id;已读到响应头可用 request_idbilling_event_id 只能对上已经收到的那一条用量事件。

file_upload_request 示例:

{
"type": "file_upload_request",
"questionId": "d7078aab-b67a-427d-ac0c-a87bb7e07dcf",
"uploads": [
{
"prompt": "上传您的服装或 lookbook 图片即可开始(JPG/PNG,支持多张)",
"header": "服装图片",
"accept": "image/*",
"description": "支持 JPG、PNG、WebP 格式"
}
]
}

ask_user_question 示例:

{
"type": "ask_user_question",
"toolUseId": "eabec243-a985-458d-a3e0-50f7fa8e128e",
"questionId": "eabec243-a985-458d-a3e0-50f7fa8e128e",
"questions": [
{
"question": "今天由哪位大师为你设计?",
"header": "选择你的大师",
"options": [
{
"label": "可可·香奈儿",
"value": "Coco Chanel",
"description": "通过简约解放身体——释放身体,磨砺心智"
},
{
"label": "克里斯汀·迪奥",
"value": "Christian Dior",
"description": "新风貌——女性美的建筑学"
}
]
}
]
}

token_stats 示例:

{
"type": "token_stats",
"turn_id": "turn-1",
"inputTokens": 500,
"outputTokens": 100,
"cacheReadInputTokens": 0,
"cacheCreationInputTokens": 0,
"request_id": "req-123",
"session_id": "sess_abc123",
"sequence": 1,
"billing_event_id": "skill:req-123:sess_abc123:turn-1:token_stats:1",
"billing_mode": "delta",
"billable": true
}

turn_media_stats 示例:

{
"type": "turn_media_stats",
"turn_id": "turn-1",
"media_summary": {
"image_count": 1,
"video_count": 1,
"images": [
{
"url": "https://assets.example.com/a.png"
}
],
"videos": [
{
"url": "https://assets.example.com/v.mp4",
"duration_seconds": 3.5
}
]
},
"request_id": "req-123",
"session_id": "sess_abc123",
"sequence": 2,
"billing_event_id": "skill:req-123:sess_abc123:turn-1:turn_media_stats:2",
"billing_mode": "delta",
"billable": true
}