多模态处理管道
Multimodal Processing Pipeline
如何在Agent系统中实现图片/视频等多模态输入的自动处理与模型路由
子问题
1.视频抽帧与图片压缩
2.LLM/VLM自动路由
3.全局token预算控制
4.多格式媒体归一化
5.MCP 协议层媒体数据透传策略
6.CPU 密集型媒体处理的异步卸载
各项目的解法1 solutions
Signals
横向对比
| 维度 | FireRed-OpenStoryline |
|---|---|
| 处理架构 | MCP Sampling 双轨:Server 透传路径,Client 端 callback 做 base64 转换和模型调用 |
| 路由策略 | 隐式路由:bool(media_inputs) 决定 LLM/VLM,调用方无需指定模型 |
| 帧采样策略 | 时间段 bucket center 采样:fps×duration 动态帧数,clamp [2,6] |
| 压缩策略 | 统一 JPEG:长边 600px LANCZOS + quality=80 + optimize |
| 预算控制 | 全局计数器 GLOBAL_MAX_IMAGE_BLOCKS=48,跨所有媒体项累计 |
| 输入归一化 | 三格式(str/tuple/dict)统一为 {url, in_sec, out_sec} 字典 |
| 异步策略 | asyncio.to_thread 卸载 PIL/moviepy CPU 密集操作 |
最佳实践
1.根据media字段自动选择文本或视觉模型
2.设置全局最大图片数防止payload溢出
3.用 asyncio.to_thread 卸载 PIL/moviepy 同步操作避免阻塞事件循环
4.bucket center 采样避免视频边界帧(黑帧/转场帧)