GoogleのGemini 3.1 Flash Liteは2026年3月3日にリリースされ、Geminiシリーズで最速かつ最も手頃な価格のモデルです。入力トークン100万件あたり0.25ドル、出力トークン100万件あたり1.50ドルという価格設定で、予算を使い果たすことなく大規模なAIを必要とする開発者向けに作られています。
このガイドでは、アクセス方法、APIキーのセットアップ方法、リクエストの開始方法を正確に説明します。10分以内に動作するコードを手に入れることができます。
TL;DR
クイックセットアップ:
- Google AI Studioにアクセスします
- プロジェクトを作成し、APIキーを生成します
- SDKをインストールします:
pip install google-generativeai - モデル
gemini-3.1-flash-liteを使用して最初のリクエストを行います - デバッグとチームコラボレーションを容易にするためにApidogでテストします
料金: 入力トークン100万件あたり0.25ドル、出力トークン100万件あたり1.50ドル
速度: Gemini 2.5 Flashより2.5倍高速
無料枠: プレビュー期間中は入力トークン100万件が無料
Gemini 3.1 Flash Liteとは?
Gemini 3.1 Flash Liteは、大量のアプリケーション向けに設計されたGoogleの最新AIモデルです。Gemini 2.5 Flashより2.5倍高速で、出力速度は45%向上しており、GPQA Diamondで86.9%、MMMU Proベンチマークで76.8%を記録しています。

このモデルには、リクエストごとに調整できる思考レベルが含まれています。簡単なタスクには下げ、複雑な推論には上げることができます。この柔軟性により、さまざまなワークロードを処理しながらコストを最適化できます。
個人開発者向けにはGoogle AI Studio、企業向けにはVertex AIを通じて利用できます。
前提条件
開始する前に、次のものがあることを確認してください。
- Googleアカウント
- Python 3.7以降またはNode.js 14以降がインストールされていること
- REST APIの基本的な理解
- (オプション) APIテスト用にApidogがインストールされていること
ステップ1:Google AI Studioアカウントを作成する
Google AI Studioは、開発のためにGeminiモデルにアクセスする最速の方法です。
- aistudio.google.comにアクセスします
- Googleアカウントでサインインします
- 利用規約に同意します
- AI Studioダッシュボードに移動します
インターフェースには、利用可能なモデル、API使用量、クイックスタートテンプレートが表示されます。Flash Liteは、モデルのドロップダウンにgemini-3.1-flash-liteとして表示されます。

ステップ2:APIキーを生成する
APIキーを使用すると、Gemini APIへのリクエストを認証できます。
- 右上隅にあるAPIキーを取得をクリックします
- 新しいプロジェクトでAPIキーを作成を選択します(または既存のプロジェクトを選択します)
- Googleが新しいCloudプロジェクトを作成し、キーを生成します
- APIキーをコピーします –
AIzaSyXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXのような形式です - 安全に保管してください – このキーは二度と表示されません

セキュリティのヒント: APIキーをバージョン管理にコミットしないでください。環境変数またはシークレット管理ツールを使用してください。
ステップ3:SDKをインストールする
GoogleはPythonおよびNode.js用の公式SDKを提供しています。
Python
pip install google-generativeai
Node.js
npm install @google/generative-ai
SDKは認証、リクエストのフォーマット、レスポンスの解析を処理します。必要であれば、REST APIを直接使用することもできます。
ステップ4:最初のリクエストを行う
Flash Liteに簡単なプロンプトを送信してみましょう。
Pythonの例
import google.generativeai as genai
import os
# Configure API key
genai.configure(api_key=os.environ.get('GOOGLE_API_KEY'))
# Initialize the model
model = genai.GenerativeModel('gemini-3.1-flash-lite')
# Generate content
response = model.generate_content('Explain REST APIs in one sentence.')
print(response.text)
Node.jsの例
const { GoogleGenerativeAI } = require("@google/generative-ai");
// Initialize with API key
const genAI = new GoogleGenerativeAI(process.env.GOOGLE_API_KEY);
async function run() {
// Get the model
const model = genAI.getGenerativeModel({ model: "gemini-3.1-flash-lite" });
// Generate content
const result = await model.generateContent("Explain REST APIs in one sentence.");
const response = await result.response;
const text = response.text();
console.log(text);
}
run();
cURLの例 (REST API)
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3.1-flash-lite:generateContent?key=YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"contents": [{
"parts": [{
"text": "Explain REST APIs in one sentence."
}]
}]
}'
これらの例のいずれかを実行すると、数秒で応答が得られます。モデルは、プロンプトに答える明確で簡潔なテキストを返します。
ステップ5:Apidogでテストする
Apidogは、ビジュアルインターフェース、チームコラボレーション、自動ドキュメント生成により、APIテストをより簡単にします。

