メインコンテンツへスキップ
POST
/
v1
/
models
/
{model}
:generateContent
curl -X POST https://qingbo.dev/v1/models/gemini-2.5-flash:generateContent \
  -H "x-goog-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {"text": "解释一下冒泡排序算法。"}
        ]
      }
    ],
    "generationConfig": {
      "temperature": 0.7,
      "maxOutputTokens": 1024
    }
  }'
Gemini ネイティブ形式 API は、Google Gemini モデルとのネイティブなインターフェースを提供し、マルチモーダル入力や高度な機能に対応しています。
curl -X POST https://qingbo.dev/v1/models/gemini-2.5-flash:generateContent \
  -H "x-goog-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {"text": "解释一下冒泡排序算法。"}
        ]
      }
    ],
    "generationConfig": {
      "temperature": 0.7,
      "maxOutputTokens": 1024
    }
  }'

概要

対応モデル

Gemini 2.5 Pro

プロフェッショナル版、強力な推論能力

Gemini 2.5 Flash

高速版、速度とパフォーマンスのバランス

Gemini 2.5 Flash Lite

超軽量版、極めて速いレスポンス

Gemini 3 Pro Preview

最新世代プレビュー版、深層思考に対応

リクエストパラメータ

model
string
必須
モデル ID、URL パスパラメータとして指定:
  • gemini-2.5-pro
  • gemini-2.5-flash
  • gemini-2.5-flash-lite
  • gemini-2.5-pro-thinking
  • gemini-3-pro-preview
  • gemini-3-pro-preview-thinking
contents
array
必須
会話コンテンツ配列。
generationConfig
object
生成設定。

リクエスト例

curl https://qingbo.dev/v1/models/gemini-2.5-flash:generateContent \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: YOUR_API_KEY" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {
            "text": "解释量子计算的基本原理"
          }
        ]
      }
    ],
    "generationConfig": {
      "temperature": 0.7,
      "maxOutputTokens": 1000,
      "topP": 0.95
    }
  }'

レスポンス形式

{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          {
            "text": "量子计算是一种利用量子力学原理..."
          }
        ]
      },
      "finishReason": "STOP",
      "safetyRatings": [...]
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 12,
    "candidatesTokenCount": 156,
    "totalTokenCount": 168
  }
}

マルチモーダル入力

Gemini はテキストと画像の混合入力に対応しています:
import PIL.Image

# 画像の読み込み
img = PIL.Image.open('image.jpg')

# テキストと画像を送信
response = model.generate_content([
    "描述这张图片中的内容",
    img
])

print(response.text)

ストリーミング出力

response = model.generate_content(
    "写一个关于AI的故事",
    stream=True
)

for chunk in response:
    print(chunk.text, end="")

セーフティ設定

コンテンツフィルタリングレベルを制御します:
from google.generativeai.types import HarmCategory, HarmBlockThreshold

response = model.generate_content(
    "你的提示词",
    safety_settings={
        HarmCategory.HARM_CATEGORY_HATE_SPEECH: HarmBlockThreshold.BLOCK_ONLY_HIGH,
        HarmCategory.HARM_CATEGORY_HARASSMENT: HarmBlockThreshold.BLOCK_ONLY_HIGH,
    }
)

機能比較

機能Gemini 2.0 FlashGemini 1.5 ProGemini 1.5 Flash
コンテキストウィンドウ100万 Token200万 Token100万 Token
マルチモーダル入力
コード生成
速度非常に速い速い非常に速い
長文コンテキスト処理: Gemini 1.5 Pro は最大200万 Token のコンテキストに対応しており、長文ドキュメントや動画分析の処理に適しています。