- В терминале задайте переменную окружения MOONSHOT_API_KEY своим ключом.
- Подготовьте 10 контрольных вопросов: пять фактических, три с явным требованием формата JSON и два, где правильный ответ — «нет данных».
- Перед продакшеном добавьте контроль бюджета, rate limiting для пользователей, очередь повторов и фильтр персональных данных.
- Успешный HTTP-статус показывает, что сервер обработал запрос, но не гарантирует полезный результат.
- Для будущего сайта разумнее сделать собственный backend: браузер вызывает ваш /api/ask, сервер проверяет пользователя и длину запроса, отправляет запрос Kimi с закрытым ключом, затем во…
Kimi API нужен, когда модель должна отвечать внутри сайта, бота или приложения. Для обычного чата ключ разработчика не требуется. Важно: баланс Kimi API, личная подписка и Kimi Code — разные продукты; не рассчитывайте на автоматическое объединение баланса платформенного API и личных кредитов.
Как получить API-ключ
- Зарегистрируйтесь в консоли Kimi API.
- Откройте раздел управления API keys и создайте отдельный ключ для учебного проекта.
- Скопируйте секрет один раз и сохраните в переменной окружения — не помещайте его в HTML, Git, скриншоты или клиентское приложение.
- Проверьте доступность модели и баланс разработчика в консоли.
Первый запрос через curl
В терминале задайте переменную окружения MOONSHOT_API_KEY своим ключом. Для Unix-подобных систем:
export MOONSHOT_API_KEY='ваш_секретный_ключ'
curl -sS https://api.moonshot.ai/v1/chat/completions \
-H "Authorization: Bearer $MOONSHOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kimi-k3",
"messages": [{"role":"user","content":"Ответь одним предложением: что такое API?"}]
}'
Этот endpoint и идентификатор модели приведены в официальном API Reference. Для рабочего приложения добавьте таймаут, обработку HTTP-статуса и логирование без секретов. Ответ ожидается в JSON: текст ищите в choices[0].message.content, а расход — в полях usage, если они возвращены.
Типичные ошибки
| Код | Что делать |
|---|---|
| 400 | Проверить JSON, модель и формат messages |
| 401 | Проверить Bearer, ключ и его платформу |
| 403 | Права модели и доступ аккаунта |
| 429 | Баланс, RPM/TPM, повтор с задержкой |
| 5xx | Не считать ответ успешным; ограничить повторы |
Мини-протокол проверки качества
Подготовьте 10 контрольных вопросов: пять фактических, три с явным требованием формата JSON и два, где правильный ответ — «нет данных». Храните запрос, модель, задержку, токены и оценку правильности. Качество и стоимость нужно измерять одновременно.
Что дальше
Перед продакшеном добавьте контроль бюджета, rate limiting для пользователей, очередь повторов и фильтр персональных данных. Стоимость можно посчитать по тарифам API и кэшированию; для кода в терминале без собственной интеграции удобнее Kimi Code.
Как читать JSON-ответ
Успешный HTTP-статус показывает, что сервер обработал запрос, но не гарантирует полезный результат. В ответе проверьте choices, наличие текста, модель и статистику usage. Если задано ограничение длины, ответ может оказаться обрезанным; проверяйте признак завершения и не склеивайте фрагменты вслепую.
Первый серверный обработчик
Для будущего сайта разумнее сделать собственный backend: браузер вызывает ваш /api/ask, сервер проверяет пользователя и длину запроса, отправляет запрос Kimi с закрытым ключом, затем возвращает только необходимый ответ. Ограничьте частоту по пользователю и выставьте отдельный месячный бюджет. Никогда не вызывайте платный API напрямую из публичного JavaScript с секретным ключом.
Минимальный чек-лист продакшена
- Ключ в секретном хранилище, а не в коде приложения.
- Проверяются статус HTTP, тип ответа и наличие текста.
- Повторы при 429/5xx ограничены и используют задержку.
- Логи не содержат персональных данных и токенов доступа.
- Есть мониторинг затрат и возможность отключить интеграцию.
Как диагностировать проблему ключа
Если запрос возвращает 401, не создавайте новый ключ без необходимости. Проверьте переменную окружения и наличие пробелов, потом формат заголовка Bearer и правильность платформы. Если возвращается 404, отдельно проверьте модель и endpoint. При ошибке 429 проверьте баланс и ограничения RPM/TPM, если они показываются в консоли.
Частые вопросы
Нужна ли подписка Kimi, если есть API? Не обязательно; у API отдельная схема оплаты.
Могу ли использовать ответ как юридическую консультацию? Нет, такой текст требует экспертной проверки.
Как получить стабильный JSON? Используйте поддерживаемые параметры формата ответа и валидируйте JSON схемой на стороне сервера; набор параметров проверяйте в актуальной API-документации.
Проверка успешности API-запроса и затрат
После запроса зафиксируйте HTTP-статус, модель, дату, поля choices, usage и идентификатор запроса, если он возвращён. HTTP 200 не гарантирует правильность ответа: отдельно проверяйте сам текст, формат и завершённость генерации. Не сохраняйте API-ключи и персональные данные в логах.
Нюанс с Kimi Code: официальный CLI допускает и OAuth, и ключ платформы через /login, но это не означает единого кошелька для личной подписки и платформенного API. При 401 проверяйте права ключа и заголовок Bearer; при 429 — лимит запросов, токенов и состояние счёта. При ошибке 404 отдельно проверьте идентификатор модели.
Сверить ставки можно в подробной таблице Kimi API; сравнить программного помощника — в гайде Kimi Code, а остальные инструменты — в обзоре.
