Claude Opus 5.5 уже доступна в SeedRouter

Text

Gemini 3.1 Pro

View Markdown

Нативные запросы Gemini, мультимодальный ввод, рассуждения, инструменты, кэширование и потоковые ответы. Лимиты модели и статус проверки.

Используйте gemini-3.1-pro-preview в нативном формате Gemini. На странице модели доступны Playground и актуальные цены; руководство по вариантам модели объясняет два официальных ID.

ID модели

ID моделиЛимит вводаУровень рассуждений по умолчанию
gemini-3.1-pro-preview1,048,576 токеновhigh

Краткий пример

curl https://api.seedrouter.ai/v1beta/models/gemini-3.1-pro-preview:generateContent \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"contents":[{"role":"user","parts":[{"text":"Explain a mutex in one sentence."}]}],"generationConfig":{"thinkingConfig":{"thinkingLevel":"low"},"maxOutputTokens":1024}}'

Модель указывается в URL. Поле contents обязательно. Ответ содержит нативные candidates, finishReason и usageMetadata; сохраняйте части содержимого целиком, включая thoughtSignature, в истории диалога.

Конечные точки

ОперацияЭндпоинт
Ответ JSONPOST /v1beta/models/gemini-3.1-pro-preview:generateContent
События сервераPOST /v1beta/models/gemini-3.1-pro-preview:streamGenerateContent?alt=sse

Спецификация OpenAPI содержит все вложенные схемы запросов и ответов. Для пропущенных необязательных полей действуют значения API по умолчанию. SeedRouter передаёт тело запроса без фильтрации неизвестных полей, удаления неподдерживаемых полей или проверки значений параметров модели. Принимать ли запрос, решает Gemini API.

Параметры запроса

URL фиксирует модель gemini-3.1-pro-preview. Контракт запроса содержит 12 полей верхнего уровня. Поля необязательны, если не указано иное; отсутствие поля отличается от JSON null. Произвольный JSON с допустимым null сохраняется там, где это разрешает официальная схема.

ПолеТипОбязательноЗначение по умолчанию и ограничения
contentsobject[]ДаНепустой диалог; у каждого элемента содержимого непустой parts
systemInstructionobjectНетТолько текстовые части; идентификатор пользователя автоматически не добавляется
generationConfigobjectНетПараметры генерации в следующей таблице
toolsobject[]НетОбъявления функций и настройки встроенных инструментов
toolConfigobjectНетВыбор функций и настройки поиска данных
safetySettingsobject[]НетОдна настройка на категорию; категории не должны повторяться
cachedContentstringНетСуществующий ресурс cachedContents/{id}; требуется совместимый доступ
serviceTierstringНетunspecified, standard, flex, priority; обычная обработка — standard
labelsobjectНетСтроковые значения; ключи и значения в нижнем регистре, до 63 кодовых точек Unicode каждое
modelstringНетНеобязательное имя ресурса; фактическую модель определяет URL
storebooleanНетОбщее предпочтение по хранению запроса; влияние на эту модель не проверено
continuationTokenstringНетОбщий непрозрачный токен; возможность продолжения для 3.1 Pro не подтверждена

Параметры генерации

