教你快速利用 GPT-4o 实现自动生成图文
本文主要介绍如何通过 AI 大模型自动生成图文博客,市面上的大部分只能生成文章,并不能自动匹配一些图片。但基于GPT4o的识图能力,我们可以直接自动化生成视频的图文博客,更好的解放双手!
前情提要
就在前几天,OpenAI 春季发布会公布了自家的新模型 GPT-4o !虽然只多一个“o”,但却多了很多新功能。按发布会公布的:GPT-4o可以接受文本、音频和图像三者组合作为输入,甚至官方说后面会开放视频能力!不过按照 OpenAI 的尿性,估计要鸽个一年半载了。
恰巧这几天,我正在更新我的 AAVT 翻译项目,考虑到新模型的识别图像非常给力,于是产生了下面的想法:既然 OpenAI 没有开放视频功能,那不如咱自己让 Whisper 和 GPT-4o 梦幻联动一番,搞个关于视频的“伪能力”!?
工作流程
目前市面上的大部分只能生成文章,并不能自动匹配一些图片,这就导致虽然文章写出来了,但总是觉得空空的。于是我基于 GPT-4o 强大的识图能力,实现了可以自动化生成图文博客的流程,让我们可以更好的解放双手和大脑 (bushi)!
整个生成的工作流程大致如下:
- Whisper 提取视频的字幕内容并转换为 SRT 格式
- OpenCV 每秒截取视频的一张图片
- GPT-4o 根据 SRT 时间戳信息选取关键帧图片
- 任意大模型 对字幕内容进行提炼写作
- 将写作内容和关键帧图片打包给 GPT-4o 生成 MarkDown 格式的图文
* 转换成 SRT 格式是因为这样带有时间戳,让 4o 筛选更精准的关键帧图片
* 让 LLMs 先进行文本总结是为让效果更稳定,内容质量更高一筹
编写主要算法
1. 提取视频字幕
这里其实使用本地 Whisper 识别可以更省钱、且不会有文件大小限制。不过为了简化教程,因此这里以 OpenAI 调用为例。
直接建立一个函数使用 OpenAI 接口调用 Whisper 识别,需要的 OpenAI 库,记得 pip install openai
!
2. 转换 音频 格式
由于我们使用 OpenAI 调用 方式,因此视频文件太大会导致 OpenAI 不接收,所以我们使用 moviepy 库增加一个音视频格式转换逻辑。记得 pip install moviepy
!
3. 截取每秒视频帧
我们可以利用 OpenCV 这个库来实现截取每秒视频帧,速度和效果都很好。记得 pip install opencv-python
!
4. 转换 SRT 格式
由于 whisper 无法直接输出 SRT 格式,同时为了 GPT-4o 的关键帧选择效果更好,我们手动编写处理函数将字幕内容转换为SRT格式。
5. 调用OpenAI生成内容
我们编写一个 OpenAI 格式接口的函数,便于我们后面调用其来生成写作内容和GPT-4o输出最终的 Markdown 图文。
Good!至此我们的主要逻辑已经处理完毕!
【Part3 工作流程化】
1. 合并使用流程
明白并编写完了主要算法逻辑后,下面就是动手合并这些处理逻辑了!我们将流程打包到一起,大致内容如下:
2. 开发 web 页面
为了操作可视化和更好的操作,我这里可以使用的老朋友 Streamlit 来快速开发一个 Web 页面。具体源码我已经发布在 GitHub ,欢迎 Star 和交流!
【图文效果测试】
点击运行,等待结果!想看最终文件可以点 这里 查看
使用下来我觉得还不错,有图,有文,有代码,就是比较费 Token。不过目前看来,这个流程的优化空间还是很大的,等我有时间的话继续改进吧!也期待后续 GPT-4o 能放出更多实用功能让我不要手搓流程~哈哈哈。
相关源码我已经发布在 GitHub ,欢迎 Star 和交流!