
Video Gen Client 的功能
Video Gen Client 为多个视频生成服务商提供统一的异步 Python 客户端:字节跳动的 Seedance、快手的 Kling、MiniMax/Hailuo,以及阿里的 Wan。无需分别对接不同服务商,你可以通过统一的命令行界面或 Web 应用发现可用模型、提交生成任务、检查任务状态并下载结果。
该项目定位为围绕服务商 API 编写的集成代码。由于这些 API 及其模型 ID 可以独立变化,服务商适配器可能需要随时间更新。
支持的服务商和模型
客户端目前列出以下服务商系列及 API 模型 ID:
- Seedance:2.5 版本使用
doubao-seedance-2.5;2.0 版本使用doubao-seedance-2-0-260128;2.0 Mini 和 2.0 Fast 版本分别使用doubao-seedance-2-0-mini-260615和doubao-seedance-2-0-fast-260128。 - Kling:Kling 3.0 和 3.0 Omni 分别使用
kling-v3和kling-v3-omni。其他列出的模型包括kling-v2-6、kling-v2-5-turbo和kling-v2-1-master。 - MiniMax/Hailuo:H3 使用
MiniMax-H3,2.3 版本使用MiniMax-Hailuo-2.3和MiniMax-Hailuo-2.3-Fast。 - Wan:Wan 3.0 使用
wan3.0。Wan 2.7、2.6 和 2.5 提供专用的文生视频、图生视频、参考生视频或预览模型 ID。
安装和配置客户端
- 克隆仓库:
git clone https://github.com/letorig/video-generator-client cd video-generator-client - 创建虚拟环境:
python -m venv .venv - 激活环境。在 Windows 上运行:
在 macOS 或 Linux 上运行:.venv\Scripts\activatesource .venv/bin/activate - 安装带 Web 支持的软件包:
pip install -e ".[web]" - 添加服务商凭据:将
.env.example复制为.env,然后添加计划使用的服务商凭据。README 未规定统一的凭据组合,因此只需配置工作流所需的服务。
使用 CLI 时,生成的输出会保存到 output 文件夹。
使用命令行界面
安装完成后,video-gen 命令提供发现服务商、选择模型、启动生成任务和检查结果的主要工作流。
发现服务商和模型
首先查看可用的命令和服务商:
video-gen --help
video-gen providers要查看某个服务商的模型,请将服务商名称传递给 models 命令:
video-gen models wan生成视频
使用提示词、服务商、模型和时长提交文生视频请求:
video-gen generate wan --prompt "A snowy forest at dawn" --model 2.1 --duration 5该命令会通过选定的服务商提交任务,并将生成的输出保存到 output 文件夹。构建自己的命令时,请使用项目公开的服务商和模型值,因为服务商支持的模型可能会发生变化。
检查任务状态
对于异步生成工作流,请使用服务商和任务 ID 查询任务:
video-gen status wan TASK_ID将 TASK_ID 替换为生成工作流返回的标识符。
运行 Web 界面
该项目直接在 Python 软件包中包含 Web 界面。不需要 npm、Node.js 或单独的前端构建步骤。FastAPI 提供 HTML 界面,并为服务商发现、视频生成、任务轮询和 MP4 下载提供 JSON 端点。
使用默认主机和端口启动服务器:
video-gen serve你也可以显式指定主机和端口:
video-gen serve --host 127.0.0.1 --port 8000要启用自动重载运行服务器,请使用:
video-gen serve --host 0.0.0.0 --port 9000 --reloadWeb UI 功能
该界面支持服务商和模型选择、文生视频和图生视频输入、负面提示词、时长、宽高比及分辨率控制。它还提供实时任务状态轮询、视频预览、MP4 下载,以及当前服务器会话中的内存任务历史记录。
实用工作流建议
- 生成前先检查:选择服务商或模型前,运行
video-gen providers和video-gen models PROVIDER。 - 限定凭据范围:只将当前工作流所需的服务商凭据添加到
.env文件。 - 使用异步任务跟踪:可以通过
status命令和 Web 界面的实时轮询监控生成进度。 - 选择适合工作流的界面:CLI 适合脚本和基于终端的任务,而 Web UI 提供交互式控件和预览功能。
- 预期集成维护:服务商 API 和模型 ID 独立于此 SDK,可能会发生变化,因此服务商更新服务时,请核验适配器和模型目录。
项目结构
该仓库将客户端、命令行界面、Web 服务器、模型目录、服务商适配器、静态 Web 资源、示例、测试和工具代码分开组织:
src/video_gen/
├── client.py
├── cli.py
├── web.py
├── catalog.py
├── static/index.html
├── providers/
└── utils/配置由 .env.example 表示,而打包和安装设置定义在 pyproject.toml 中。该代码库还包含 examples/、tests/ 以及可选的 mcp_server/ 目录。
结论
Video Gen Client 为 Python 开发者提供了统一的方式,用于处理多个视频生成服务提供商。在虚拟环境中安装它,配置所需的凭据,发现受支持的模型,然后通过 CLI 或随附的 FastAPI Web UI 提交任务。在生产环境中使用时,请关注服务提供商的变化,因为模型 ID 和 API 行为可能会独立于客户端发生变化。
