微信扫一扫 分享朋友圈

已有 74 人浏览分享

[API调用]    使用gp4api的gpt-4-vision-preview模型做视频解读,实现视频解说功能

API调用 2024-4-24 22:54:2774 0
gpt-4-vision-preview模型的作用是图像识别,对于视频来说,视频由多个帧组合,每个帧是一个画面,所以我们只要适时提取这些帧的画面把它传送给api,在给予一定的提示,api模型就可以很容易的进行解读了,我们还可以在输出内容时使用提示词要求内容的输出方式,这样就可以得到我们想要的内容了。代码我会放到最后,先讲逻辑。

先看版主的示例

Chatgpt-使用gp4api的gpt-4-vision-preview模型做视频解读,实现视频解说功能(1)

本示例中用到的库

import cv2
import requests
import base64
import time
import json
from PIL import Image
import io

脚本的逻辑

1.提取帧图片

通过cv2 进行视频帧提取为图片,这里我们可以自定义,比如每隔5秒提取一次,这样可以尽量的减少工作量和token的使用量。

2.对图片进行压缩处理
通过cv2 对图片进行压缩包括;边缘检测、特征提取,尺寸调整
这一步是关键,因为接下来的图片转码会生成大量的字符串一个图片可能要几十万个字节,而我们的模型一次最多接收10000个token,如果不对图片进行压缩处理根本传不上去,而且还会消耗我们大量的token。

3.把图片转换成64base编码字符串

图片处理完成后,通过 base64 库把我们处理好的图片转成base64编码。
这一步需要谨慎处理,版主建议在本地测试,先不要加api,先测试出编码的长度,一般我建议压缩到一个图片几百到几千字节后在提交,不然一个视频中大量的帧图片加一起会消耗掉你很多的token,10刀100万token也玩不了几次。


4.设置提示词

转码长度满意之后,我们再提交api时还需要附加图片的提示词,我们可以告诉模型我们的视频主题是什么,给他一个标题,这是模型要求的,和我们平时使用gpt4进行图片分析的逻辑是一样的,上传图片后要加提示词给与正确的引导。不然它就会给你分析编码本身了~

提示词

Chatgpt-使用gp4api的gpt-4-vision-preview模型做视频解读,实现视频解说功能(2)

输出值

Chatgpt-使用gp4api的gpt-4-vision-preview模型做视频解读,实现视频解说功能(3)

这是版主刚刚粗略写的一个提示词,我告诉了模型我的主题是什么,然后要求它做什么,并以什么样的形式输出内容。当然懂得提示词的高手都知道这一块怎么去更好的要求它的重点关注和输出方法,这里我们演示就不做过多的解读了。

5.其他要求

通过之前的设定,已经可以得到想要的内容了,如果对结果不满意,那就优化提示词,最终得到满意内容之后我们还可以使用语音类api进行解说。比如用openai的tts api,也可以把这个程序做出网页版,用浏览器自带的文转语音。

6.完整代码展示

需要根据自己要求进行调节,其中有关于字符限制提取帧的时长和间隔,图片处理的大小尺寸,以及提示词环节都有相关注释可以自定义的调节

import cv2
import requests
import base64
import time
import json
from PIL import Image
import io

def feature_extraction(frame):
    """对图像进行简单的边缘检测,提取特征。"""
    gray
支付10金钱,阅读全文
还有更多的精彩内容,作者设置为付费后可见
精彩内容推荐
  • 联系我们
  • 邮箱:1992608358#qq.com(请把#改成@)
  • 微信:leileiseo
  • QQ客服 1992608358
  • 工作时间:周一至周五(早上9点至下午5点)
  • 微信公众平台

  • 扫描访问手机版

QQ|NIUBOYI ( 京ICP备17025393号 )

GMT+8, 2024-5-16 12:47 , Processed in 0.056193 second(s), 37 queries .

POWERED BY NIUBOYIAI! 主理人:NIUBOYIAI  点亮哥

Copyright © 2001-2020, NIUBOYI AI.