models

Google: Gemini 3.8 Flash (batch)

Markdown · JSON

Google: Gemini 3.8 Flash (batch)

Gemini 3.8 Flash — мультимодальная рабочая модель Google для продолжительной разработки ПО, агентов и сложных задач со знаниями. Она принимает текст, изображения, аудио, видео и PDF, возвращает текст и предлагает рассуждения low, medium или high с инструментами и структурированным выводом. Документированные пределы входа/вывода — 1 048 576/65 536 токенов.

О модели

Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.

Gemini 3.8 Flash — модель Google с текстовым выводом для продолжительной разработки ПО, многошаговых агентов и сложных процессов работы со знаниями. Она развивает Gemini 3.7 Flash, улучшая разработку ПО и агентную работу со знаниями. Модель принимает текст, изображения, аудио, видео и PDF, поэтому задача может сочетать письменную цель с реальными материалами, необходимыми для её решения. Полезный результат — изменение кода, анализ с объяснением, письменный ответ или структурированная запись.

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

Для длительной работы используйте небольшие шаги рассуждений, последовательные вызовы инструментов и проверки промежуточных результатов. Уровни thinking low, medium и high управляют объёмом рассуждений; документированное значение по умолчанию — medium. Low подходит для быстрого черновика или ограниченного анализа, а high предназначен для сложной математики, программирования и многошаговых задач. Gemini 3.8 Flash не поддерживает уровень minimal. Поэтому длительной отладке и простому извлечению полей нужны разные варианты рассуждений, а не одна настройка для каждого запроса.

Документированные инструменты включают вызов функций, выполнение кода, поиск по файлам, привязку к поиску, Google Maps и URL context; Computer Use указан как предварительная возможность. Структурированный вывод определяет машиночитаемый результат. Функции должны иметь ясное назначение и определения параметров: модель может запросить функцию, а подключённое приложение выполняет операцию и возвращает результат. Сохраняйте идентичность функций и фактически возвращённые материалы между ходами. Полезный итоговый ответ объясняет, какие свидетельства подтверждают предлагаемое исправление или извлечённое значение.

Руководство по миграции на 3.8 использует уровни thinking вместо прежней настройки бюджета рассуждений и советует удалить устаревшие параметры семплирования и заранее заполненные реплики модели. Оно также требует сохранять thought signatures в соответствующем процессе без состояния и сопоставлять ответы функций с их вызовами по идентичности и имени. Это важно для продолжения многошаговой задачи: следующему ходу нужен реальный предыдущий контекст, а не переписанный рассказ, теряющий результат инструмента или подпись. Явно укажите вопрос и требуемый вывод в новой пользовательской реплике.

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

Пределы Gemini API составляют 1 048 576 токенов входа и 65 536 токенов вывода, что соответствует собственному контексту модели до 1M и текстовому выводу 64K. Инструкции, история диалога и переданные медиаматериалы занимают входной контекст; рассуждения или длинный итоговый материал должны укладываться в документированный объём вывода. Для этого профиля разработчика Google также указывает кэширование, пакетную обработку, Flex и Priority. Для независимых элементов сохраняйте стабильный идентификатор и явный формат вывода, чтобы каждый результат оставался связан со своим источником.

Возможные ограничения включают галлюцинации, эпизодическую медленную работу или тайм-ауты и больший расход токенов при высоком усилии. Граница знаний — март 2026 года, при этом в отдельных областях знания по-прежнему ограничены январём 2025 года. Предоставляйте актуальные свидетельства или используйте документированные инструменты привязки к источникам, когда задача зависит от более поздней информации. Проверяйте ссылки на источники, расчёты и предлагаемый код по реальным входам и результатам выполнения. Полезный итоговый материал должен отделять подтверждённое заключение от нерешённого вопроса, не предполагая, что гладкий ответ устанавливает достижение требуемого результата.

Ailoot Ultra · Пакетная обработка POST /v1/batches google/gemini-3.8-flash:batch

google/gemini-3.8-flash:batch

Google /google/gemini-3.8-flash:batch

Начало

Gemini 3.8 Flash — мультимодальная рабочая модель Google для продолжительной разработки ПО, агентов и сложных задач со знаниями. Она принимает текст, изображения, аудио, видео и PDF, возвращает текст и предлагает рассуждения low, medium или high с инструментами и структурированным выводом. Документированные пределы входа/вывода — 1 048 576/65 536 токенов.

Допустимые входные данные
Текст
Результаты
Текст

Доступно в Ailoot · входные данные и методы

Ailoot Ultra · Пакетная обработка POST /v1/batches
Входные данные
text
Результат
text
Выходной формат
Встроенный JSON results[].response.body
ПолеТипТребованиеЗначения и ограниченияПо умолчанию
ПолеendpointТипstringТребованиеОбязательноЗначения и ограничения
/v1/chat/completions
По умолчанию—
ПолеmodelТипstringТребованиеОбязательноЗначения и ограничения
google/gemini-3.8-flash:batch
По умолчанию—
ПолеrequestsТипbatch_item[]ТребованиеОбязательноЗначения и ограничения
Минимум элементов: 1
По умолчанию—
Полеrequests[].custom_idТипstringТребованиеОбязательноЗначения и ограниченияПо умолчанию—
Полеrequests[].body.messagesТипmessage[]ТребованиеОбязательноЗначения и ограниченияПо умолчанию—
Полеcompletion_windowТипstringТребованиеНеобязательноЗначения и ограничения
24h
По умолчанию—
ПолеproviderТипobject|nullТребованиеНеобязательноЗначения и ограниченияПо умолчанию—
Полеrequests[].body.modelТипstringТребованиеНеобязательноЗначения и ограничения
google/gemini-3.8-flash:batch, google/gemini-3.8-flash
По умолчанию—
Полеprovider.onlyТипstring[]ТребованиеНеобязательноЗначения и ограничения
google-vertex/global
По умолчанию—
Полеprovider.allow_fallbacksТипboolean|nullТребованиеНеобязательноЗначения и ограничения
false, null
По умолчанию—
Параметры и жизненный цикл метода
ПараметрКонтракт
Параметрcontent_typeКонтрактapplication/json
ПараметрrequiredКонтрактendpoint, model, requests
Параметрmaterial_typesКонтрактtext
ПараметрrepresentationКонтрактВстроенный массив requests[]; у каждого элемента есть custom_id и body
Параметрrequest_endpoint_profileКонтракт/v1/chat/completions
Параметрfile_materialКонтрактВызывающая сторона может локально прочитать фактический JSONL в UTF-8 и поместить его в requests[]. Назначение загрузки, input_file_id и ссылка на файл не используются. Отсутствующий или пустой материал клиента останавливает подготовку до POST.
Параметрserialization_orderКонтрактendpoint, model, provider (если указан), completion_window (если указан), requests — последним
Параметрoptional_controlsКонтрактprovider.only, provider.allow_fallbacks, completion_window
Параметрschema_scopeКонтрактТела текстовых запросов Chat Completions в документированной встроенной оболочке Batch.

Жизненный цикл: asynchronous

GET /v1/batches/{operation_id} · Фактический response.id исходного ответа на создание; тот же пользователь, ключ и группа

Тарифы

Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.

Быстрый режим
Не указано При выборе быстрого режима
Режим flex
Не указано При выборе режима flex
Максимальная интенсивность рассуждений
Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)
Цены явного кэширования
Не включено Когда запрошено явное кэширование

Ставки Ailoot

Цены по конфигурациям

Сопоставьте каждую плату с указанными условиями. Для каждого набора альтернативных конфигураций используйте одну ставку.

КонфигурацияШкала ставокТокенов контекста большеТокенов контекста не более, включительноПлата
КонфигурацияБазовые ставки за токеныШкала ставокБазовая ставкаТокенов контекста больше—Токенов контекста не более, включительноБез верхней границыПлата
Вход · Входные токены $0.00075 / 1K токенов
Выход · Выходные токены $0.00375 / 1K токенов
Вход · Чтение кэша $0.000075 / 1K токенов
Вход · Запись в кэш $0.0000833333333333334 / 1K токенов
Вход · Запись в кэш, 1 час — / 1K токенов
КонфигурацияУровень 1 по длине запросаШкала ставок—Токенов контекста больше0Токенов контекста не более, включительноБез верхней границыПлата
Вход · Входные токены $0.00075 / 1K токенов
Выход · Выходные токены $0.00375 / 1K токенов
Вход · Чтение кэша $0.000075 / 1K токенов
Вход · Запись в кэш $0.0000833333333333334 / 1K токенов
Вход · Запись в кэш, 1 час — / 1K токенов

Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →

Примеры запросов

Ailoot Ultra · Пакетная обработка

curl · сохранённый образец запросаPython HTTP · реальный JSONL клиентаPython · сохраните каждый готовый результат
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"google/gemini-3.8-flash:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
import json, os
from pathlib import Path
from urllib.request import Request, urlopen

def prepare_requests(customer_path):
    path = Path(customer_path)
    if not path.is_file(): raise ValueError("Customer JSONL file is missing")
    items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
    if not items: raise ValueError("Customer JSONL contains no requests")
    ids = set()
    for item in items:
        if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
        cid = item["custom_id"]
        if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
        ids.add(cid)
        if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
        supplied_model = item["body"].get("model")
        if supplied_model is not None and supplied_model not in ['google/gemini-3.8-flash:batch', 'google/gemini-3.8-flash']: raise ValueError("body.model must be an exact documented caller or wire ID")
    return {"endpoint":"/v1/chat/completions", "model":"google/gemini-3.8-flash:batch", "requests":items}

if __name__ == "__main__":
    material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
    if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
    body = prepare_requests(material)
    key = os.environ.get("AILOOT_API_KEY", "")
    if not key: raise SystemExit("Set AILOOT_API_KEY")
    request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
    with urlopen(request) as response:
        raw = response.read()
        Path("batch-create-response.json").write_bytes(raw)
        print(raw.decode("utf-8"))
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
    raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
    raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.

