Ana içeriğe atla
POST
/
v1beta
/
models
/
{model}
:
{operator}
from google import genai

client = genai.Client(
    api_key="<COMETAPI_KEY>",
    http_options={"api_version": "v1beta", "base_url": "https://api.cometapi.com"},
)

response = client.models.generate_content(
    model="gemini-3-flash-preview",
    contents="Explain how AI works in a few words",
)

print(response.text)
{
  "candidates": [
    {
      "content": {
        "role": "<string>",
        "parts": [
          {
            "text": "<string>",
            "functionCall": {
              "name": "<string>",
              "args": {}
            },
            "inlineData": {
              "mimeType": "<string>",
              "data": "<string>"
            },
            "thought": true
          }
        ]
      },
      "safetyRatings": [
        {
          "category": "<string>",
          "probability": "<string>",
          "blocked": true
        }
      ],
      "citationMetadata": {
        "citationSources": [
          {
            "startIndex": 123,
            "endIndex": 123,
            "uri": "<string>",
            "license": "<string>"
          }
        ]
      },
      "tokenCount": 123,
      "avgLogprobs": 123,
      "groundingMetadata": {
        "groundingChunks": [
          {
            "web": {
              "uri": "<string>",
              "title": "<string>"
            }
          }
        ],
        "groundingSupports": [
          {
            "groundingChunkIndices": [
              123
            ],
            "confidenceScores": [
              123
            ],
            "segment": {
              "startIndex": 123,
              "endIndex": 123,
              "text": "<string>"
            }
          }
        ],
        "webSearchQueries": [
          "<string>"
        ]
      },
      "index": 123
    }
  ],
  "promptFeedback": {
    "safetyRatings": [
      {
        "category": "<string>",
        "probability": "<string>",
        "blocked": true
      }
    ]
  },
  "usageMetadata": {
    "promptTokenCount": 123,
    "candidatesTokenCount": 123,
    "totalTokenCount": 123,
    "trafficType": "<string>",
    "thoughtsTokenCount": 123,
    "promptTokensDetails": [
      {
        "modality": "<string>",
        "tokenCount": 123
      }
    ],
    "candidatesTokensDetails": [
      {
        "modality": "<string>",
        "tokenCount": 123
      }
    ]
  },
  "modelVersion": "<string>",
  "createTime": "<string>",
  "responseId": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt

Use this file to discover all available pages before exploring further.

CometAPI, Gemini’ye özgü düşünme kontrolü, Google Search grounding, yerel görüntü üretim modaliteleri ve daha fazlasına tam erişim sağlayan Gemini yerel API biçimini destekler. OpenAI-compatible chat endpoint üzerinden sunulmayan yeteneklere ihtiyaç duyduğunuzda bu endpoint’i kullanın.
Kimlik doğrulama için hem x-goog-api-key hem de Authorization: Bearer başlıkları desteklenir.

Hızlı başlangıç

CometAPI ile herhangi bir Gemini SDK’sı veya HTTP istemcisi kullanmak için base URL’yi ve API anahtarını değiştirin:
AyarGoogle varsayılanıCometAPI
Base URLgenerativelanguage.googleapis.comapi.cometapi.com
API Key$GEMINI_API_KEY$COMETAPI_KEY

Düşünmeyi yapılandırma (akıl yürütme)

Gemini modelleri, yanıt üretmeden önce dahili akıl yürütme yapabilir. Kontrol yöntemi model nesline bağlıdır.
Gemini 3 modelleri, akıl yürütme derinliğini kontrol etmek için thinkingLevel kullanır. Kullanılabilir seviyeler: MINIMAL, LOW, MEDIUM, HIGH.Özellikle farklı bir Gemini 3 varyantına ihtiyacınız yoksa varsayılan örnek model olarak gemini-3-flash-preview kullanın.
curl "https://api.cometapi.com/v1beta/models/gemini-3-flash-preview:generateContent" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $COMETAPI_KEY" \
  -d '{
    "contents": [{"parts": [{"text": "Explain quantum physics simply."}]}],
    "generationConfig": {
      "thinkingConfig": {"thinkingLevel": "LOW"}
    }
  }'
Gemini 2.5 modelleriyle thinkingLevel (veya Gemini 3 modelleriyle thinkingBudget) kullanmak hatalara neden olabilir. Model sürümünüz için doğru parametreyi kullanın.

Yanıtları stream etme

Model içerik üretirken Server-Sent Events almak için operatör olarak streamGenerateContent?alt=sse kullanın. Her SSE olayı, JSON GenerateContentResponse nesnesi içeren bir data: satırı barındırır.
curl "https://api.cometapi.com/v1beta/models/gemini-3-flash-preview:streamGenerateContent?alt=sse" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $COMETAPI_KEY" \
  --no-buffer \
  -d '{
    "contents": [{"parts": [{"text": "Write a short poem about the stars"}]}]
  }'

