如何给 Claude Code Router 的 Fusion 模型接入视频生成能力并提交异步任务
【免费下载链接】claude-code-routerOne local control plane for every AI agent: route across models, fuse new capabilities, orchestrate tools, and stay fully in control.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-code-router
手头的文本模型本身不会生成视频,但你需要让 Agent 能根据需求描述或一张输入图片提交视频生成任务。在 Claude Code Router(CCR)中,这通过把内置的视频生成工具接入一个 Fusion 模型来完成。接入之后,模型可以提交文本生视频、图生视频或参考图生视频任务;视频生成始终按异步任务执行——启动调用立即返回 Job ID,随后由 CCR 轮询任务状态,直到完成、失败或被取消,完成时返回视频产物信息。
前提条件:CCR 已在运行,且供应商页面存在支持视频生成协议的供应商和模型。完整功能说明见 生视频工具。
先弄清异步任务的执行机制
理解请求链路有助于后面定位问题。CCR 通过 ai-gateway 的通用媒体协议调用供应商:
| 请求 | 说明 |
|---|---|
videos/generations | 启动文本生视频、图生视频或参考图生视频任务。 |
videos/{id} | 查询视频任务状态和结果。 |
任务生命周期全部交给 CCR 管理:
- 启动任务后立即返回 Job ID;
- 工具轮询任务状态,并把进度反馈给模型;
- 任务完成后返回视频产物信息;
- 用户取消请求时,工具会尽量取消或停止继续等待。
请求超时和客户端取消仍然生效。并发、保留期和任务超时属于 CCR 内部安全策略,通常不需要在 Fusion UI 中配置。
准备支持视频生成的供应商
在供应商页面配置支持视频生成协议的供应商和模型。后续在视频生成工具里选模型时,模型选择器只会显示声明或检测到对应媒体能力的供应商模型,Grok API 只是其中一种实现。
可选分支:导入 Grok Agent。导入 Grok Agent 后,CCR 会自动提供grok-imagine-video。ai-gateway 复用已有 OAuth 登录态访问api.x.ai,不会启动 Grok CLI,媒体工具也不会再次要求输入 xAI API Key。
保存前可以点击检测连通性,它会对你选择的模型发送真实的模型请求,用来确认 API 地址、API 密钥、协议和模型 ID 是否真的可调用。注意检测请求会限制输出长度,但仍可能产生额外 token 消耗或计入供应商侧请求次数,建议只勾选需要确认的模型。供应商各字段含义见 供应商配置。
在 Fusion 模型中挂载视频生成工具
媒体能力以图片生成和视频生成两个普通的 Fusion 内置工具提供,使用方式与内置搜索工具一致,不属于 ToolHub,也没有单独的 Fusion 配置板块。
- 新建或编辑一个 Fusion 模型。
- 在Tools中添加视频生成。
- 在工具配置里选择视频模型。格式为
供应商/模型,其中的供应商替换为你在供应商页面配置的名称,模型必须是上一步中声明了视频能力的模型(导入 Grok Agent 后即为grok-imagine-video)。 - 可选:为该工具配置重试次数和备用视频模型。如果所选视频模型遇到可重试的媒体供应商错误,CCR 会先重试这个视频模型,再尝试配置的备用视频模型,基础文本模型保持不变。
- 保存 Fusion 模型。保存后 CCR 会为该模型生成独立的运行时工具名,防止多个 Fusion 配置之间的模型绑定互相覆盖。
工具项与运行时能力的对应关系、mediaTools内部策略等细节见 自定义 MCP 工具。
把 Fusion 模型选为 Agent 模型或路由目标
保存后的 Fusion 模型会像普通模型一样出现在路由和配置中,两种接入方式:
方式 A:作为 Agent 默认模型。打开Agent 配置→添加配置,选择 Agent 类型和配置名称,在模型中选择这个 Fusion 模型。保存后从配置卡片打开:终端图标复制 CLI 命令(CLI 使用ccr <配置名称>,桌面端使用ccr-app <配置名称>)。以 Claude Code 为例,从 CCR 打开 CLI 后,可以用/model查看并切换 CCR 暴露的模型列表,其中包含可见的 Fusion 模型。
方式 B:路由改写。在路由页面添加规则,在改写请求参数中把request.body.model设置为该 Fusion 模型名,命中的请求会被改写后转发。
Agent 配置字段见 Agent 配置,路由规则写法见 智能路由。
提交视频任务并验证结果
使用接入后的 Fusion 模型,描述视频生成需求(纯文字描述为文本生视频;附带本地图片则为图生视频或参考图生视频)。模型调用视频生成工具后,异步流程即按上面的机制运行:启动调用返回 Job ID,CCR 轮询状态并反馈进度,完成后返回产物。
工具调用支持可选的idempotency_key。同一次用户意图应复用稳定的 Key,避免网络重试导致重复计费。
验证方式:到设置 → 日志与观测打开请求日志,然后发起一次视频生成请求。在日志页找到该条记录,检查以下字段:
request model:客户端原始请求模型;resolved provider:最终命中的供应商;resolved model:最终请求的模型;- 状态码和错误信息,包括 ai-gateway 返回的状态码。
任务完成时,生成视频保存在 CCR 私有数据目录,返回结果包含本地文件路径、MIME 类型、文件大小、SHA-256 和限时访问 URL;视频 URL 支持 HTTP Range,播放器可据此按需加载。文档的建议是:先使用一个测试 Fusion 模型验证供应商是否实现了对应媒体端点,再用于生产路由。请求日志字段与筛选方式见 日志与可观测性。
生视频失败时检查哪些项
生视频失败时,按以下顺序排查:
- 供应商模型是否声明或实际支持视频生成;
- Fusion 工具里是否为视频生成选择了正确模型;
- 视频模型的重试次数和备用视频模型配置;
- 请求日志中 ai-gateway 返回的状态码和错误信息;
- 图生视频或参考图生视频的输入文件是否位于允许读取的目录内。
第 5 项是容易踩的边界:本地图片输入会校验真实路径、文件头和大小。CCR 默认允许范围明确的当前工作目录、系统临时目录和 CCR 配置目录;文件系统根目录、用户主目录及其上级目录不会被隐式信任。确实需要扩大范围时,显式配置allowedInputRoots。
如果不需要经过 Fusion,而是让独立的 MCP 客户端直接消费同一套媒体能力,CCR 文档给出了私有端点http://127.0.0.1:3456/__ccr/media/mcp,请求头带Authorization: Bearer <CCR API Key>——把<CCR API Key>替换为你实际配置的 CCR API Key;产物 URL 使用独立限时 token,不复用这个 Key。
【免费下载链接】claude-code-routerOne local control plane for every AI agent: route across models, fuse new capabilities, orchestrate tools, and stay fully in control.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-code-router
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考