ビデオの理解やビデオに関する洞察は、多面的な利点があるため、さまざまな業界やアプリケーションにわたって重要です。メタデータの自動生成、コンテンツの分類、ビデオの検索性の向上により、コンテンツの分析と管理が強化されます。さらに、ビデオの洞察は、意思決定を促進し、ユーザー エクスペリエンスを向上させ、さまざまな分野にわたる業務効率を向上させる重要なデータを提供します。
Google の Gemini 1.5 モデルは、この分野に大きな進歩をもたらしました。このモデルは、言語処理における目覚ましい改善に加えて、最大 100 万トークンという膨大な入力コンテキストを処理できます。その機能をさらに高めるために、Gemini 1.5 はマルチモーダル モデルとしてトレーニングされ、テキスト、画像、オーディオ、ビデオをネイティブに処理します。さまざまな入力タイプと広範なコンテキスト サイズの強力な組み合わせにより、長いビデオを効果的に処理するための新たな可能性が開かれます。
この記事では、Gemini 1.5 を活用して貴重なビデオに関する洞察を生成し、さまざまなドメインにわたるビデオ コンテンツの理解と利用方法を変革する方法について詳しく説明します。
Google の Gemini 1.5 は、AI のパフォーマンスと効率における大幅な進歩を表しています。広範な研究とエンジニアリングの革新に基づいて構築されたこのモデルは、新しい専門家混合 (MoE) アーキテクチャを特徴としており、トレーニングとサービスの効率の両方を向上させます。パブリック プレビューで利用可能な Gemini 1.5 Pro と 1.5 Flash は、Google AI Studio と Vertex AI を通じて 100 万トークンという驚異的なコンテキスト ウィンドウを提供します。
Google Gemini のアップデート: Flash 1.5、Gemma 2、Project Astra (blog.google)
Gemini ファミリに新しく追加された 1.5 フラッシュ モデルは、大量かつ高頻度のタスク向けに最も高速かつ最適化されています。コスト効率を重視して設計されており、要約、チャット、画像やビデオのキャプション付け、広範なドキュメントや表からのデータ抽出などのアプリケーションに優れています。これらの進歩により、Gemini 1.5 は AI モデルのパフォーマンスと多用途性の新しい標準を設定します。
python -m venv venv source venv/bin/activate #for ubuntu venv/Scripts/activate #for windows
pip install google-generativeai streamlit python-dotenv
Gemini API にアクセスしてその機能を使い始めるには、Google AI Studio に登録して無料の Google API キーを取得できます。 Google が提供する Google AI Studio は、Gemini API と対話するためのユーザーフレンドリーなビジュアルベースのインターフェイスを提供します。 Google AI Studio 内では、直感的な UI を通じて生成モデルをシームレスに操作でき、必要に応じて、制御とカスタマイズを強化するための API トークンを生成できます。
次の手順に従って Gemini API キーを生成します。
まず、プロジェクト用に新しいフォルダーを作成します。プロジェクトの目的を反映した名前を選択してください。
新しいプロジェクト フォルダー内に、.env という名前のファイルを作成します。このファイルには、Gemini API キーを含む環境変数が保存されます。
.env ファイルを開き、次のコードを追加して Gemini API キーを指定します:
GOOGLE_API_KEY=AIzaSy......
プロジェクトを開始し、必要なツールがすべて揃っていることを確認するには、次のようにいくつかの主要なライブラリをインポートする必要があります。
import os import time import google.generativeai as genai import streamlit as st from dotenv import load_dotenv
プロジェクトを設定するには、API キーを設定し、アップロードされたファイルの一時ファイル ストレージ用のディレクトリを作成する必要があります。
メディア フォルダーを定義し、必要な設定を初期化して Gemini API キーを構成します。次のコードをスクリプトに追加します:
python -m venv venv source venv/bin/activate #for ubuntu venv/Scripts/activate #for windows
アップロードされたファイルをメディア フォルダーに保存し、そのパスを返すには、save_uploaded_file というメソッドを定義し、次のコードをそれに追加します。
pip install google-generativeai streamlit python-dotenv
動画から分析情報を生成するには、アップロード、処理、応答の生成など、いくつかの重要な段階が必要です。
Gemini API はビデオ ファイル形式を直接受け入れます。ファイル API は最大 2 GB のサイズのファイルをサポートし、プロジェクトごとに最大 20 GB のストレージを許可します。アップロードされたファイルは 2 日間利用可能であり、API からダウンロードすることはできません。
GOOGLE_API_KEY=AIzaSy......
ファイルをアップロードした後、files.get メソッドを使用して、API がファイルを正常に受信したことを確認できます。このメソッドを使用すると、API キーにリンクされたクラウド プロジェクトに関連付けられているファイル API にアップロードされたファイルを表示できます。ファイル名と URI のみが一意の識別子です。
import os import time import google.generativeai as genai import streamlit as st from dotenv import load_dotenv
ビデオがアップロードされた後、ファイル API URI を参照する GenerateContent リクエストを行うことができます。
MEDIA_FOLDER = 'medias' def __init__(): # Create the media directory if it doesn't exist if not os.path.exists(MEDIA_FOLDER): os.makedirs(MEDIA_FOLDER) # Load environment variables from the .env file load_dotenv() # Retrieve the API key from the environment variables api_key = os.getenv("GEMINI_API_KEY") # Configure the Gemini API with your API key genai.configure(api_key=api_key)
ファイルは 2 日後に自動的に削除されます。または、files.delete() を使用して手動で削除することもできます。
def save_uploaded_file(uploaded_file): """Save the uploaded file to the media folder and return the file path.""" file_path = os.path.join(MEDIA_FOLDER, uploaded_file.name) with open(file_path, 'wb') as f: f.write(uploaded_file.read()) return file_path
get_insights というメソッドを作成し、次のコードをそれに追加します。 print() の代わりに、streamlit write() メソッドを使用して、Web サイト上のメッセージを確認します。
video_file = genai.upload_file(path=video_path)
Streamlit アプリ内でビデオをアップロードして分析情報を生成するプロセスを合理化するには、app という名前のメソッドを作成します。このメソッドは、アップロード ボタンを提供し、アップロードされたビデオを表示し、そこから分析情報を生成します。
import time while video_file.state.name == "PROCESSING": print('Waiting for video to be processed.') time.sleep(10) video_file = genai.get_file(video_file.name) if video_file.state.name == "FAILED": raise ValueError(video_file.state.name)
ユーザーがビデオをアップロードし、Gemini 1.5 Flash モデルを使用して分析情報を生成できる、完全で機能的な Streamlit アプリケーションを作成するには、すべてのコンポーネントを app.py という名前の 1 つのファイルに結合します。
最終的なコードは次のとおりです:
# Create the prompt. prompt = "Describe the video. Provides the insights from the video." # Set the model to Gemini 1.5 Flash. model = genai.GenerativeModel(model_name="models/gemini-1.5-flash") # Make the LLM request. print("Making LLM inference request...") response = model.generate_content([prompt, video_file], request_options={"timeout": 600}) print(response.text)
次のコードを実行してアプリケーションを実行します。
genai.delete_file(video_file.name)
コンソールに表示されるリンクを開いて出力を確認できます。
この記事をお読みいただきありがとうございます!!
この記事が気に入ったら、ハートボタン ♥ をクリックして共有し、他の人が記事を見つけられるようにしてください。
このチュートリアルの完全なソース コードはここにあります
GitHub - codemaker2015/video-insights-generator
以上がGemini Flash を使用したビデオ インサイト ジェネレーターの構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。