Sistem talimatlarını ayarlama

Tüm konuşma boyunca modelin davranışını yönlendirmek için systemInstruction kullanın:
curl "https://api.cometapi.com/v1beta/models/gemini-3-flash-preview:generateContent" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $COMETAPI_KEY" \
  -d '{
    "contents": [{"parts": [{"text": "What is 2+2?"}]}],
    "systemInstruction": {
      "parts": [{"text": "You are a math tutor. Always show your work."}]
    }
  }'

İstek JSON çıktısı

Yapılandırılmış JSON çıktısını zorlamak için responseMimeType ayarlayın. Sıkı şema doğrulaması için isteğe bağlı olarak bir responseSchema sağlayın:
curl "https://api.cometapi.com/v1beta/models/gemini-3-flash-preview:generateContent" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $COMETAPI_KEY" \
  -d '{
    "contents": [{"parts": [{"text": "List 3 planets with their distances from the sun"}]}],
    "generationConfig": {
      "responseMimeType": "application/json"
    }
  }'

Google Search ile grounding

Gerçek zamanlı web aramasını etkinleştirmek için bir googleSearch aracı ekleyin:
curl "https://api.cometapi.com/v1beta/models/gemini-3-flash-preview:generateContent" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $COMETAPI_KEY" \
  -d '{
    "contents": [{"parts": [{"text": "Who won the euro 2024?"}]}],
    "tools": [{"google_search": {}}]
  }'
Yanıt, kaynak URL’leri ve güven puanlarıyla birlikte groundingMetadata içerir.

Yanıt örneği

CometAPI’nin Gemini endpoint’inden tipik bir yanıt:
{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [{"text": "Hello"}]
      },
      "finishReason": "STOP",
      "avgLogprobs": -0.0023
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 5,
    "candidatesTokenCount": 1,
    "totalTokenCount": 30,
    "trafficType": "ON_DEMAND",
    "thoughtsTokenCount": 24,
    "promptTokensDetails": [{"modality": "TEXT", "tokenCount": 5}],
    "candidatesTokensDetails": [{"modality": "TEXT", "tokenCount": 1}]
  },
  "modelVersion": "gemini-3-flash-preview",
  "createTime": "2026-03-25T04:21:43.756483Z",
  "responseId": "CeynaY3LDtvG4_UP0qaCuQY"
}
usageMetadata içindeki thoughtsTokenCount alanı, düşünme çıktısı yanıta dahil edilmese bile modelin dahili muhakeme için kaç token harcadığını gösterir.

OpenAI uyumlu endpoint ile karşılaştırma

ÖzellikGemini Native (/v1beta/models/...)OpenAI-Compatible (/v1/chat/completions)
Düşünme kontrolüthinkingConfig ile thinkingLevel / thinkingBudgetKullanılamaz
Google Search groundingtools: [\{"google_search": \{\}\}]Kullanılamaz
Google Maps groundingtools: [\{"googleMaps": \{\}\}]Kullanılamaz
Görsel üretim modalityresponseModalities: ["IMAGE"]Kullanılamaz
Kimlik doğrulama header’ıx-goog-api-key veya BearerYalnızca Bearer
Yanıt biçimiGemini yerel biçimi (candidates, parts)OpenAI biçimi (choices, message)

Yetkilendirmeler

x-goog-api-key
string
header
gerekli

Your CometAPI key passed via the x-goog-api-key header. Bearer token authentication (Authorization: Bearer <key>) is also supported.

Yol Parametreleri

model
string
gerekli

Gemini model ID. Example: gemini-3-flash-preview, gemini-2.5-pro. See the Models page for current options.

operator
enum<string>
gerekli

The operation to perform. Use generateContent for synchronous responses, or streamGenerateContent?alt=sse for Server-Sent Events streaming.

Mevcut seçenekler:
generateContent,
streamGenerateContent?alt=sse

Gövde

application/json
contents
object[]
systemInstruction
object

System instructions that guide the model's behavior across the entire conversation. Text only.

tools
object[]

Tools the model may use to generate responses. Supports function declarations, Google Search, Google Maps, and code execution.

toolConfig
object

Configuration for tool usage, such as function calling mode.

safetySettings
object[]

Safety filter settings. Override default thresholds for specific harm categories.

generationConfig
object

Configuration for model generation behavior including temperature, output length, and response format.

cachedContent
string

The name of cached content to use as context. Format: cachedContents/{id}. See the Gemini context caching documentation for details.

Yanıt

200 - application/json

Successful response. For streaming requests, the response is a stream of SSE events, each containing a GenerateContentResponse JSON object prefixed with data:.

candidates
object[]

The generated response candidates.

promptFeedback
object

Feedback on the prompt, including safety blocking information.

usageMetadata
object

Token usage statistics for the request.

modelVersion
string

The model version that generated this response.

createTime
string

The timestamp when this response was created (ISO 8601 format).

responseId
string

Unique identifier for this response.