名称: AI多模态 描述: 使用Google Gemini API处理和生成多媒体内容。能力包括分析音频文件(带时间戳的转录、总结、语音理解、音乐/声音分析,最长9.5小时)、理解图像(字幕、对象检测、OCR、视觉问答、分割)、处理视频(场景检测、问答、时序分析、YouTube URL、最长6小时)、提取文档(PDF表格、表单、图表、图表、多页)、生成图像(文本到图像、编辑、组合、优化)。当处理音频/视频文件、分析图像或截图、处理PDF文档、从媒体提取结构化数据、从文本提示创建图像或实施多模态AI功能时使用。支持多个模型(Gemini 2.5/2.0),上下文窗口高达2M令牌。 许可证: MIT 允许的工具:
- Bash
- 读取
- 写入
- 编辑
AI多模态处理技能
使用Google Gemini的多模态API处理音频、图像、视频、文档和生成图像。所有多媒体内容理解和生成的统一界面。
核心能力
音频处理
- 带时间戳的转录(最长9.5小时)
- 音频总结和分析
- 语音理解和说话者识别
- 音乐和环境声音分析
- 可控语音的文本到语音生成
图像理解
- 图像字幕和描述
- 对象检测与边界框(2.0+)
- 像素级分割(2.5+)
- 视觉问答
- 多图像比较(最多3,600张图像)
- OCR和文本提取
视频分析
- 场景检测和总结
- 带时序理解的视频问答
- 带视觉描述的转录
- YouTube URL支持
- 长视频处理(最长6小时)
- 帧级分析
文档提取
- 原生PDF视觉处理(最多1,000页)
- 表格和表单提取
- 图表和图表分析
- 多页文档理解
- 结构化数据输出(JSON模式)
- 格式转换(PDF到HTML/JSON)
图像生成
- 文本到图像生成
- 图像编辑和修改
- 多图像组合(最多3张图像)
- 迭代优化
- 多种宽高比(1:1, 16:9, 9:16, 4:3, 3:4)
- 可控样式和质量
能力矩阵
| 任务 | 音频 | 图像 | 视频 | 文档 | 生成 |
|---|---|---|---|---|---|
| 转录 | ✓ | - | ✓ | - | - |
| 总结 | ✓ | ✓ | ✓ | ✓ | - |
| 问答 | ✓ | ✓ | ✓ | ✓ | - |
| 对象检测 | - | ✓ | ✓ | - | - |
| 文本提取 | - | ✓ | - | ✓ | - |
| 结构化输出 | ✓ | ✓ | ✓ | ✓ | - |
| 创建 | TTS | - | - | - | ✓ |
| 时间戳 | ✓ | - | ✓ | - | - |
| 分割 | - | ✓ | - | - | - |
模型选择指南
Gemini 2.5系列(推荐)
- gemini-2.5-pro:最高质量,所有功能,1M-2M上下文
- gemini-2.5-flash:最佳平衡,所有功能,1M-2M上下文
- gemini-2.5-flash-lite:轻量级,支持分割
- gemini-2.5-flash-image:仅图像生成
Gemini 2.0系列
- gemini-2.0-flash:快速处理,对象检测
- gemini-2.0-flash-lite:轻量级选项
功能需求
- 分割:需要2.5+模型
- 对象检测:需要2.0+模型
- 多视频:需要2.5+模型
- 图像生成:需要flash-image模型
上下文窗口
- 2M令牌:约6小时视频(低分辨率)或约2小时(默认)
- 1M令牌:约3小时视频(低分辨率)或约1小时(默认)
- 音频:32令牌/秒(1分钟 = 1,920令牌)
- PDF:258令牌/页(固定)
- 图像:258-1,548令牌基于大小
快速开始
先决条件
API密钥设置:支持Google AI Studio和Vertex AI。
技能按此顺序检查GEMINI_API_KEY:
- 进程环境:
export GEMINI_API_KEY="your-key" - 项目根目录:
.env .claude/.env.claude/skills/.env.claude/skills/ai-multimodal/.env
获取API密钥:https://aistudio.google.com/apikey
对于Vertex AI:
export GEMINI_USE_VERTEX=true
export VERTEX_PROJECT_ID=your-gcp-project-id
export VERTEX_LOCATION=us-central1 # 可选
安装SDK:
pip install google-genai python-dotenv pillow
常见模式
转录音频:
python scripts/gemini_batch_process.py \
--files audio.mp3 \
--task transcribe \
--model gemini-2.5-flash
分析图像:
python scripts/gemini_batch_process.py \
--files image.jpg \
--task analyze \
--prompt "描述这张图片" \
--output docs/assets/<输出名称>.md \
--model gemini-2.5-flash
处理视频:
python scripts/gemini_batch_process.py \
--files video.mp4 \
--task analyze \
--prompt "用时间戳总结关键点" \
--output docs/assets/<输出名称>.md \
--model gemini-2.5-flash
从PDF提取:
python scripts/gemini_batch_process.py \
--files document.pdf \
--task extract \
--prompt "将表格数据提取为JSON" \
--output docs/assets/<输出名称>.md \
--format json
生成图像:
python scripts/gemini_batch_process.py \
--task generate \
--prompt "日落时的未来城市" \
--output docs/assets/<输出文件名> \
--model gemini-2.5-flash-image \
--aspect-ratio 16:9
优化媒体:
# 准备大视频进行处理
python scripts/media_optimizer.py \
--input large-video.mp4 \
--output docs/assets/<输出文件名> \
--target-size 100MB
# 批量优化多个文件
python scripts/media_optimizer.py \
--input-dir ./videos \
--output-dir docs/assets/optimized \
--quality 85
将文档转换为Markdown:
# 转换为PDF
python scripts/document_converter.py \
--input document.docx \
--output docs/assets/document.md
# 提取页面
python scripts/document_converter.py \
--input large.pdf \
--output docs/assets/chapter1.md \
--pages 1-20
支持的格式
音频
- WAV, MP3, AAC, FLAC, OGG Vorbis, AIFF
- 每个请求最长9.5小时
- 自动下采样到16 Kbps单声道
图像
- PNG, JPEG, WEBP, HEIC, HEIF
- 每个请求最多3,600张图像
- 分辨率:≤384px = 258令牌,更大则平铺
视频
- MP4, MPEG, MOV, AVI, FLV, MPG, WebM, WMV, 3GPP
- 最长6小时(低分辨率)或2小时(默认)
- 支持YouTube URL(仅公开)
文档
- 仅PDF用于视觉处理
- 最多1,000页
- 支持TXT, HTML, Markdown(仅文本)
大小限制
- 内联:<20MB总请求
- 文件API:2GB每文件,20GB项目配额
- 保留期:48小时自动删除
参考导航
详细实施指南,请参阅:
音频处理
references/audio-processing.md- 转录、分析、TTS- 时间戳处理和段分析
- 多说话者识别
- 非语音音频分析
- 文本到语音生成
图像理解
references/vision-understanding.md- 字幕、检测、OCR- 对象检测和定位
- 像素级分割
- 视觉问答
- 多图像比较
视频分析
references/video-analysis.md- 场景检测、时序理解- YouTube URL处理
- 基于时间戳的查询
- 视频剪辑和FPS控制
- 长视频优化
文档提取
references/document-extraction.md- PDF处理、结构化输出- 表格和表单提取
- 图表和图表分析
- JSON模式验证
- 多页处理
图像生成
references/image-generation.md- 文本到图像、编辑- 提示工程策略
- 图像编辑和组合
- 宽高比选择
- 安全设置
成本优化
令牌成本
输入定价:
- Gemini 2.5 Flash:$1.00/1M输入,$0.10/1M输出
- Gemini 2.5 Pro:$3.00/1M输入,$12.00/1M输出
- Gemini 1.5 Flash:$0.70/1M输入,$0.175/1M输出
令牌率:
- 音频:32令牌/秒(1分钟 = 1,920令牌)
- 视频:约300令牌/秒(默认)或约100(低分辨率)
- PDF:258令牌/页(固定)
- 图像:258-1,548令牌基于大小
TTS定价:
- Flash TTS:$10/1M令牌
- Pro TTS:$20/1M令牌
最佳实践
- 使用
gemini-2.5-flash处理大多数任务(最佳性价比) - 对>20MB的文件或重复查询使用文件API
- 在上传前优化媒体(见
media_optimizer.py) - 处理特定段而非完整视频
- 对静态内容使用较低FPS
- 对重复查询实施上下文缓存
- 并行批量处理多个文件
速率限制
免费层:
- 10-15 RPM(每分钟请求数)
- 1M-4M TPM(每分钟令牌数)
- 1,500 RPD(每日请求数)
YouTube限制:
- 免费层:8小时/天
- 付费层:无长度限制
- 仅公开视频
存储限制:
- 20GB每项目
- 2GB每文件
- 48小时保留期
错误处理
常见错误和解决方案:
- 400:无效格式/大小 - 上传前验证
- 401:无效API密钥 - 检查配置
- 403:权限拒绝 - 验证API密钥限制
- 404:文件未找到 - 确保文件已上传且活跃
- 429:速率限制超出 - 实施指数退避
- 500:服务器错误 - 用退避重试
脚本概述
所有脚本支持统一API密钥检测和错误处理:
gemini_batch_process.py:批量处理多个媒体文件
- 支持所有模态(音频、图像、视频、PDF)
- 进度跟踪和错误恢复
- 输出格式:JSON、Markdown、CSV
- 速率限制和重试逻辑
- 试运行模式
media_optimizer.py:为Gemini API准备媒体
- 压缩视频/音频以满足大小限制
- 适当调整图像大小
- 将长视频分割为块
- 格式转换
- 质量与大小优化
document_converter.py:将文档转换为PDF
- 转换DOCX, XLSX, PPTX为PDF
- 提取页面范围
- 优化PDF以用于Gemini
- 从PDF提取图像
- 批量转换支持
运行任何脚本使用--help获取详细用法。