VitaFrame 把短视频创作拆成一条可编辑、可追踪、可验证的 AI 工作流。
问题与定位
VitaFrame 面向的不是“调用一次模型就得到成片”,而是短视频生产中的连续问题:参考内容拆解、脚本分镜编辑、长任务排障,以及最终文件与画面的可验证性。
项目把素材理解、脚本生成、Timeline、渲染和发布追踪组织成可追踪链路,让 AI 输出成为可继续修改的生产资料。
长链路不能靠一个大 Prompt 兜底
一次生成不能天然解决状态、权限、契约和产物管理。VitaFrame 将前端工作台、API 业务事实、AI 结构化推理与 worker 长任务分开。
- API 管理项目、任务、幂等和产物索引。
- AI 不直接写业务库。
- worker 承载生成、配音、组件补全与渲染。
核心方案:以显式中间产物连接创作阶段
主流程由一组有明确输入、输出和状态的阶段组成:
- 素材导入或来源视频采集。
- 单视频或多视频分析。
- 沉淀 Hook、Storyboard、Structure。
- 生成脚本分镜与 GenerationVersion。
- Timeline 编辑。
- 生成 VideoSpec、组件、旁白和 HyperFrames。
- 产出 MP4、产物与发布记录。
项目采用 Web / API / AI / worker / shared schema 分层:AI 通过 FastAPI + LangGraph 返回结构化结果,不直接写业务库;API 负责校验、归一化、权限与持久化;Redis/BullMQ 排队,PostgreSQL/Prisma 保存事实,MinIO/S3 保存文件本体。
关键工程实现
1. 从页面请求到 JobStep 的长任务编排
脚本生成视频从页面提交 script 或 structuredScenes 开始,Web client 调用 POST /video-generation/from-script。
API 校验归属和幂等 key 后创建 Job,BullMQ 交给 worker 的 processor 分阶段执行。主链覆盖请求校验、脚本分析、VideoSpec、组件、旁白、Timeline、HyperFrames、MP4 与产物保存,页面和排障都围绕 Job/JobStep 展开。
2. 双层契约把模型输出挡在业务边界外
AI 服务在 Python 侧用 Pydantic contract 描述结构生成、脚本分析、脚本视频生成和视觉组件生成等请求与返回。
API 的 ai-orchestrator.client.ts 再使用 Zod response schema 对 graph 响应做二次 parse。通过 parse 后,VideoSpec 还要经过 validateVideoSpec 和质量评分。
字段缺失、类型错误、枚举漂移或非法 JSON 不应直接污染数据库。部分 graph 设有本地 fallback 或 repair 路径,但流程不中断不等于最终内容达到生产质量。
3. 视觉组件、渲染和产物都要有证据
视觉组件 resolver 处理 PNG、SVG、registry 或 procedural 来源并执行质量门控。HyperFrames runner 做 validate/inspect,渲染后由 runVisualQa 关注黑屏与布局。
RenderJob、RenderArtifact、ModelInvocation 和 storageKey 分别提供任务、产物索引、模型审计与文件定位。任务成功不等于画面正确或文件可读。
边界与验证
资料来自 2026-07-14 的仓库静态快照(devv/28d126a)及源码笔记,能证明分层、入口、JobStep、契约和质量门存在。
- 不能证明 provider、TTS、HyperFrames、队列、存储或完整链路已现场运行。
- 没有规模、性能或部署数据。
- 相关 API、VideoSpec、组件、HyperFrames 与 AI tests 是验证出口,本次未执行。
若要验收一个具体改动,应按以下顺序选择最窄测试:
- 请求 schema。
- AI response parse。
- VideoSpec validate/quality。
- 组件 resolver。
- HyperFrames validate/inspect/render。
- Visual QA 与 RenderArtifact。
同时保留 JobStep、ModelInvocation、日志和 artifact,避免用 MP4 生成成功替代画面质量检查。
总结
VitaFrame 的工程价值在于把视频能力放进可编辑、可观察、可诊断的产品链路:Web 提供操作面,API 维护事实,AI 输出结构化候选,worker 处理长任务,契约和质量门控制进入下游的条件,产物记录则让问题能够回到具体阶段。
它展示的是围绕不稳定输出、跨服务状态和渲染失败建立的可复盘全栈工作流。
评论