story-flicks
AI故事短视频生成工具:输入主题,一键输出含配图、配音、字幕的完整故事视频
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
AI故事短视频生成工具:输入主题,一键输出含配图、配音、字幕的完整故事视频
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Story Flicks 是一款基于大语言模型的 AI 故事短视频生成工具,用户输入一个故事主题,系统自动完成故事脚本撰写、AI 配图生成、语音配音合成与字幕制作,最终输出一段完整的高清故事短片。
短视频时代,内容创作者面临的最大瓶颈不是拍摄素材,而是脚本创意与后期制作的漫长周期。一个几分钟的故事短片,从写脚本、找配图、配音到剪辑,熟练创作者也需要数小时。 2025 年初,一位独立开发者(GitHub: alecm20)将这个痛点用 AI 全链路自动化解决了:Story Flicks 将 GPT 的文本生成能力、图像生成模型的视觉创作能力、TTS 语音合成以及 MoviePy 视频编辑pipeline串联起来,用户只需输入"兔子和小狐狸的友情故事",一个完整短片就能自动生成。 项目发布后在 GitHub 迅速获得 2400+ stars,背后反映的是 AIGC 从"对话助手"向"内容工厂"演进的行业趋势。
整个 pipeline 分为 5 个自动化环节:
项目支持灵活的模型提供商组合,用户可以在 .env 中自由配置:
这种设计让用户不受单一平台限制,既可以选择官方 API(品质优先),也可以用 SiliconFlow 等聚合平台降低成本。
前端使用 React + Ant Design + Vite 构建,界面简洁直观。用户只需填入 API Key、选择模型组合、输入故事主题,点击生成即可。Docker Compose 中前端容器配置了 2GB 内存限制与 1 核 CPU 上限,适合中等配置机器部署。
项目采用标准前后端分离架构:
story-flicks/
├── backend/ # Python FastAPI 后端
│ ├── app/
│ │ ├── api/ # API 路由 (stories, video, voice, llm)
│ │ ├── models/ # 数据模型定义
│ │ ├── schemas/ # Pydantic 请求/响应 schema
│ │ └── services/ # 核心业务逻辑(LLM、Video、TTS)
│ ├── main.py # FastAPI 入口
│ ├── Dockerfile # 单阶段 Python 3.10 slim
│ └── requirements.txt # 依赖清单
└── frontend/ # React TypeScript 前端
├── src/
├── package.json # Ant Design + Vite
└── Dockerfile # Node 22 基础镜像
FastAPI 生态:FastAPI 0.104.1 + Uvicorn 提供异步 REST API,配合 Pydantic 2.5.2 做数据校验。Python 版本要求 ≥3.10,使用 Python-dotenv 管理环境变量,无需额外配置管理工具。
AI 集成层:
openai SDK(1.59.7):对接 OpenAI API 及兼容格式dashscope(1.22.0):对接阿里云百炼平台edge_tts(6.1.19):微软 Azure TTS 的 Python 封装,无需 Azure 账号即可使用高质量中文语音视频处理:
moviepy(2.1.1):Python 视频编辑核心库,负责图片 + 音频 + 字幕的合成imageio-ffmpeg(0.4.9):moviepy 的 FFmpeg 后端numpy + Pillow:数值计算与图像预处理React 18 + TypeScript + Vite 5 构建工具链,配合 Ant Design 5.x UI 组件库。Vite 的快速热重载特性提升了开发体验。TypeScript 配置包含 tsconfig.app.json(应用代码)与 tsconfig.node.json(构建配置)分离,结构规范。
后端使用单阶段 python:3.10-slim 镜像,安装阿里云 pip 镜像源加速,CMD 启动 Uvicorn 并开启 --reload 开发模式(生产环境建议关闭)。
前端使用 node:22 镜像,npm i --include=dev 安装全量依赖(包括 ESLint),npm run dev 启动 Vite 开发服务器。
缺点:两个 Dockerfile 均非多阶段构建(前端镜像体积 ~1GB+),生产部署建议改用多阶段构建将静态资源打包进 Nginx 镜像。
项目提供完整的 docker-compose.yml,两个服务(backend + frontend)共享 app-network 桥接网络,前端默认依赖后端。部署流程:配置 .env → docker-compose up → 访问 http://localhost:5173。对于没有 GPU 的用户极为友好,所有 AI 能力均通过外部 API 调用,本地无需任何 GPU 资源。
后端手动部署需要 Python 3.10+ 环境,安装 requirements.txt 后直接运行 uvicorn main:app --reload。前端手动部署需要 Node 22+,执行 npm install && npm run dev。前后端端口分别为 8000 和 5173,需要配置 .env 中的 API Key。
完整的视频生成需要多次 LLM 调用(脚本生成 + 场景拆解 + 图像描述优化)和多次图像生成 API 调用。按照 OpenAI GPT-4o + DALL-E 3 的官方定价,生成一条 60 秒短片的 API 成本约 0.5-1 美元,若使用阿里云百炼或 SiliconFlow 可显著降低。
MoviePy 合成的视频画面为静态图片切换(非动态画面),字幕为硬编码 SRT 叠加。如果故事需要动态镜头运动或复杂特效,当前 pipeline 难以满足。对于强调画面质感的创作者,生成的视频更接近"动态绘本"而非真正的视频内容。
项目发布于 2025 年 1 月,活跃维护至 3 月(发稿时),25 个 open issues 说明社区活跃,但尚无 release 版本,生产使用需要评估稳定性。
Story Flicks 展现了 AI 全链路内容生成的可行性范式:将 GPT 文本生成 + 图像生成 + TTS + 视频编辑整合为端到端 pipeline,零 GPU 需求即可部署。对于内容创作者、自媒体运营者或教育场景的知识短视频制作,这是一个值得关注的原型级工具。开发者也可以将其作为 FastAPI + React 全栈开发或 AI 应用集成的参考架构。
适合人群:内容创作者、教育工作者、AI 应用开发者(参考架构) 不适合:需要高质量动态视频的专业影视制作