Source: https://ailoot.ai/models/ru/moonshotai-kimi-k3-u003a-batch/
Canonical: https://ailoot.ai/models/ru/moonshotai-kimi-k3-u003a-batch/
Language: ru

# MoonshotAI: Kimi K3 (batch)

[Markdown](https://ailoot.ai/models/ru/moonshotai-kimi-k3-u003a-batch/index.md) · [JSON](https://ailoot.ai/models/ru/moonshotai-kimi-k3-u003a-batch/facts.json)

## [MoonshotAI: Kimi K3 (batch)](https://ailoot.ai/models/ru/moonshotai-kimi-k3-u003a-batch/)

Kimi K3 — изначально мультимодальная модель рассуждения Moonshot AI для длинных задач программирования и работы со знаниями. Она читает текст, изображения и видео, создаёт текст и поддерживает процессы с инструментами, контекстом 1 048 576 токенов и сохранённой историей размышления между шагами.

- [**Ailoot Ultra · Пакетная обработка** `POST /v1/batches` `moonshotai/kimi-k3:batch`](https://ailoot.ai/models/ru/moonshotai-kimi-k3-u003a-batch/#method-0)

О модели

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

Kimi K3 — мультимодальная агентная модель Moonshot AI с открытыми весами для длительных задач программирования, работы со знаниями и рассуждения. Она сочетает текст с родным пониманием изображений и видео и создаёт текстовый ответ или запрос инструмента. Разработчик подчёркивает продолжительные инженерные сеансы, большие репозитории и задачи, использующие снимки экрана или визуальную обратную связь вместе с кодом. Полезное задание определяет желаемый материал, свидетельства для использования и условие завершения работы.

#### Архитектура и длинный контекст

Карточка модели описывает разреженную смесь экспертов с 2,8 трлн параметров всего и 104 млрд активируемых параметров. Её устройство Stable LatentMoE выбирает 16 из 896 экспертов на токен, используя Kimi Delta Attention и Attention Residuals вместе с вниманием с управляющими вентилями. Точная длина контекста — 1 048 576 токенов. Это место для значительного контекста задачи, а не причина отбрасывать границы источников или пространство для результата.

Опубликованный родной артефакт использует обучение с учётом квантования с весами MXFP4 и активациями MXFP8. Это формат выпуска разработчика, отличный от отдельно предоставленной квантованной редакции или утверждения о способе обслуживания модели конкретным маршрутом. Открытые веса и большое число параметров не превращают показатель активных параметров в полный объём хранения или требования к оборудованию.

#### Подготовка существенной задачи программирования

Передайте нужные материалы репозитория, существующее поведение, запрошенное изменение и ограничения совместимости. Укажите файлы или интерфейс, которые результат должен затронуть, проверки успеха и любую переданную ошибку или вход, выявляющие проблему. Полезным результатом может быть целевое изменение кода с объяснением и свидетельствами фактически выполненных проверок, а не описание действий, которые никогда не выполнялись.

Для визуальной задачи разработки включите снимок экрана или ясное изображение желаемого результата с нужным кодом и конкретным расхождением. Разработчик описывает процессы фронтенда, игр и CAD с визуальной обратной связью. Запрашивайте изменение, связывающее код с наблюдаемым результатом, и сохраняйте эталон, чтобы готовый материал можно было по нему проверить.

#### Подготовка изображений, видео и работы со знаниями

Быстрый старт разработчика использует типизированные объекты содержимого для визуальных сообщений; content — массив, а не сериализованное представление массива. Процесс изображений использует закодированные данные изображения или поддерживаемую ссылку на файл, а не публичный адрес изображения. Пример видео загружает видеофайл и передаёт полученную ссылку с вопросом о содержимом. Давайте читаемый источник и указывайте важное наблюдение, интервал или связь. Визуальный процесс разработчика принимает изображения JPEG, PNG, GIF, WebP, BMP, HEIC и HEIF и видео MP4, MPEG, MOV, AVI, FLV, MPG, WebM, WMV и 3GPP. Анимированные GIF или WebP могут декодироваться как видео. Исходник SVG передавайте как текст. Разработчик рекомендует изображения до 4096 × 2160 и видео до 1920 × 1080; это рекомендации разрешения, а не пороги отклонения. Удерживайте тело запроса в документированном размере 100M и загружайте крупные или повторно используемые медиа как файлы.

Для исследования с большим объёмом документов подпишите источники и задайте вопросы итогового отчёта. Для объяснения видео укажите события или последовательность для анализа, а не просите неограниченные комментарии. K3 использует визуальное содержимое как свидетельство для рассуждения и возвращает текст или запросы инструментов. Приложение может передать эти запросы медиаинструментам для создания отдельных изображений или видео.

#### Размышление всегда включено

Интерфейс K3 разработчика всегда включает размышление. Параметр верхнего уровня reasoning\_effort принимает low, high и max, с max по умолчанию. Эти варианты специфичны для модели; нельзя предполагать режим без размышления или значение уровня из другого семейства. Руководство разработчика по миграции отличает K3 от K2.x использованием reasoning\_effort вместо переноса старой конфигурации thinking.

Разработчик документирует отдельные reasoning\_content и content итогового ответа в потоковых результатах. Для многошагового диалога или процесса инструментов он требует возвращать полное полученное сообщение ассистента без изменений, включая reasoning\_content и tool\_calls. Сохранение только видимого итогового ответа теряет информацию, которую процесс сохранённого размышления модели ожидает на следующем шаге.

#### Структурированные итоговые ответы и частичное продолжение

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

Режим partial может продолжить переданный текстовый префикс. Пример разработчика ставит частичное сообщение ассистента в конец истории и объединяет префикс с возвращённым продолжением для показа. Используйте это, когда нужный материал имеет значимое фиксированное начало, сохраняя отличие префикса от сгенерированного остатка.

#### Инструменты и непрерывность их результатов

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

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

#### Управление выводом и повторный контекст

Разработчик документирует лимит завершения по умолчанию 131 072 токена с настройкой до 1 048 576 в пределах общего контекста модели. Текущий API K3 фиксирует temperature на 1.0, top\_p на 0.95, один результат и нулевые штрафы presence и frequency, предписывая вызывающим сторонам опускать эти настройки сэмплирования. Это настройки точного варианта разработчика, а не переносимый список регулируемых параметров.

Кэширование контекста автоматически работает для подходящих повторных префиксов, с документированными вариантами TTL 5 минут и 1 час и 5 минутами по умолчанию. Частичные блоки кэша остаются промахами. Сохраняйте повторно используемый контекст стабильным и проверяйте фактическое использование, а не утверждайте попадание в кэш по одному повтору текста. Для итогового материала сохраняйте переданные источники, фактические свидетельства инструментов и обязательную структуру вывода и проверяйте соответствие длинного ответа или инженерного результата заданным критериям завершения.

**Ailoot Ultra · Пакетная обработка** `POST /v1/batches` `moonshotai/kimi-k3:batch`

[`moonshotai/kimi-k3:batch`](https://ailoot.ai/models/ru/#m=moonshotai%2Fkimi-k3%3Abatch&route=Ultra&caller=moonshotai%2Fkimi-k3%3Abatch&fmt=batches)

MoonshotAI /`moonshotai/kimi-k3:batch`

### Начало

Kimi K3 — изначально мультимодальная модель рассуждения Moonshot AI для длинных задач программирования и работы со знаниями. Она читает текст, изображения и видео, создаёт текст и поддерживает процессы с инструментами, контекстом 1 048 576 токенов и сохранённой историей размышления между шагами.

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

Текст

Результаты

Текст

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

**Ailoot Ultra · Пакетная обработка** `POST /v1/batches`

Входные данные

`text`

Результат

`text`

Выходной формат

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

| Поле | Тип | Требование | Значения и ограничения | По умолчанию |
| --- | --- | --- | --- | --- |
| Поле`endpoint` | Тип`string` | ТребованиеОбязательно | Значения и ограничения /v1/chat/completions | По умолчанию— |
| Поле`model` | Тип`string` | ТребованиеОбязательно | Значения и ограничения moonshotai/kimi-k3:batch | По умолчанию— |
| Поле`requests` | Тип`batch_item[]` | ТребованиеОбязательно | Значения и ограничения Минимум элементов: 1 | По умолчанию— |
| Поле`requests[].custom_id` | Тип`string` | ТребованиеОбязательно | Значения и ограничения | По умолчанию— |
| Поле`requests[].body.messages` | Тип`message[]` | ТребованиеОбязательно | Значения и ограничения | По умолчанию— |
| Поле`completion_window` | Тип`string` | ТребованиеНеобязательно | Значения и ограничения 24h | По умолчанию— |
| Поле`provider` | Тип`object\|null` | ТребованиеНеобязательно | Значения и ограничения | По умолчанию— |
| Поле`requests[].body.model` | Тип`string` | ТребованиеНеобязательно | Значения и ограничения moonshotai/kimi-k3:batch, moonshotai/kimi-k3 | По умолчанию— |
| Поле`provider.only` | Тип`string[]` | ТребованиеНеобязательно | Значения и ограничения deepinfra/bf16 | По умолчанию— |
| Поле`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.00456** / 1K токенов Выход · Выходные токены **$0.0228** / 1K токенов Вход · Чтение кэша **$0.000456** / 1K токенов Вход · Запись в кэш **—** / 1K токенов Вход · Запись в кэш, 1 час **—** / 1K токенов |
| КонфигурацияУровень 1 по длине запроса | Шкала ставок— | Токенов контекста больше0 | Токенов контекста не более, включительноБез верхней границы | Плата Вход · Входные токены **$0.00456** / 1K токенов Выход · Выходные токены **$0.0228** / 1K токенов Вход · Чтение кэша **$0.000456** / 1K токенов Вход · Запись в кэш **—** / 1K токенов Вход · Запись в кэш, 1 час **—** / 1K токенов |

Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. [Как работают резервирование и расчёт →](https://ailoot.ai/docs/ru/billing/reserve/)

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

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

curl · сохранённый образец запросаPython HTTP · реальный JSONL клиентаPython · сохраните каждый готовый результат

```bash
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":"moonshotai/kimi-k3: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
```

```python
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 ['moonshotai/kimi-k3:batch', 'moonshotai/kimi-k3']: raise ValueError("body.model must be an exact documented caller or wire ID")
    return {"endpoint":"/v1/chat/completions", "model":"moonshotai/kimi-k3: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"))
```

```python
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 · статус исходной операции

```bash
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** [`moonshotai/kimi-k3:batch`](https://ailoot.ai/models/ru/#m=moonshotai%2Fkimi-k3%3Abatch&route=Ultra&caller=moonshotai%2Fkimi-k3%3Abatch&fmt=batches)

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

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

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

[`moonshotai/kimi-k3:batch`](https://ailoot.ai/models/ru/#m=moonshotai%2Fkimi-k3%3Abatch&route=Ultra&caller=moonshotai%2Fkimi-k3%3Abatch&fmt=batches)

FAQ · MoonshotAI: Kimi K3 (batch)

Какие входные данные и результаты доступны?

`POST /v1/batches` · `moonshotai/kimi-k3:batch`: `text` → `text`

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

`POST /v1/batches` · `moonshotai/kimi-k3:batch`: `endpoint`, `model`, `requests`, `completion_window`, `provider`

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

`POST /v1/batches` · `moonshotai/kimi-k3:batch`: `requests.min_items`: `1`

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

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

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

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

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

Подписка

Выберите тариф со скидкой для своих регулярных запросов.

Промокод до 50%

Введите код при покупке. Цена пересчитается с учётом действующей акции.

Расходы в истории

Модель, токены и сумма сохраняются для каждого запроса.

[Выбрать подписку](https://ailoot.ai/docs/ru/billing/subscriptions/) · [Посмотреть цены моделей](https://ailoot.ai/models/ru/)

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

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

Коммерческое приложение

Встраивайте генерацию текста, картинок, видео и звука в платные функции своего сервиса.

Лицензия для реселлера

Пришлите описание проекта и схему доступа. Запросите письменные условия использования и перепродажи.

Документы на сайте

Оферта, лицензионный договор и политика обработки данных доступны до подключения.

[Запросить реселлерскую лицензию](mailto:support@ailoot.ai) · [Оферта и лицензионный договор](https://ailoot.ai/legal/offer?lang=ru)

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





Ailoot опирается на накопленный опыт работы, большую клиентскую базу, стабильный сервис и постоянный контроль KPI.





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





Этот опыт Ailoot использует для API-доступа к нейросетям в продуктах клиентов, агентах, приложениях и автоматизациях.
