Skip to main content
POST
CometAPI поддерживает нативный формат API Gemini, предоставляя вам полный доступ к функциям, специфичным для Gemini, таким как управление thinking, grounding через Google Search, нативные modalities для генерации изображений и многое другое. Используйте этот endpoint, когда вам нужны возможности, недоступные через совместимый с OpenAI endpoint чата.
Используйте официальный справочник API GenerateContent от Google как основной источник полной информации о полях запроса, схеме ответа и поведении, зависящем от конкретной модели Gemini. Эта страница CometAPI объясняет, как отправлять этот нативный формат запроса через CometAPI.
Параметры запроса Gemini и поля ответа могут изменяться по мере того, как Google обновляет нативный API. Проверьте документацию Gemini по генерации текста, чтобы получить актуальный полный список параметров и сведения о поведении, специфичном для провайдера.
Для аутентификации поддерживаются оба заголовка: x-goog-api-key и Authorization: Bearer.

Быстрый старт

Чтобы использовать любой Gemini SDK или HTTP-клиент с CometAPI, замените базовый URL и API key:

Отправка видео в качестве входных данных

Gemini generateContent принимает видео как часть content. Выберите форму входных данных в зависимости от того, где хранится видео:
Для запросов REST и curl используйте имена полей Gemini в camelCase, такие как inlineData.mimeType и fileData.fileUri. Не отправляйте URL-медиа как file_data.file_uri.
В этом примере читается локальный MP4-файл, кодируется в base64 и отправляется в теле запроса:
В этом примере отправляется публичный MP4 URL с fileData.fileUri:
CometAPI не рекомендует отдельный процесс загрузки через Gemini Files API для этого endpoint. Отправляйте медиа в самом запросе generateContent, используя inlineData или fileData.fileUri.

Настройка thinking (reasoning)

Модели Gemini могут выполнять внутреннее рассуждение перед генерацией ответа. Способ управления зависит от поколения модели.
Модели Gemini 3 используют thinkingLevel для управления глубиной рассуждения. Доступные уровни: MINIMAL, LOW, MEDIUM, HIGH.Используйте gemini-3-flash-preview в качестве модели-примера по умолчанию, если вам не нужен конкретный другой вариант Gemini 3.
Использование thinkingLevel с моделями Gemini 2.5 (или thinkingBudget с моделями Gemini 3) может вызывать ошибки. Используйте правильный параметр для версии вашей модели.

Потоковые Responses

Чтобы получать Server-Sent Events по мере генерации контента моделью, используйте streamGenerateContent?alt=sse в качестве оператора. Каждое событие SSE содержит строку data: с JSON-объектом GenerateContentResponse.

Задание system instructions

Чтобы управлять поведением модели на протяжении всего разговора, используйте systemInstruction:

Запрос вывода в JSON

Чтобы принудительно включить структурированный JSON-вывод, задайте responseMimeType. При необходимости можно также указать responseSchema для строгой валидации схемы:

Чтобы включить поиск в интернете в реальном времени, добавьте инструмент googleSearch:
Ответ включает groundingMetadata с URL-адресами источников и оценками достоверности.

Пример ответа

Типичный ответ от Gemini endpoint в CometAPI:
Поле thoughtsTokenCount в usageMetadata показывает, сколько токенов модель потратила на внутреннее рассуждение, даже если thinking output не включён в ответ.

Сравнение с OpenAI-compatible endpoint

Авторизации

x-goog-api-key
string
header
обязательно

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

Параметры пути

model
string
обязательно

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

operator
enum<string>
обязательно

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

Доступные опции:
generateContent,
streamGenerateContent?alt=sse

Тело

application/json
contents
object[]

Conversation content. Each entry has an optional role (user or model) and a parts array.

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.

Ответ

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.