新上线今天0 投票
在 Amazon SageMaker AI 上用 vLLM-Omni 生成图像与视频(第二部分)
一个容器,两个端点:图像与视频生成的工作流
AWS 近日发布技术博客,介绍如何在 Amazon SageMaker AI 上使用同一个 vLLM-Omni 深度学习容器(DLC) 部署两个生成式媒体模型,实现从文本到图像、再到视频的完整流水线。这是该系列的第二部分,第一部分聚焦实时语音的双向流式传输,本部分则覆盖实时推理与异步推理两种模式。
核心流程
整个方案的核心思路是:同一个容器镜像,通过环境变量切换模型,分别部署到两个 SageMaker 端点。
- 实时端点:运行 FLUX.2-klein-4B 图像生成模型,请求路由到
/v1/images/generations,结果以内联 base64 编码的 PNG 返回。 - 异步端点:运行 Wan2.1-VACE-1.3B 视频生成模型,请求路由到
/v1/videos/sync,生成耗时较长,输出 MP4 文件直接写入 Amazon S3。
工作流从文本提示词开始,先由图像模型生成静态图片,再将图片和运动提示词传递给视频端点,最终从 S3 取回生成的 MP4。示例代码还包含一个可选的 Streamlit 界面,方便交互操作。
为什么值得关注
vLLM-Omni 将 vLLM 的能力从文本生成扩展到文本、音频、图像和视频的多模态处理,并通过 OpenAI 兼容 API 暴露接口。这意味着开发者可以用熟悉的调用方式,在 AWS 上快速搭建生成式媒体应用。
AWS DLC 则封装了框架和依赖,并针对 SageMaker AI 添加了路由中间件,减少了服务栈的差异性。两个端点共享同一个容器镜像,但可以根据各自负载选择不同的实例类型和推理选项——图像模型适合实时响应,视频模型则利用异步推理避免长时间等待。
关键设计点
- 容器复用:固定版本的 vLLM-Omni DLC 同时服务两个模型,部署脚本只需修改
SM_VLLM_MODEL环境变量即可切换加载的模型。 - 存储解耦:视频生成结果不直接返回,而是写入 S3,客户端通过轮询或通知机制获取,适合耗时较长的任务。
- 请求路径:应用程序发送图像提示词到 FLUX.2-klein,收到 PNG 后调整尺寸,再连同运动提示词发送到视频端点。
该方案为希望在 AWS 上构建多模态生成应用的开发者提供了一个可复用的参考架构,兼顾了实时性与长任务处理的需求。