Поле в generationConfigТипЗначение по умолчанию и ограничения
maxOutputTokensinteger1–65,536, включая рассуждения; по умолчанию у модели 65,536
thinkingConfigobjectthinkingLevel: low, medium, high (по умолчанию high); принимается написание в верхнем регистре. includeThoughts: boolean, по умолчанию false. thinkingBudget: integer, взаимоисключающий с thinkingLevel; числовой диапазон именно для этой модели не установлен
temperaturenumber0–2; Google рекомендует значение по умолчанию 1.0
topPnumber0–1; пропустите поле, чтобы использовать значение модели по умолчанию
topKintegerНеобязательно; настраиваемый диапазон для этой модели не установлен
candidateCountintegerТолько 1
stopSequencesstring[]Не более пяти последовательностей
responseMimeTypestringПо умолчанию text/plain; вывод по старой JSON-схеме требует application/json
responseSchemaobjectОфициальный диалект схемы; взаимоисключающий с responseJsonSchema
responseJsonSchemaJSONJSON Schema; взаимоисключающий с responseSchema
responseFormatobjectНастройки текстового формата; text.mimeType и необязательная text.schema. Схема требует MIME-тип JSON
responseModalitiesstring[]Только текст: TEXT; пустое значение означает текст
mediaResolutionenumMEDIA_RESOLUTION_UNSPECIFIED, LOW, MEDIUM, HIGH с префиксом MEDIA_RESOLUTION_
seedintegerЗнаковое 32-битное значение; детерминированное поведение этой модели не проверено
presencePenaltynumberОбщее поле; влияние и диапазон для этой модели не проверены
frequencyPenaltynumberОбщее поле; влияние и диапазон для этой модели не проверены
responseLogprobsbooleanОбщее поле; доступность для этой модели не проверена
logprobsinteger0–20; требует responseLogprobs: true; поддержка моделью не проверена
enableEnhancedCivicAnswersbooleanОбщее поле; поддержка моделью не проверена
enableAffectiveDialogbooleanОбщее поле; поддержка моделью не проверена
audioTranscriptionConfigobjectОбщее поле; параметры именно для этой модели не проверены
translationConfigobjectОбщее поле; параметры именно для этой модели не проверены

Документ OpenAPI перечисляет вложенные типы, enum, обязательные свойства и документированные границы для каждого сообщения. Схемы описывают официальные параметры и не служат списком разрешённых полей запроса SeedRouter. Переданные вызывающей стороной поля и значения сохраняются. Соответствие поля схеме не доказывает его поддержку каждой моделью или аккаунтом. Эта модель не поддерживает рассуждения minimal и обработку Agentic Video.

Структурированный вывод

{
  "contents": [{"parts": [{"text": "Return a JSON object with ok set to true."}]}],
  "generationConfig": {
    "thinkingConfig": {"thinkingLevel": "low"},
    "maxOutputTokens": 1024,
    "responseMimeType": "application/json",
    "responseJsonSchema": {
      "type": "object",
      "properties": {"ok": {"type": "boolean"}},
      "required": ["ok"]
    }
  }
}

Старые поля responseSchema и responseJsonSchema нельзя использовать вместе. Оба требуют responseMimeType: "application/json". Новая схема responseFormat.text также должна указывать JSON. В этом сообщении используйте написание enum из REST (APPLICATION_JSON и TEXT_PLAIN). Запросы передаются без изменений; MIME-типы медиа и произвольный JSON функций не переписываются.

Функции и встроенные инструменты

Используйте tools[].functionDeclarations с именем и одним из полей parameters или parametersJsonSchema, но не обоими. Для схем ответов действует то же правило взаимоисключения. Выбор функций задаётся в toolConfig.functionCallingConfig; allowedFunctionNames требует ANY или VALIDATED и объявленных имён.

Обычная модель поддерживает вызов функций; вариант customtools для этого не требуется. Ваше приложение исполняет возвращённые функции и передаёт результаты на следующем ходе диалога. Сохраняйте каждую исходную thoughtSignature, вызов функции и ответ функции. Не округляйте числовые идентификаторы при сериализации непрозрачных аргументов функций.

Google указывает Search, Maps, выполнение кода и контекст URL среди возможностей модели. File Search указан только для AI Studio. Существующие ресурсы кэша и поиска файлов требуют доступа с учётными данными, обслуживающими запрос. Computer Use и нативные настройки MCP присутствуют в общей схеме, но их доступность для этой модели не подтверждена. Playground не исполняет ваши пользовательские функции.

Мультимодальный ввод и безопасность

Элемент contents[].parts[] содержит ровно один вид полезных данных: текст, встроенные медиа, ссылку на файл, вызов/ответ функции или часть выполнения. Он также может содержать подпись или метаданные медиа. На вход поддерживаются текст, изображения, аудио, видео и PDF; на выходе — только текст.

