コンテンツを生成
CometAPI を介して Gemini ネイティブ API 形式を使用し、テキスト生成、動画入力、思考の要約、Google 検索によるグラウンディング、JSON 出力、ストリーミング(Streaming)を利用します。
gemini-3.8-flash を使用します。
x-goog-api-key ヘッダーと Authorization: Bearer ヘッダーの両方がサポートされています。クイックスタート
Google Gen AI SDK または HTTP クライアントを CometAPI と使用するには、ベース URL と API キーを設定します。generateContent のリクエスト形式を維持してください。
動画入力を送信
動画をコンテンツパートとして送信します。動画の保存場所に応じて入力形式を選択してください。inlineData.mimeType や fileData.fileUri などの camelCase フィールド名を使用します。<base64-encoded-mp4> を動画の base64 コンテンツに置き換えてください:
思考を設定 (推論)
推論の深さを調整するには、thinkingConfig.thinkingLevel を使用します。以下の例では、LOW と MEDIUM を使用します。
- 思考レベル
- 思考の要約
LOW に設定します。thinkingBudget は、Gemini 2.5 を含む互換モデル向けの数値コントロールです。Gemini 3 の例では thinkingLevel を使用し、両方のコントロールを送信しないでください。Google の 思考ガイド でモデル固有の値を確認してください。レスポンスをストリーミング
Server-Sent Events を受信するには、streamGenerateContent?alt=sse を使用します。各 data: 行には JSON の GenerateContentResponse オブジェクトが含まれます。
システム指示を設定
レスポンスを導くには、systemInstruction を使用します。この例では、追加テキストなしで1つの数式をリクエストします。
JSON 出力をリクエスト
responseMimeType を application/json に設定し、responseSchema を指定します。この例では、名前と数値の距離を持つ惑星の配列をリクエストします。
Google 検索でグラウンディング
検索グラウンディングをリクエストするには、googleSearch ツールを追加します。この例では、UEFA EURO 2024 決勝の結果を問い合わせます。
groundingMetadata で検索クエリ、ソース URL、ソースとレスポンステキストの間のリンクを確認します。
会話コンテンツを保持
複数ターンの会話では、先行するuser と model のコンテンツを contents で送信します。SDK のチャット例では、この履歴が維持されます。
関数呼び出しでは、各 functionResponse に対して、対応する functionCall と返された name を含む id を 1 つ返します。先行するモデルコンテンツは、thoughtSignature フィールドを含めて変更せずにそのまま渡してください。署名は不透明なため、表示されたテキストから再構築しないでください。
レスポンスの例
テキストレスポンスには、生成されたコンテンツとトークン(Token)使用量が含まれます。この簡略化した例では、オプションのフィールドを省略しています。thoughtsTokenCount レスポンスに思考の要約が含まれていない場合でも、内部の思考トークン(Token)が報告されます。各コンテンツ部分を確認してください。レスポンスにはテキスト、要約、または関数呼び出しを含めることができます。リクエスト形式を比較
Gemini のリクエストおよびレスポンスフィールドにはネイティブエンドポイントを選択してください。OpenAI 互換形式については、 チャット補完 を参照してください。承認
Your CometAPI key passed via the x-goog-api-key header. Bearer token authentication (Authorization: Bearer $COMETAPI_KEY) is also supported.
パスパラメータ
Gemini model ID. These examples use gemini-3.8-flash. See the Models page for available model IDs.
Operation to perform. Use generateContent for a JSON response. For Server-Sent Events, select streamGenerateContent and set the separate alt query parameter to sse.
generateContent, streamGenerateContent クエリパラメータ
Set to sse when the operator is streamGenerateContent. Omit this parameter for generateContent.
sse ボディ
Conversation content. Each entry has an optional role (user or model) and a parts array. For tool results, preserve the complete preceding model content, including any thoughtSignature fields.
System instructions that guide the model's behavior across the entire conversation. Text only.
Tools available to the model during generation. Use googleSearch for search grounding.
Configuration for tool usage, such as function calling mode.
Safety filter settings. Override default thresholds for specific harm categories.
Configuration for model generation behavior including temperature, output length, and response format.
The name of cached content to use as context. Format: cachedContents/{id}. See the Gemini context caching documentation for details.
レスポンス
Successful response. For streaming requests, the response is a stream of SSE events, each containing a GenerateContentResponse JSON object prefixed with data:.
The generated response candidates.
Feedback on the prompt, including safety blocking information.
Token usage statistics for the request.
The model version that generated this response.
The timestamp when this response was created (ISO 8601 format).
Unique identifier for this response.