Авторское право 2026 Google LLC.
# @title Лицензировано в соответствии с лицензией Apache, версия 2.0 ("Лицензия");
# вы не можете использовать этот файл, за исключением случаев соблюдения Лицензии.
# Вы можете получить копию Лицензии по адресу
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Если иное не предусмотрено применимым законодательством или не согласовано в письменной форме, программное обеспечение
# распространяется по Лицензии на условиях "КАК ЕСТЬ",
# БЕЗ ГАРАНТИЙ И УСЛОВИЙ ЛЮБОГО РОДА, явных или подразумеваемых.
# См. Лицензию для получения информации о конкретных разрешениях и
# ограничениях в соответствии с Лицензией.
Gemini API: Анализ видео – Классификация
Этот notebook использует мультимодальные возможности модели Gemini для классификации видов животных, показанных в видео.
%pip install -U -q "google-genai>=2.9.0"
Настройте ваш API key
Чтобы запустить следующую cell, ваш API key должен быть сохранен в Colab Secret с именем GEMINI_API_KEY. Если у вас еще нет API key или вы не знаете, как создать Colab Secret, см. Authentication для примера.
from google.colab import userdata
from google import genai
API_KEY = userdata.get('GEMINI_API_KEY')
client = genai.Client(api_key=API_KEY)
Пример
В этом примере используется видео, опубликованное Брайаном Эвансом, содержащее американского черного медведя.
Видео распространяется под лицензией Creative Commons Attribution 3.0 Unported.
# Скачиваем видео
path = "black_bear.webm"
url = "https://upload.wikimedia.org/wikipedia/commons/8/81/American_black_bears_%28Ursus_americanus%29.webm"
!wget $url -O $path
--2025-03-04 13:24:57-- https://upload.wikimedia.org/wikipedia/commons/8/81/American_black_bears_%28Ursus_americanus%29.webm
Resolving upload.wikimedia.org (upload.wikimedia.org)... 198.35.26.112, 2620:0:863:ed1a::2:b
Connecting to upload.wikimedia.org (upload.wikimedia.org)|198.35.26.112|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 45046409 (43M) [video/webm]
Saving to: ‘black_bear.webm’
black_bear.webm 100%[===================>] 42.96M 27.5MB/s in 1.6s
2025-03-04 13:24:58 (27.5 MB/s) - ‘black_bear.webm’ saved [45046409/45046409]
Загрузите файл с помощью File API, чтобы упростить его передачу модели в дальнейшем.
# Загружаем видео
video_file = client.files.upload(file=path)
import time
# Ждем, пока загруженное видео станет доступным
while video_file.state.name == "PROCESSING":
print('.', end='')
time.sleep(5)
video_file = client.files.get(name=video_file.name)
if video_file.state.name == "FAILED":
raise ValueError(video_file.state.name)
..
Чтобы продемонстрировать содержимое видео, отобразите первый кадр:
import cv2
import matplotlib.pyplot as plt
cap = cv2.VideoCapture(path)
_, frame = cap.read()
frame_rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
# Отображаем с помощью matplotlib
plt.imshow(frame_rgb)
plt.axis('off')
plt.show()
# закрываем видеофайл
cap.release()
<Figure size 640x480 with 1 Axes>
Загруженное видео готово к анализу. Сформированный prompt инструктирует модель классифицировать животных в видео, а также предоставлять их английские и латинские названия.
system_prompt = """
Вы зоолог, чья задача — называть животных в видео.
Вы всегда должны предоставлять английское и латинское название.
"""
from google.genai import types
MODEL_ID = "gemini-3.7-flash" # @param ["gemini-3.1-pro-preview", "gemini-3.7-flash", "gemini-3.5-flash-lite", "gemini-2.5-pro"] {"allow-input":true, isTemplate: true}response = client.models.generate_content(
model=f"models/{MODEL_ID}",
contents=[
"Пожалуйста, определите животное(ых) в этом видео",
video_file
],
config=types.GenerateContentConfig(
system_instruction=system_prompt,
),
)
print(response.text)
Хорошо! Вот животные в видео.
- Американский черный медведь (Ursus americanus)
Надеюсь, это поможет!
Как вы можете видеть, модель точно назвала животное и предоставила правильное латинское название.
Вы можете удалить видео, чтобы предотвратить ненужное хранение данных.
# Удаляем видео
client.files.delete(name=video_file.name)
DeleteFileResponse()
Резюме
Теперь вы знаете, как можно использовать prompt с моделями Gemini для видео и применять их для классификации видов животных.
Этот notebook демонстрирует лишь один из множества вариантов использования. Ознакомьтесь с Video understanding notebook для получения дополнительных примеров использования Gemini API с видео.