Для встроенных байтов используйте inlineData.mimeType и base64 data. Для ссылок на файлы — fileData.mimeType и fileUri. Синтаксически корректный URL не доказывает, что модель может получить его содержимое. Метаданные видео могут задавать смещения начала и конца и положительный fps не выше 24. Глобальное разрешение медиа и разрешение отдельной части — разные настройки. Agentic Video не поддерживается.

Используйте нативный JSON для встроенных медиа или доступную ссылку на файл для более крупных материалов. Точные ограничения форматов, длительности и объёма медиа на запрос определяются официальной документацией по медиа и требуют проверки на реальных запросах.

Настройки безопасности используют официальный нативный формат. При их отсутствии действуют значения Gemini API по умолчанию; явно переданные настройки проходят без изменений.

Ответы JSON и потоковая передача

generateContent возвращает нативный JSON. streamGenerateContent?alt=sse передаёт нативный JSON в событиях SSE data:. Основные поля: candidates[].content.parts, finishReason, safetyRatings, groundingMetadata, promptFeedback, modelVersion, responseId и usageMetadata.

Сохраняйте нативное содержимое целиком в истории диалога. Краткие изложения рассуждений отличаются от подписей рассуждений. Обрыв соединения не доказывает ни сбой, ни завершение генерации; перед новым запросом проверьте частичный результат и записи аккаунта. Счётчики использования в потоке накопительные: используйте последние значения, не складывайте все фрагменты.

В отличие от Argon, продолжение длинного вывода для 3.1 Pro не подтверждено. Не создавайте цикл продолжения лишь потому, что общая схема ответа содержит поле токена.

Использование токенов и цены

promptTokenCount включает кэшированный вход. cachedContentTokenCount оплачивается по тарифу кэшированного входа и не начисляется повторно как некэшированный вход. Оплачиваемый выход включает candidatesTokenCount и thoughtsTokenCount. Указанные в ответе входные токены использования инструментов также входят во вход.

Порог контекста — 200,000 входных токенов, включая кэшированный вход; для большего ввода действуют тарифы длинного контекста. Доступные группы аккаунтов используют одно ценовое выражение модели и собственный текущий множитель. См. таблицу актуальных цен.

Flex и Priority — отдельные уровни обработки. Flex не уменьшает вдвое тариф кэшированного входа. Результат с указанным Standard не должен оплачиваться с надбавкой Priority. Если при запросе Priority ответ не подтверждает фактический уровень, интеграция применяет тарифы токенов Standard. Плата за инструменты и явное хранение кэша начисляется отдельно от генерации токенов; общий бесплатный лимит инструментов не обещается. Неудачные запросы не оплачиваются.

Несколько групп аккаунтов

Модель использует googlellm и googlellm-vertext с сохранением существующих прав аккаунта и тарифов. Написание имён групп точное. Выберите доступную группу в Playground или используйте необязательный заголовок API:

X-SeedRouter-Group: googlellm

Для второй группы укажите googlellm-vertext. Выбранная группа определяет цену и доступную мощность; явный выбор не вызывает скрытого переключения на другую группу. Пропустите заголовок или укажите auto, чтобы сохранить стандартное поведение API-ключа.

Проверьте доступные вашему API-ключу группы без генерации ответа:

curl "https://api.seedrouter.ai/api/seedrouter/llm/groups?model=gemini-3.1-pro-preview"   -H "Authorization: Bearer YOUR_SEEDROUTER_KEY"

Статус проверки

Элементы управления и документация следуют официальному нативному формату. Параметры проверяет Gemini API. Офлайн-проверки передачи и начисления платы не подтверждают доступность в рабочей среде. Реальная генерация, обе группы аккаунтов, понимание медиа, ресурсы кэша, встроенные инструменты и уровни обработки всё ещё требуют платной сквозной проверки. Сравнительный результат по качеству варианта Customtools не заявляется.

Источники