Gemini APIにApidogを使用する理由
- ビジュアルリクエストビルダー - cURLコマンドを記述する必要がありません
- 環境変数 - 開発/本番APIキーを簡単に切り替えることができます
- レスポンス検証 - 本番環境に到達する前にエラーを捕捉します
- チーム共有 - APIコレクションをチームと共有できます
- 自動ドキュメント - リクエストからドキュメントを生成します
右側のパネルには、構文のハイライト表示、応答時間、ステータスコードとともに応答が表示されます。
環境変数として保存
- Apidogで環境に移動します
- 新しい環境を作成します(例:「Gemini Dev」)
- 変数
GOOGLE_API_KEY= 実際のAPIキーを追加します - リクエストで
{{GOOGLE_API_KEY}}を使用します
これで、リクエストを変更することなく環境を切り替えることができます。開発、ステージング、本番キーの管理に最適です。
リクエスト形式を理解する
Gemini APIは特定のJSON構造を使用します。
基本リクエスト構造
{
"contents": [{
"parts": [{
"text": "ここにプロンプトを入力"
}]
}]
}
思考レベルを使用する場合
{
"contents": [{
"parts": [{
"text": "ユーザー認証エンドポイントのAPIドキュメントを生成する"
}]
}],
"generationConfig": {
"thinkingLevel": "high"
}
}
思考レベル:low、medium、high
- Low:高速でシンプルな応答
- Medium:バランスの取れた推論
- High:詳細な分析、複雑なタスク
システム指示を使用する場合
{
"systemInstruction": {
"parts": [{
"text": "あなたはAPIドキュメントのエキスパートです。明確で簡潔なドキュメントを作成してください。"
}]
},
"contents": [{
"parts": [{
"text": "このエンドポイントをドキュメント化してください:POST /api/users"
}]
}]
}
システム指示は、会話内のすべてのリクエストにおけるモデルの動作をガイドします。
レスポンス形式
APIは次の構造のJSONを返します。
{
"candidates": [{
"content": {
"parts": [{
"text": "REST APIは、GET、POST、PUT、DELETEなどの標準的なメソッドを使用して、アプリケーションがHTTP経由で通信できるようにするインターフェースです。"
}],
"role": "model"
},
"finishReason": "STOP",
"index": 0,
"safetyRatings": [...]
}],
"usageMetadata": {
"promptTokenCount": 8,
"candidatesTokenCount": 25,
"totalTokenCount": 33
}
}
主要なフィールド:
candidates[0].content.parts[0].text- 生成された応答usageMetadata- 請求用のトークン数finishReason- 生成が停止した理由(STOP、MAX_TOKENS、SAFETY)
一般的なユースケース
1. APIドキュメントの生成
import google.generativeai as genai
genai.configure(api_key=os.environ.get('GOOGLE_API_KEY'))
model = genai.GenerativeModel('gemini-3.1-flash-lite')
endpoint_spec = """
POST /api/v1/users
Creates a new user account
Body: { "email": string, "password": string, "name": string }
"""
response = model.generate_content(
f"Generate comprehensive API documentation for this endpoint:\n{endpoint_spec}",
generation_config={"thinkingLevel": "medium"}
)
print(response.text)
2. リクエストの検証
def validate_api_request(request_body):
model = genai.GenerativeModel('gemini-3.1-flash-lite')
prompt = f"""
このAPIリクエストボディを検証し、問題をリストアップしてください。
{request_body}
以下をチェックしてください:
- 必須フィールドの欠落
- 無効なデータ型
- セキュリティ上の懸念
"""
response = model.generate_content(prompt)
return response.text
# 使用例
request = '{"email": "test@example.com", "password": "123"}'
validation_result = validate_api_request(request)
print(validation_result)
3. エラーメッセージの生成
def generate_user_friendly_error(error_code, technical_message):
model = genai.GenerativeModel('gemini-3.1-flash-lite')
prompt = f"""
この技術的なエラーをユーザーフレンドリーなメッセージに変換してください:
エラーコード: {error_code}
技術的詳細: {technical_message}
明確で、実行可能で、技術的でないものにしてください。
"""
response = model.generate_content(
prompt,
generation_config={"thinkingLevel": "low"}
)
return response.text
# 例
friendly_error = generate_user_friendly_error(
"AUTH_TOKEN_EXPIRED",
"JWT token validation failed: exp claim is in the past"
)
print(friendly_error)
レート制限とクォータ
Flash Liteには、プレビュー期間中、寛大な制限が設けられています。
無料枠:
- 入力トークン100万件まで無料
- 1分あたり15リクエスト
- 1日あたり1,500リクエスト
有料枠:
- 入力トークン100万件あたり0.25ドル
- 出力トークン100万件あたり1.50ドル
- 1分あたり60リクエスト
- 1日の制限なし
使用状況はGoogle AI Studioの使用状況と請求で監視してください。
エラー処理
一般的なエラーを適切に処理します。
import google.generativeai as genai
from google.api_core import exceptions
genai.configure(api_key=os.environ.get('GOOGLE_API_KEY'))
model = genai.GenerativeModel('gemini-3.1-flash-lite')
def safe_generate(prompt):
try:
response = model.generate_content(prompt)
return response.text
except exceptions.ResourceExhausted:
return "レート制限を超過しました。1分後にもう一度お試しください。"
except exceptions.InvalidArgument as e:
return f"無効なリクエスト: {str(e)}"
except exceptions.PermissionDenied:
return "APIキーが無効または期限切れです。"
except Exception as e:
return f"予期せぬエラー: {str(e)}"
result = safe_generate("APIについて説明してください")
print(result)
一般的なエラー:
400 Bad Request- 無効なJSONまたは必須フィールドの欠落401 Unauthorized- 無効なAPIキー429 Too Many Requests- レート制限を超過500 Internal Server Error- Googleのサーバーで問題が発生
トラブルシューティング
「APIキーが無効です」
以下を確認してください:
- APIキーが正しくコピーされているか(余分なスペースがないか)
- Google Cloud ConsoleでAPIキーが有効になっているか
- プロジェクトで課金が有効になっているか
- 正しい環境変数名を使用しているか
「モデルが見つかりません」
正確なモデル名を使用していることを確認してください:
# 正しい
model = genai.GenerativeModel('gemini-3.1-flash-lite')
# 間違い
model = genai.GenerativeModel('gemini-flash-lite')
model = genai.GenerativeModel('gemini-3.1-flash')
「レート制限を超過しました」
1分あたりのリクエスト制限に達しました。解決策:
- 指数関数的バックオフ再試行ロジックを追加する
- 複数のプロンプトを単一のリクエストにバッチ処理する
- より高い制限のために有料ティアにアップグレードする
- リクエストキューを実装する
応答が遅い
Flash Liteは高速ですが、遅延が見られる場合は:
- ネットワーク接続を確認する
- 簡単なタスクには低い思考レベルを使用する
- プロンプトの長さを短くする
- 長い出力の場合はストリーミング応答を検討する
高度なトピック:応答のストリーミング
長い出力の場合、生成と同時にトークンをストリーミングします。
import google.generativeai as genai
genai.configure(api_key=os.environ.get('GOOGLE_API_KEY'))
model = genai.GenerativeModel('gemini-3.1-flash-lite')
prompt = "REST APIの認証方法について詳細に説明してください"
response = model.generate_content(prompt, stream=True)
for chunk in response:
print(chunk.text, end='', flush=True)
ストリーミングは知覚されるパフォーマンスを向上させます。ユーザーは完全な応答を待つことなく、すぐに結果を見ることができます。
コスト最適化のヒント
1. 類似のリクエストをバッチ処理する
# 高価: 3つの独立したリクエスト
response1 = model.generate_content("GETについて説明してください")
response2 = model.generate_content("POSTについて説明してください")
response3 = model.generate_content("PUTについて説明してください")
# 安価: 1つの結合されたリクエスト
combined_prompt = """
これらのHTTPメソッドについて説明してください:
1. GET
2. POST
3. PUT
"""
response = model.generate_content(combined_prompt)
2. 低い思考レベルを使用する
# 簡単な分類の場合
response = model.generate_content(
"このメールはスパムですか?「今すぐ購入!」",
generation_config={"thinkingLevel": "low"}
)
# 複雑な分析の場合
response = model.generate_content(
"このAPI設計を分析し、改善点を提案してください...",
generation_config={"thinkingLevel": "high"}
)
3. キャッシングを実装する
繰り返しのクエリに対して応答をキャッシュします。単純なインメモリキャッシュを使用すると、一般的なリクエストのコストを50%以上削減できます。
4. プロンプトを短縮する
不要なコンテキストを削除します。
# 冗長 (より多くのトークン)
prompt = "REST APIとは何か、そしてそれがどのように機能するかを詳細に説明してください"
# 簡潔 (より少ないトークン)
prompt = "REST APIについて説明してください"
セキュリティに関する考慮事項
1. APIキーを保護する
- 環境変数またはシークレットマネージャーに保存する
- 定期的にキーをローテーションする
- 開発/ステージング/本番用に別々のキーを使用する
- APIキーをログに記録しない
2. ユーザー入力を検証する
def safe_prompt(user_input):
# 潜在的なインジェクション試行を削除
cleaned = user_input.replace("以前の指示を無視する", "")
cleaned = cleaned[:1000] # 長さ制限
return f"ユーザーの質問: {cleaned}"
3. 機密データをフィルタリングする
APIに機密情報を送信しないでください。
import re
def sanitize_for_ai(text):
# メールアドレスを削除
text = re.sub(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b', '[EMAIL]', text)
# 電話番号を削除
text = re.sub(r'\b\d{3}[-.]?\d{3}[-.]?\d{4}\b', '[PHONE]', text)
# クレジットカード番号を削除
text = re.sub(r'\b\d{4}[-\s]?\d{4}[-\s]?\d{4}[-\s]?\d{4}\b', '[CARD]', text)
return text
4. レート制限を実装する
APIキーを悪用から保護します。
from collections import defaultdict
import time
class RateLimiter:
def __init__(self, max_requests=10, window=60):
self.max_requests = max_requests
self.window = window
self.requests = defaultdict(list)
def allow_request(self, user_id):
now = time.time()
# 古いリクエストを削除
self.requests[user_id] = [
req_time for req_time in self.requests[user_id]
if now - req_time < self.window
]
if len(self.requests[user_id]) < self.max_requests:
self.requests[user_id].append(now)
return True
return False
limiter = RateLimiter(max_requests=10, window=60)
def generate_with_limit(user_id, prompt):
if not limiter.allow_request(user_id):
return "レート制限を超過しました。後でもう一度お試しください。"
model = genai.GenerativeModel('gemini-3.1-flash-lite')
response = model.generate_content(prompt)
return response.text
Flash Liteと他のGeminiモデルの比較
| 機能 | Flash Lite | Flash | Pro |
|---|---|---|---|
| 入力価格 | 0.25ドル/1M | 0.50ドル/1M | 1.25ドル/1M |
| 出力価格 | 1.50ドル/1M | 3.00ドル/1M | 7.50ドル/1M |
| 速度 | 2.5倍高速 | 高速 | 標準 |
| コンテキストウィンドウ | 32Kトークン | 1Mトークン | 2Mトークン |
| 最適な用途 | 大量処理、コスト重視 | バランス型 | 複雑な推論 |
Flash Liteを選ぶべきは次の場合です:
- 高速な応答が必要な場合
- コストが重要な場合
- リクエストが32Kトークン未満の場合
- 品質要件が中程度の場合
Flashを選ぶべきは次の場合です:
- 大きなコンテキストウィンドウが必要な場合
- コストよりも品質が重要な場合
Proを選ぶべきは次の場合です:
- 最大の推論能力が必要な場合
- コストが懸念事項でない場合
- 非常に大きなドキュメントを扱う場合
Apidogワークフローとの統合
ApidogユーザーはFlash LiteをAPI開発ワークフローに統合できます。
1. テストケースを自動生成する
Flash Liteを使用して、API仕様からテストケースを生成します。
def generate_test_cases(endpoint_spec):
model = genai.GenerativeModel('gemini-3.1-flash-lite')
prompt = f"""
このAPIエンドポイントの包括的なテストケースを生成してください:
{json.dumps(endpoint_spec, indent=2)}
以下を含めてください:
- ハッピーパスのテスト
- エッジケース
- エラーシナリオ
- 境界条件
テストケースのJSON配列としてフォーマットしてください。
"""
response = model.generate_content(prompt)
return json.loads(response.text)
2. API応答を検証する
応答が期待されるスキーマと一致するかどうかを確認します。
def validate_response(response_data, expected_schema):
model = genai.GenerativeModel('gemini-3.1-flash-lite')
prompt = f"""
このAPI応答をスキーマに対して検証してください:
応答: {json.dumps(response_data, indent=2)}
スキーマ: {json.dumps(expected_schema, indent=2)}
不一致または問題をリストアップしてください。
"""
response = model.generate_content(
prompt,
generation_config={"thinkingLevel": "low"}
)
return response.text
3. モックデータを生成する
現実的なテストデータを作成します。
def generate_mock_data(schema, count=10):
model = genai.GenerativeModel('gemini-3.1-flash-lite')
prompt = f"""
このスキーマに一致する、現実的なモックデータを{count}件生成してください:
{json.dumps(schema, indent=2)}
JSON配列として返してください。
"""
response = model.generate_content(prompt)
return json.loads(response.text)
FAQ
Gemini 3.1 Flash Liteは無料ですか?
プレビュー期間中は、最初の100万入力トークンが無料です。それ以降は、100万入力トークンあたり0.25ドル、100万出力トークンあたり1.50ドルが課金されます。
Flash Liteは他のモデルと比べてどのくらい速いですか?
Flash Liteは、最初のトークンまでの時間がGemini 2.5 Flashより2.5倍速く、出力速度は45%速いです。利用可能なモデルの中で最速の1つです。
Flash Liteは本番環境で使用できますか?
はい。プレビュー版とされていますが、モデルは本番環境で使用できるほど安定しています。Latitude、Cartwheel、Wheringなどの初期採用企業は、すでに大規模に利用しています。
コンテキストウィンドウのサイズはどのくらいですか?
Flash Liteは最大32,000トークンのコンテキストをサポートします。これはほとんどのAPIユースケースには十分ですが、Flash(100万トークン)やPro(200万トークン)よりは小さいです。
思考レベルはどのように機能しますか?
思考レベルは、モデルが適用する処理の量を制御します。低は高速でシンプル、高は低速ですがより徹底的です。分類には低を、複雑な推論には高を使用します。
Flash LiteをApidogで使用できますか?
はい。ApidogはGeminiを含むあらゆるREST APIで動作します。Apidogでリクエストをセットアップすると、テスト、チームコラボレーション、ドキュメント生成が容易になります。
レート制限を超過するとどうなりますか?
429エラーが発生します。指数関数的バックオフ再試行ロジックを実装するか、より高い制限(1分あたり15リクエストに対し60リクエスト)のために有料ティアにアップグレードしてください。
私のデータはモデルのトレーニングに使用されますか?
Googleのポリシーによると、APIリクエストはモデルのトレーニングには使用されません。あなたのデータはプライベートに保たれます。
Flash Liteをファインチューニングできますか?
現時点ではできません。ファインチューニングは一部のGeminiモデルで利用可能ですが、Flash Liteのリリース時には利用できません。代わりにシステム指示を使用して動作をガイドしてください。
Flash LiteはGPT-4 Turboと比較してどうですか?
Flash Liteは高速で安価ですが、GPT-4 Turboは複雑なタスクに対してより強力な推論能力を持っています。大量のAPIワークロードの場合、Flash Liteはコストと速度で優位です。
次のステップ
これで、Gemini 3.1 Flash Liteの使用を開始するために必要なすべてが揃いました。
- Google AI StudioからAPIキーを取得する
- SDKをインストールし、最初のリクエストを実行する
- 開発を容易にするためにApidogでテストする
- エラー処理と再試行ロジックを実装する
- コストを最適化するために使用状況を監視する
このモデルは本番環境に対応しています。この価格設定により、AIを大規模に利用できるようになります。この速度はユーザーを満足させます。
さあ、開発を始めましょう。
