Endpoint: POST /projects/cognition/locations/us/publishers/google/models/{model}:generateContent
Google Gemini でテキストまたはマルチモーダル生成を行います。
import os
import requests
url = "https://api.yourouter.ai/v1/projects/cognition/locations/us/publishers/google/models/gemini-1.5-pro-latest:generateContent"
response = requests.post(
url,
headers={
"Authorization": f"Bearer {os.environ['YOUROUTER_API_KEY']}",
"Content-Type": "application/json",
"vendor": "google"
},
json={
"contents": [
{"role": "user", "parts": [{"text": "hello gemini"}]}
]
}
)
print(response.json())
パラメータ
使用する Gemini モデル(例: gemini-1.5-pro-latest)。
コンテンツしきい値を制御する任意のセーフティ設定。
画像入力
base64 エンコードした画像バイトは inlineData で渡します。
curl https://api.yourouter.ai/v1/projects/cognition/locations/us/publishers/google/models/gemini-2.5-flash:generateContent \
-H "Authorization: Bearer $YOUROUTER_API_KEY" \
-H "Content-Type: application/json" \
-H "vendor: google" \
-d '{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Describe this image in one sentence." },
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "<BASE64_IMAGE>"
}
}
]
}
]
}'
PDF 入力
Gemini 原生の generateContent 形式では、inlineData で PDF を送信できます。mimeType を application/pdf にし、PDF の生バイト列を base64 エンコードした値を data に渡します。
curl https://api.yourouter.ai/v1/projects/cognition/locations/us/publishers/google/models/gemini-2.5-flash:generateContent \
-H "Authorization: Bearer $YOUROUTER_API_KEY" \
-H "Content-Type: application/json" \
-H "vendor: google" \
-d '{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Summarize this PDF's key content." },
{
"inlineData": {
"mimeType": "application/pdf",
"data": "<BASE64_PDF>"
}
}
]
}
]
}'
PDF 対応は選択した Gemini モデルに依存します。長い文書はより多くのコンテキストウィンドウを消費するため、本番環境ではファイルサイズとページ数を制御し、必要に応じて文書を分割してください。
より広い連携パスは マルチモーダル を参照してください。