Получить и сохранить результаты

Ailoot Ultra · Пакетная обработка

Встроенный JSON results[].response.body

  • GET /v1/batches/{operation_id}
Проверить статус задачи
curl · статус исходной операции
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
Сохраняйте все готовые результаты

Сохраняйте каждый полностью полученный ответ, файл и элемент содержимого.

Сохраняйте полный исходный JSON статуса, каждый результат и custom_id, а также полное тело ответа или ошибки. Сохраняйте завершённые results[] как JSONL без фильтрации.

Если нужно проверить исходный ответ

Сохраните исходный ID операции. Ответ 503 result_pending_check содержит X-Should-Retry:false; никогда не отправляйте повторно исходный пакет с неизвестным результатом.

Поля ответа
ПолеТип
Полеresults[].custom_idТипstring
Полеresults[].response.body.choices[].message.contentТипstring|null
Полеresults[].errorТипobject|null
ПолеusageТипobject|null
ПолеidТипstring
ПолеmodelТипstring
ПолеendpointТипstring
ПолеstatusТипstring
Полеrequest_countsТипobject
Полеresults[].idТипstring
Полеresults[].response.status_codeТипinteger
Полеresults[].response.request_idТипstring
Ошибки и дальнейшие шаги
ОтветУсловиеСледующий шаг
Ответ400 · invalid_request_errorУсловиеНеверный формат документированной встроенной оболочки, повторяющиеся ключи, ошибки идентификации элементов или конфликт настроенных возможностей модели.Следующий шагИсправьте указанные поля перед любой новой отправкой.
Ответ401 · authentication_errorУсловиеНедействительный ключ API.Следующий шагИспользуйте разрешённый ключ Ailoot.
Ответ403 · permission_errorУсловиеГруппа пакетной обработки недоступна.Следующий шагПроверьте права доступа ключа и группы.
Ответ422 · invalid_request_errorУсловиеПакетная обработка оплачивается с баланса; создание по подписке отклоняется.Следующий шагИспользуйте разрешённую группу с оплатой с баланса.
Ответ422 · price_unavailableУсловиеСтоимость входных данных пакета невозможно рассчитать.Следующий шагСохраните ответ; используйте документированный формат входных данных для этого семейства.
Ответ402 · billing_errorУсловиеРезерв для пакетной обработки недоступен.Следующий шагУстраните причину отказа в допуске перед новым запросом.
Ответ503 · price_unavailableУсловиеЦена метода пакетной обработки или нативные тарифы недоступны.Следующий шагСохраните ответ; не подменяйте цены.
Ответ503 · api_errorУсловиеТочный маршрут поставщика недоступен.Следующий шагСохраните ответ для исправления маршрута.
Ответ503 · result_pending_checkУсловиеИсходный результат требует проверки; X-Should-Retry:false.Следующий шагСохраните исходный operation_id/id и читайте его статус; никогда не повторяйте исходный POST.
Ответ404 · not_foundУсловиеОперация проверки статуса пакета отсутствует или принадлежит другой учётной записи.Следующий шагИспользуйте точный исходный id и того же пользователя, ключ и группу.

Псевдонимы

Псевдонимы моделей

Ailoot Ultra google/gemini-3.8-flash:batch

Псевдонимы путей метода

Используйте пути методов, указанные выше.

Связанные ID для вызова

google/gemini-3.8-flash:batch

FAQ · Google: Gemini 3.8 Flash (batch)
Какие входные данные и результаты доступны?

POST /v1/batches · google/gemini-3.8-flash:batch: text → text

Какие поля использует запрос?

POST /v1/batches · google/gemini-3.8-flash:batch: endpoint, model, requests, completion_window, provider

Какие ограничения действуют?

POST /v1/batches · google/gemini-3.8-flash:batch: requests.min_items: 1

Подробнее

Подключите Ailoot к Claude Code, OpenCode, Hermes или своему приложению.

Компания и портфель её проектов

Компания и портфель её проектов: миллионы клиентов; продажи на миллиарды ежемесячно.

Покупайте токены со скидкой.

Скидка по подписке для регулярной работы. Промокоды — до 50% на покупку токенов.

Подписка
Выберите тариф со скидкой для своих регулярных запросов.
Промокод до 50%
Введите код при покупке. Цена пересчитается с учётом действующей акции.
Расходы в истории
Модель, токены и сумма сохраняются для каждого запроса.

Выбрать подписку · Посмотреть цены моделей

Подключайте API к продукту, который вы продаёте.

SaaS, приложения и боты — по оферте и лицензионному договору Ailoot. Для перепродажи запросите реселлерскую лицензию.

Коммерческое приложение
Встраивайте генерацию текста, картинок, видео и звука в платные функции своего сервиса.
Лицензия для реселлера
Пришлите описание проекта и схему доступа. Запросите письменные условия использования и перепродажи.
Документы на сайте
Оферта, лицензионный договор и политика обработки данных доступны до подключения.

Запросить реселлерскую лицензию · Оферта и лицензионный договор