Subvert 项目介绍
Subvert 是一个创新工具,利用 OpenAI 技术快速生成视频的字幕、章节和摘要。它的开发仍在进行中,因此用户在使用过程中若发现任何问题,可以在 GitHub 上提交反馈。
入门指南
要使用 Subvert,用户需要在本地计算机上安装 Docker,并拥有一个 OpenAI API 密钥。Subvert 通过一个简单的 Docker 镜像运行,启动只需一行命令:
docker run -it -p 80:8080 -e OPENAI_API_KEY=sk-123abc aschmelyun/subvert
这段命令会启动一个服务器,并通过 http://localhost 使应用可用。
工作原理
Subvert 的使用过程如下:
- 用户选择要处理的视频文件,并决定是否生成章节和摘要。
- 视频被发送到一个 API,视频的音频通过 FFMpeg 提取。
- 然后音频被发送到 OpenAI 的 Whisper 模型中,转录为常见的 vtt 格式字幕。
- 如果用户选择生成章节或摘要,这些字幕会被传送到 ChatGPT 模型中,生成所需长度的章节和简短的摘要,类似 YouTube 描述中的内容。
配置
用户可以通过在命令中加入额外的 -e
标志,并传入环境变量来调整容器中的某些参数:
OPENAI_API_KEY
(必需) - 用于与 OpenAI API 通信的密钥。UPLOAD_MAX_FILESIZE
- 更改 PHP 的上传最大文件大小设置。默认值为256M
。MEMORY_LIMIT
- 更改 PHP 的内存限制设置。默认值为512M
。
从源代码启动
如果用户的本地机器上安装了 PHP 8.1+ 和 npm,也可以直接从源代码启动应用。首先,将仓库检出到所需位置,然后导航到 src
目录并运行:
./startup.sh
用户也可以分别运行 startup.sh
中的命令以达到同样效果。
部署
由于项目完全封装在一个 Dockerfile 中,因此可以立即部署到任意安装了 Docker 的服务器上。此外,Subvert 的 Docker 镜像也可以在 AWS、Azure、GCP、Fly.io 等云计算实例上运行。
注意:该镜像目前只暴露不安全的 :80 http 端口。
许可证
Subvert 采用 MIT 许可证。有关详细的信息,请参阅许可证文件。