Skip to content

About

🎥 基于Gradio的视频Caption生成系统,支持ollama本地模型和在线API

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

🎥 视频Caption系统

一个基于Gradio的视频caption生成系统,支持本地ollama模型和在线API模型,提供帧级和视频片段级的caption功能。

✨ 功能特性

🎯 核心功能

  • 视频上传: 支持多种视频格式
  • 双模型支持:
    • Ollama本地模型(如llava、qwen-vl等)
    • 在线API模型(OpenAI、Claude等)
  • 双caption模式:
    • 帧模式:抽取视频帧进行逐帧分析
    • 视频片段模式:直接分析视频片段
  • 自定义配置: 可调节抽帧频率、片段时长、提示词等

🔧 技术特点

  • 现代化Gradio界面
  • 实时连接状态检测
  • 临时文件自动清理
  • 详细的错误处理

📋 系统要求

  • Python 3.8+
  • OpenCV
  • FFmpeg(用于视频处理)

🚀 快速开始

1. 安装依赖

pip install -r requirements.txt

2. 启动Ollama(可选)

如果使用本地模型,请先启动ollama服务:

ollama serve

下载支持视觉的模型:

# 下载llava模型
ollama pull llava

# 或下载qwen-vl模型
ollama pull qwen-vl

3. 运行应用

python app.py

应用将在 http://localhost:7862 启动。

📖 使用指南

基本流程

  1. 上传视频: 在左侧上传视频文件
  2. 选择模型:
    • Ollama本地模型:选择已安装的视觉模型
    • 在线API:填入API密钥、URL和模型名
  3. 配置参数: 根据需要选择caption模式和相关参数
  4. 自定义提示词: 编辑prompt来指导模型生成特定风格的caption
  5. 生成Caption: 点击生成按钮开始处理

Caption模式说明

帧模式

  • 从视频中按指定频率抽取帧
  • 适合需要详细分析每个场景的情况
  • 可配置抽帧频率(0.1-5.0帧/秒)和最大帧数(1-30帧)

视频片段模式

  • 直接提取视频片段进行分析
  • 适合支持视频输入的模型(如qwen-vl、llava-one-vision)
  • 可配置起始时间和片段时长(1-10秒)

支持的模型

Ollama本地模型

  • llava: Meta的视觉语言模型
  • qwen-vl: 阿里的视觉语言模型
  • llava-phi3: 基于Phi-3的视觉模型
  • 其他支持视觉的ollama模型

在线API模型

  • GPT-4 Vision (OpenAI)
  • Claude 3 (Anthropic)
  • Qwen-VL (通义千问)
  • 其他兼容OpenAI格式的视觉API

⚙️ 配置说明

环境变量(可选)

# 设置ollama服务地址(默认: http://localhost:11434)
export OLLAMA_HOST=http://your-ollama-server:11434

API配置示例

# OpenAI
API Key: sk-your-openai-key
Base URL: https://api.openai.com
Model Name: gpt-4-vision-preview

# 自建API服务
API Key: your-api-key
Base URL: https://your-api-server.com
Model Name: qwen-vl-chat

🎯 提示词示例

帧模式提示词

请详细描述这些视频帧中发生的事情。包括:
1. 场景和环境描述
2. 人物和动作
3. 重要物体和元素
4. 情感和氛围
请用中文回答,内容要详细且有条理。

视频片段模式提示词

请观看这个视频片段并详细描述其中的内容,包括:
1. 整体场景和背景
2. 主要事件和动作序列
3. 人物表情和互动
4. 视觉效果和转场
5. 音响环境(如果有)
请提供一个连贯的描述,突出视频的核心内容。

🔧 故障排除

常见问题

  1. Ollama连接失败

    • 确保ollama服务正在运行
    • 检查端口11434是否被占用
    • 尝试重启ollama服务
  2. API连接失败

    • 检查API密钥是否正确
    • 确认Base URL格式(需要包含协议如https://)
    • 验证模型名称是否支持视觉功能
  3. 视频处理失败

    • 确保已安装FFmpeg
    • 检查视频格式是否支持
    • 尝试转换为mp4格式
  4. 内存不足

    • 减少最大帧数
    • 缩短视频片段时长
    • 降低抽帧频率

📁 项目结构

video-caption/
├── app.py              # 主应用文件
├── video_processor.py  # 视频处理模块
├── model_handler.py    # 模型调用模块
├── requirements.txt    # 依赖列表
└── README.md          # 说明文档

🤝 贡献

欢迎提交Issue和Pull Request来改进这个项目!

�� 许可证

MIT License

About

🎥 基于Gradio的视频Caption生成系统,支持ollama本地模型和在线API

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages