AI Automate Lab
AI API連携 初級

Gemini API入門|PythonとGASで始めるAI活用

著者: れん (更新: ) 約15分で読了
#Gemini API #Google AI #Python #GAS #マルチモーダル

この記事では、Gemini APIを使ったテキスト生成と画像分析のスクリプトを約60分で構築する手順を解説します。PythonとGAS(Google Apps Script)の2パターンでコードを掲載しており、コピペで動くようになっています。

AIを業務に導入する全体像から知りたい方は、先に中小企業向けAI導入5ステップをご覧ください。

この記事で作るもの(完成イメージ)

Gemini APIとは、Googleが提供するAI API(Google AI API)です。テキストだけでなく画像・PDF・音声・動画も入力できるマルチモーダル対応が特徴です。Google AI Studioから無料で始められます。

この記事では、Gemini APIの使い方をPythonとGASの2パターンで解説し、テキスト生成と画像分析ができるスクリプトを構築します。

Gemini APIが他のAI APIと比べて中小企業に向いている理由は次の3つです。

  • 無料枠が大きい --- gemini-2.5-flashは1日250リクエストまで無料で、業務テストに十分な量です
  • GASから直接呼べる --- Googleアカウントだけで環境構築なしに始められます
  • マルチモーダル対応 --- 画像・PDF・音声を1つのAPIで処理でき、請求書読み取りや商品画像分析に使えます

読者のスキルに応じて2つのルートを用意しました。

  • ルートA: Python + google-genai SDK --- ローカルPCまたはGoogle Colabで実行。本格的な業務自動化向け
  • ルートB: GAS + UrlFetchApp --- Googleアカウントだけで完結。スプレッドシート連携などすぐ試したい方向け
項目内容
必要なアカウントGoogleアカウント
必要な知識Pythonの基礎(ルートAの場合)/ GASの基礎(ルートBの場合)
所要時間約60分(両ルート実施時)
費用0円(無料枠内)
完成物テキスト生成 + 画像分析ができるスクリプト

準備・環境構築

環境構築とは、Gemini APIを呼び出すために必要なAPIキーの取得とライブラリの導入を行う工程です。APIキーの取得方法、Pythonルートの環境構築、GASルートの設定方法を順に説明します。

APIキーの取得手順

Gemini APIを使うには、Google AI StudioでAPIキーを発行します。

  1. Google AI StudioにGoogleアカウントでログインします
  2. 左メニューまたは画面上部の「Get API Key」をクリックします
  3. 「Create API Key」からプロジェクトを選択(または新規作成)し、APIキーを発行します
  4. 発行されたAPIキーを安全な場所に控えておきます

APIキーの設定方法(Pythonルート):

# Windows(PowerShell)
$env:GOOGLE_API_KEY="取得したAPIキー"

# Mac / Linux
export GOOGLE_API_KEY="取得したAPIキー"

APIキーの設定方法(GASルート):

GASでは、スクリプトプロパティにAPIキーを保存します。

  1. GASエディタで「プロジェクトの設定」(歯車アイコン)を開きます
  2. 「スクリプト プロパティ」セクションで「スクリプト プロパティを追加」をクリックします
  3. プロパティ名に GEMINI_API_KEY、値に取得したAPIキーを入力して保存します

Pythonルートの環境構築

Pythonでは新SDK(google-genai)をインストールします。旧SDK(google-generativeai)は2025年11月に非推奨化されたため、必ず新SDKを使ってください。

pip install google-genai

新SDKの基本的な使い方は次のとおりです。

from google import genai

# 環境変数 GOOGLE_API_KEY を自動認識するため、APIキーの指定は不要
client = genai.Client()

旧SDKと新SDKの違いを表にまとめました。ネット上の記事には旧SDKのコードが多く残っているため、混乱しないよう確認してください。

項目旧SDK(google-generativeai)新SDK(google-genai)
パッケージ名google-generativeaigoogle-genai
ステータス2025年11月非推奨化GA(推奨)
初期化方法genai.configure(api_key=...)client = genai.Client()
モデル指定genai.GenerativeModel("...")client.models.generate_content(model="...")
Vertex AI対応別SDK必要同一SDKで対応

利用可能なモデルと料金

Gemini APIで利用できる主要モデルの比較表です(2026年2月時点。最新情報は公式料金ページを確認してください)。

モデル特徴無料枠有料入力単価(/100万トークン)推奨用途
gemini-2.5-flash高速・低コスト・思考予算制御可10 RPM / 250 RPD$0.15日常的なテキスト処理・分類
gemini-2.5-flash-lite最軽量・大量処理向け15 RPM / 1,000 RPD$0.075大量バッチ処理
gemini-2.5-pro高精度・複雑な推論5 RPM / 50 RPD$1.25高度な分析・コード生成
gemini-2.0-flashバランス型(2026/3/31廃止予定15 RPM / 200 RPD$0.10※gemini-2.5-flash-liteへの移行推奨

※ RPM = 1分あたりのリクエスト数、RPD = 1日あたりのリクエスト数

この記事では、無料枠が大きくコストパフォーマンスに優れたgemini-2.5-flashを使用します。

実装手順

実装手順とは、Gemini APIを実際にコードから呼び出してテキスト生成・画像分析を行う一連の流れです。PythonとGASに分けて、コピペで動くコードを掲載します。

ステップ1: テキスト生成(Python)

まずは最もシンプルなテキスト生成から始めます。新SDK(google-genai)では、環境変数GOOGLE_API_KEYを設定しておけば、コード内でAPIキーを指定する必要はありません。

from google import genai

client = genai.Client()  # GOOGLE_API_KEY環境変数を自動認識

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="日本の中小企業で活用できるAI自動化の事例を3つ教えてください"
)
print(response.text)

このコードのポイント:

  • genai.Client() は環境変数 GOOGLE_API_KEY を自動的に読み込みます。コードにAPIキーを直接書く必要はありません
  • model="gemini-2.5-flash" で使用するモデルを指定しています。用途に応じてモデルを切り替えられます
  • contents にはテキストの文字列を渡すだけで、Geminiが応答を生成します

ステップ2: 画像分析・マルチモーダル(Python)

Gemini APIのマルチモーダル機能を使うと、画像を送信してAIに分析させることができます。中小企業では、商品画像から説明文を自動生成したり、請求書の内容を読み取ったりする業務に活用できます。

URLから画像を読み込む場合:

from google import genai
from google.genai import types

client = genai.Client()

image = types.Part.from_uri(
    file_uri="https://example.com/invoice.jpg",
    mime_type="image/jpeg"
)

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents=["この請求書の金額と日付を読み取ってください", image]
)
print(response.text)

ローカルの画像ファイルを読み込む場合:

from google import genai
from google.genai import types

client = genai.Client()

with open("invoice.jpg", "rb") as f:
    image = types.Part.from_bytes(data=f.read(), mime_type="image/jpeg")

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents=["この請求書の合計金額、発行日、宛名を抽出してJSON形式で返してください", image]
)
print(response.text)

このコードのポイント:

  • contents にはテキストと画像を配列で渡します。テキストで「何を分析してほしいか」を指示し、画像データを添えます
  • types.Part.from_uri() はURLから画像を読み込む場合、types.Part.from_bytes() はローカルファイルを読み込む場合に使います
  • mime_type には画像の形式を指定します(JPEG: image/jpeg、PNG: image/png、WebP: image/webp
  • 「JSON形式で返してください」のように出力形式を指示すると、後続の処理で扱いやすい形式で結果を得られます

ステップ3: GASからREST APIを呼ぶ

GAS(Google Apps Script)からはREST APIを直接呼び出します。SDKのインストールは不要で、Googleアカウントだけで始められるのが強みです。GASの基本についてはGASでできること完全ガイドで詳しく解説しています。

function callGeminiAPI(prompt) {
  var apiKey = PropertiesService.getScriptProperties().getProperty('GEMINI_API_KEY');
  var url = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=' + apiKey;

  var payload = {
    contents: [{ parts: [{ text: prompt }] }]
  };

  var options = {
    method: 'post',
    contentType: 'application/json',
    payload: JSON.stringify(payload),
    muteHttpExceptions: true
  };

  var response = UrlFetchApp.fetch(url, options);
  var result = JSON.parse(response.getContentText());

  if (response.getResponseCode() !== 200) {
    Logger.log('エラー: ' + response.getContentText());
    return 'エラーが発生しました';
  }

  return result.candidates[0].content.parts[0].text;
}

使用例 --- スプレッドシートのデータをAIで要約する:

function summarizeSheetData() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var data = sheet.getDataRange().getValues();
  var text = data.map(function(row) { return row.join(', '); }).join('\n');

  var prompt = '以下のスプレッドシートのデータを3行で要約してください:\n\n' + text;
  var summary = callGeminiAPI(prompt);

  Logger.log(summary);
}

このコードのポイント:

  • APIキーは PropertiesService.getScriptProperties() から取得しています。コードにAPIキーを直接書かないことでセキュリティを確保します
  • REST APIのエンドポイントは v1beta を使用しています。モデル名はURLに直接含めます
  • muteHttpExceptions: true を指定すると、エラーレスポンスも受け取れるため、エラーハンドリングが可能になります
  • GASからはスプレッドシート、Gmail、Googleカレンダーなど他のGoogleサービスとも簡単に連携できます

動作確認・トラブルシューティング

動作確認とは、構築したスクリプトが正しく動作するかテストし、問題があれば原因を特定して解決する工程です。

テスト手順

Python(ステップ1のテスト):

python -c "from google import genai; client = genai.Client(); print(client.models.generate_content(model='gemini-2.5-flash', contents='こんにちは').text)"

正常に動作すれば、Geminiからの応答テキストが表示されます。

GAS(ステップ3のテスト):

GASエディタで以下の関数を作成し、実行ボタンを押してください。

function testGemini() {
  var result = callGeminiAPI('こんにちは。簡単な自己紹介をしてください。');
  Logger.log(result);
}

「実行ログ」にGeminiの応答が表示されれば成功です。

よくあるエラーと解決策

エラー原因解決策
API_KEY_INVALIDAPIキーが無効または未設定Google AI Studioで再発行し、環境変数(Python)またはスクリプトプロパティ(GAS)を再設定してください
RESOURCE_EXHAUSTED無料枠のレート制限超過RPM/RPDの上限を確認し、リクエスト間隔を空けてください。翌日にリセットされます
MODEL_NOT_FOUND廃止済みモデル名を指定gemini-pro等は廃止済みです。gemini-2.5-flashに変更してください
INVALID_ARGUMENT画像形式が未対応またはサイズ超過JPEG/PNG/WebP形式で20MB以内の画像に変換してください
ModuleNotFoundError旧SDK名でimportしているpip install google-genai を実行し、from google import genai でインポートしてください
GAS: Exception: Request failedAPIエンドポイントのURL誤りURLの v1beta とモデル名(gemini-2.5-flash)を確認してください

無料枠の上限まとめ

無料枠を超えるとリクエストが拒否されます。業務テストで利用する場合は、以下の制限を意識してください。

モデルRPM(1分あたり)RPD(1日あたり)
gemini-2.5-flash10250
gemini-2.5-flash-lite151,000
gemini-2.5-pro550

応用・業務活用アイデア

応用・業務活用アイデアとは、Gemini APIの基本操作を習得した後に取り組める、中小企業での具体的な自動化シナリオです。

中小企業での活用シナリオ

業務シナリオ使用機能実装方法期待される効果
請求書PDF読み取り → スプレッドシート転記マルチモーダル(PDF)GAS + Gemini API手入力を80%削減
商品画像から説明文を自動生成マルチモーダル(画像)Python / GASEC出品作業を効率化
問い合わせメールの自動分類テキスト分類GAS + Gmail振り分け作業を自動化
会議議事録の要約テキスト要約Python議事録作成時間を短縮
社内文書の検索・QAテキスト生成Pythonナレッジ検索を効率化

業務のどこから自動化すべきか迷ったら、どこから自動化すべきか判断マトリクスを参考にしてください。

他のAI APIとの使い分け

Gemini API以外にも、業務自動化に使える主要なAI APIがあります。それぞれ得意分野が異なるため、用途に応じて使い分けるのが効果的です。

  • OpenAI API --- エコシステムが広く、Function Callingによるツール連携が強みです。詳しくはOpenAI API入門で解説しています
  • Claude API --- 長文処理と指示追従性に優れ、複雑な文書の分析に向いています。詳しくはClaude API入門で解説しています
  • Gemini API --- 無料枠の大きさとGAS連携が強み。Googleサービスとの組み合わせで中小企業の業務自動化に適しています

各AI APIの詳しい比較はAI開発ツール比較をご覧ください。

AI導入の全体像を把握したい方は、中小企業向けAI導入5ステップを参考にしてください。

よくある質問

Gemini APIは無料で使えますか?

はい、Google AI StudioでAPIキーを取得すれば無料枠で利用可能です。gemini-2.5-flashなら1日250リクエスト、gemini-2.5-flash-liteなら1日1,000リクエストまで無料で使えます。中小企業の業務自動化テストには十分な枠ですが、本番運用では従量課金への移行を検討してください。

google-generativeaiとgoogle-genaiの違いは?どちらを使うべきですか?

google-generativeaiは旧SDKで、2025年11月に非推奨化されました。google-genaiが現在の公式SDK(GA版)で、Gemini APIとVertex AIの両方に対応しています。新規開発では必ずgoogle-genaiを使用してください。

GAS(Google Apps Script)からGemini APIを使えますか?

はい、UrlFetchAppでREST APIを直接呼び出せます。SDKのインストールが不要で、Googleアカウントだけで始められるのが強みです。APIキーはスクリプトプロパティで安全に管理できます。本記事のステップ3で実装例を掲載しています。

Gemini APIのマルチモーダル機能でどんな業務を自動化できますか?

請求書PDFの読み取り・データ抽出、商品画像からの説明文自動生成、名刺のデジタル化などが代表的です。テキスト・画像・PDF・音声・動画を入力できるため、中小企業では特に紙書類のデジタル化で大きな効果が期待できます。

GeminiとChatGPT(OpenAI)、Claude(Anthropic)のAPIはどう使い分けますか?

Geminiの強みは無料枠の大きさとGASとの相性です。OpenAI APIはエコシステムの広さとツール連携、Claude APIは長文処理と指示追従性が優れています。中小企業でまず試すなら、無料で始められるGemini APIが導入しやすいです。詳しくは当サイトのAI開発ツール比較記事を参照してください。

関連記事