gemini-2.5-pro-latest とは?
gemini-2.5-pro-latest は、Google が提供する Gemini 2.5 Pro モデルの最新バージョンを自動で参照するモデル識別子です。このモデル文字列を使うことで、Google が 2.5-pro シリーズをアップデートするたびに、コードを変更せずに自動的に最新版が適用されます。
Gemini 2.5 Pro は以下の点で特に優れています。
- 高度な推論能力: 複雑な数学的推論や多段階の論理問題に強い
- 100万トークンの巨大コンテキストウィンドウ: 長文文書や大規模コードベースの処理
- マルチモーダル対応: テキスト・画像・音声・動画の統合処理
- コーディング能力: 複雑なコードの生成・レビュー・デバッグ
このガイドでは、gemini-2.5-pro-latest を使って実際にAIアプリケーションを構築する方法を、動作するコードとともに解説します。
Step 1:APIキーの取得と環境準備
Google AI Studio でAPIキーを取得する
- Google AI Studio にアクセスし、Googleアカウントでログイン
- 左メニューの「Get API key」をクリック
- 「Create API key」→ 使用するGoogleクラウドプロジェクトを選択
- 生成されたAPIキーをコピーして安全な場所に保存
⚠️ APIキーは環境変数として管理し、コードにハードコードしないこと。
Python環境のセットアップ
# Google Generative AI ライブラリをインストール
pip install google-generativeai
# 環境変数にAPIキーを設定
export GOOGLE_API_KEY="YOUR_GEMINI_API_KEY"Step 2:最初のAPI呼び出し
import google.generativeai as genai
import os
# APIキーを環境変数から読み込む
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
# gemini-2.5-pro-latest モデルを指定
model = genai.GenerativeModel("gemini-2.5-pro-latest")
# 最初のリクエスト
response = model.generate_content("Pythonでフィボナッチ数列を生成するコードを書いてください。")
print(response.text)期待する出力(例):
def fibonacci(n):
"""フィボナッチ数列のn番目の値を返す"""
if n <= 1:
return n
return fibonacci(n - 1) + fibonacci(n - 2)
# 最初の10項を出力
for i in range(10):
print(f"F({i}) = {fibonacci(i)}")
Step 3:ストリーミング応答
長い応答を待たずに、生成されたテキストをリアルタイムで受け取るにはストリーミングを使います。
import google.generativeai as genai
import os
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
model = genai.GenerativeModel("gemini-2.5-pro-latest")
# ストリーミングで応答を取得
response = model.generate_content(
"量子コンピュータの仕組みを初心者向けに詳しく説明してください。",
stream=True
)
# 逐次的にテキストを表示
for chunk in response:
print(chunk.text, end="", flush=True)
print() # 改行Step 4:マルチターン会話(チャット)
start_chat() メソッドを使うことで、会話の文脈を保持した対話型のアプリケーションを構築できます。
import google.generativeai as genai
import os
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
model = genai.GenerativeModel("gemini-2.5-pro-latest")
# チャットセッションを開始
chat = model.start_chat(history=[])
def chat_with_gemini(user_input: str) -> str:
"""ユーザーの入力をGeminiに送り、応答を返す"""
response = chat.send_message(user_input)
return response.text
# 会話の例
print("Geminiとの会話を開始します。'終了'と入力で終了。\n")
while True:
user_input = input("あなた: ")
if user_input == "終了":
break
response = chat_with_gemini(user_input)
print(f"Gemini: {response}\n")Step 5:システム指示の設定
AIの役割・ペルソナ・行動ルールを事前に設定できます。
import google.generativeai as genai
import os
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
# システム指示付きでモデルを設定
model = genai.GenerativeModel(
model_name="gemini-2.5-pro-latest",
system_instruction="""
あなたはシニアソフトウェアエンジニアです。
以下のルールに従って回答してください:
- コードは必ずPythonで書いてください
- 各コードブロックにはコメントを付けてください
- エラーハンドリングを必ず含めてください
- 実装の注意点を最後にまとめてください
"""
)
response = model.generate_content("ファイルを読み込んでCSVに変換する関数を書いてください。")
print(response.text)Step 6:生成パラメータの調整
応答の品質・長さ・多様性を細かく制御するためのパラメータです。
import google.generativeai as genai
import os
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
model = genai.GenerativeModel("gemini-2.5-pro-latest")
# 生成設定
generation_config = genai.GenerationConfig(
temperature=0.7, # 0.0(決定論的)〜 1.0(創造的)
top_p=0.9, # 核サンプリング
top_k=40, # 上位K候補から選択
max_output_tokens=2048, # 最大出力トークン数
candidate_count=1 # 生成する候補数
)
response = model.generate_content(
"短編小説のアイデアを3つ提案してください。",
generation_config=generation_config
)
print(response.text)パラメータの目安:
temperature=0.0〜0.3: 事実確認・コーディング・要約など正確さが必要なタスクtemperature=0.5〜0.8: 一般的な文章生成・説明・Q&Atemperature=0.9〜1.0: 創作・アイデア出し・ブレインストーミング
Step 7:レート制限とエラーハンドリング
本番環境で安定稼働させるためのエラーハンドリングを実装します。
import google.generativeai as genai
import os
import time
from google.api_core import exceptions as google_exceptions
genai.configure(api_key=os.environ["GOOGLE_API_KEY"])
model = genai.GenerativeModel("gemini-2.5-pro-latest")
def safe_generate(prompt: str, max_retries: int = 3) -> str:
"""
エラーハンドリング・リトライ付きのコンテンツ生成関数
Args:
prompt: 送信するプロンプト
max_retries: 最大リトライ回数
Returns:
生成されたテキスト
"""
for attempt in range(max_retries):
try:
response = model.generate_content(prompt)
return response.text
except google_exceptions.ResourceExhausted:
# レートリミット超過
wait_time = 2 ** attempt # 指数バックオフ
print(f"レートリミット超過。{wait_time}秒後にリトライ... (試行 {attempt + 1}/{max_retries})")
time.sleep(wait_time)
except google_exceptions.InvalidArgument as e:
# 無効なリクエスト(リトライ不要)
print(f"無効なリクエスト: {e}")
raise
except google_exceptions.GoogleAPIError as e:
# その他のAPIエラー
print(f"APIエラー: {e}")
if attempt == max_retries - 1:
raise
time.sleep(1)
raise Exception("最大リトライ回数に達しました")
# 使用例
result = safe_generate("東京の気候の特徴を教えてください。")
print(result)全体を振り返って
gemini-2.5-pro-latest を使ったAPI開発の基本ステップをまとめます。
- Step 1: Google AI Studio でAPIキーを取得し、環境変数に設定
- Step 2:
google-generativeaiライブラリをインストール - Step 3:
GenerativeModel("gemini-2.5-pro-latest")でモデルを初期化 - Step 4: ストリーミング・マルチターン会話・システム指示を組み合わせる
- Step 5: 本番環境ではエラーハンドリングと特定バージョン固定を実装
Gemini 2.5 Pro は、長い文書処理・複雑な推論・マルチモーダルタスクに特に強みを持つモデルです。ぜひ自分のプロジェクトに組み込んで、その実力を試してみてください。
より詳しい API 活用方法については、Gemini API Python 高スループット非同期処理ガイドも合わせてご参照ください。
Gemini API の詳細な仕様や活用法を深く