本页面提供了使用监督学习对 Gemini 进行视频数据微调的先决条件和详细说明。
支持的模型
以下 Gemini 模型支持视频调优:
- Gemini 2.5 Flash
使用场景
借助微调,您可以调整基础 Gemini 模型,使其适合专门任务。 以下是一些视频用例:
自动视频摘要:调整 LLM 以生成简明连贯的长视频摘要,捕捉主要主题、事件和叙事内容。这有助于内容发现、归档和快速审核。
详细的事件识别和定位:通过微调,LLM 可以更准确地识别和精确定位视频时间轴中的特定动作、事件或对象。例如,识别营销视频中特定产品的所有实例,或体育视频片段中的特定动作。
内容审核:通过专业调整,可以提高 LLM 检测视频中敏感、不当或违反政策的内容的能力,从而超越简单的对象检测,理解背景信息和细微差别。
视频字幕和字幕:虽然这已是一种常见应用,但通过调整,可以提高自动生成的字幕和字幕的准确性、流畅性和上下文感知能力,包括对非语言提示的描述。
限制
- 视频文件大小上限:100MB。
对于大型视频文件,这可能不够。以下是一些建议的解决方法:
- 如果大型文件很少,请从 JSONL 文件中排除这些文件。
- 如果您的数据集中包含许多无法忽略的大文件,请降低文件的视觉分辨率。这可能会降低性能。
- 将视频分块,以将文件大小限制为 100MB,并使用分块后的视频进行调整。请务必将与原始视频对应的所有时间戳注释更改为新的(分块)视频时间轴。
- 每个示例的视频时长上限:使用
MEDIA_RESOLUTION_MEDIUM
时为 5 分钟,使用MEDIA_RESOLUTION_LOW
时为 20 分钟。 - 舍弃的示例:如果某个示例包含的视频时长超过支持的最大时长,则该示例会从数据集中舍弃。丢弃的示例不会产生费用,也不会用于训练。 如果丢弃的数据集超过 10%,作业将在训练开始前失败并显示错误消息。
- 不支持混合使用不同的媒体分辨率:整个训练数据集中每个示例的
mediaResolution
值必须保持一致。用于训练和验证的 JSONL 文件中的所有行都应具有相同的mediaResolution
值。
数据集格式
fileUri
字段用于指定数据集的位置。它可以是 Cloud Storage 存储分区中文件的 URI,也可以是可公开访问的 HTTP 或 HTTPS 网址。
mediaResolution
字段用于指定输入视频每帧的令牌数量,可以是以下值之一:
MEDIA_RESOLUTION_LOW
:每帧 64 个令牌MEDIA_RESOLUTION_MEDIUM
:每帧 256 个 token
使用 MEDIA_RESOLUTION_LOW
进行模型调优的速度比使用 MEDIA_RESOLUTION_MEDIUM
进行模型调优的速度快大约 4 倍,但性能提升幅度很小。
如果视频片段用于训练和验证,则该视频片段位于 videoMetadata
字段中。在调优期间,此数据点会被解码,以包含从时间戳 startOffset
(以秒为单位的起始偏移量)开始到 endOffset
结束的指定视频文件中提取的片段的信息。
如需查看通用格式示例,请参阅适用于 Gemini 的数据集示例。
以下部分展示了视频数据集格式示例。
JSON 架构示例,适用于使用完整视频进行训练和验证的情况
此架构以单行形式添加到 JSONL 文件中。
{
"contents": [
{
"role": "user",
"parts": [
{
"fileData": {
"fileUri": "gs://<path to the mp4 video file>",
"mimeType": "video/mp4"
},
},
{
"text": "
You are a video analysis expert. Detect which animal appears in the
video.The video can only have one of the following animals: dog, cat,
rabbit.\n Output Format:\n Generate output in the following JSON
format:\n
[{\n
\"animal_name\": \"<CATEGORY>\",\n
}]\n"
}
]
},
{
"role": "model",
"parts": [
{
"text": "```json\n[{\"animal_name\": \"dog\"}]\n```"
}
]
},
],
"generationConfig": {
"mediaResolution": "MEDIA_RESOLUTION_LOW"
}
}
JSON 架构示例,适用于视频片段同时用于训练和验证的情况
此架构以单行形式添加到 JSONL 文件中。
{
"contents": [
{
"role": "user",
"parts": [
{
"fileData": {
"fileUri": "gs://<path to the mp4 video file>",
"mimeType": "video/mp4"
},
"videoMetadata": {
"startOffset": "5s",
"endOffset": "25s"
}
},
{
"text": "
You are a video analysis expert. Detect which animal appears in the
video.The video can only have one of the following animals: dog, cat,
rabbit.\n Output Format:\n Generate output in the following JSON
format:\n
[{\n
\"animal_name\": \"<CATEGORY>\",\n
}]\n"
}
]
},
{
"role": "model",
"parts": [
{
"text": "```json\n[{\"animal_name\": \"dog\"}]\n```"
}
]
},
],
"generationConfig": {
"mediaResolution": "MEDIA_RESOLUTION_LOW"
}
}
后续步骤
- 如需详细了解视频调优,请参阅如何通过 Vertex AI 使用视频对 Gemini 2.5 进行微调。
- 如需详细了解 Gemini 的图片理解功能,请参阅我们的图片理解文档。
- 如需开始调优,请参阅使用监督式微调来调优 Gemini 模型
- 如需了解如何在构建生成式 AI 知识库的解决方案中使用监督式微调,请参阅快速起步解决方案:生成式 AI 知识库。