Блог Zukko

Гайды по Claude Code, Cursor, Codex и API Claude и GPT: настройка, экономия токенов, разбор ошибок.

Nano Banana 2 против GPT Image: что выбрать для генерации изображений

4 мин · · изображения

У обеих линеек один эндпоинт и разная механика. Разбираем, чем reference-to-image у Nano Banana отличается от edit у GPT Image и когда какая модель окупается.

Extended thinking: когда включать и во что это обходится

4 мин · · модели

Функция доступна везде, но включать её на каждый запрос — плохая идея. Разбираем, когда extended thinking окупается, а когда просто удлиняет ответ и счёт.

Claude Opus 5.5 против Opus 5 и 4.8: стоит ли переключаться

4 мин · · модели

Opus 5 и 4.x больше нет в каталоге, на их место пришёл Opus 5.5 с extended thinking и контекстом 1M. Разбираем, как перейти и проверить результат по фактам, а не по номеру версии.

Qwen 3.8 Max против 3.7 Max: стоит ли переходить

4 мин · · модели

Новая версия почти всегда выглядит привлекательнее в названии. Разбираем, что на самом деле означает суффикс preview и как проверить разницу на своих задачах.

GPT-5.6 Terra, Sol и Luna: чем отличаются и когда что брать

4 мин · · модели

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

Код 499: клиент оборвал соединение раньше ответа

4 мин · · ошибки

Ответ пришёл наполовину и пропал — знакомая картина при долгой генерации. Разбираем, почему это почти никогда не лимит токенов, а таймаут на стороне клиента.

Свой Telegram-бот на Claude или GPT: минимальный пример

3 мин · · разработка

Собираю минимального Telegram-бота на aiogram, который дергает Claude или GPT через шлюз. Полный код, плюс что делать с ошибками баланса и лимитов прямо в чате.

LangChain: как указать наш base_url вместо OpenAI

4 мин · · разработка

В LangChain это буквально один параметр — base_url. Показываю точный код для ChatOpenAI и ChatAnthropic, чтобы вместо OpenAI пойти в наш шлюз с моделями Claude, GPT и GLM.

n8n: автоматизация с Claude и GPT в workflow

5 мин · · автоматизация

В n8n можно завести один набор кредов и дёргать Claude, GPT и GLM из любого workflow. Показываю настройку через встроенный узел и через HTTP Request для гибких случаев.

aider: настройка через переменные окружения

4 мин · · IDE

aider настраивается без конфиг-файлов, целиком через переменные окружения. Разбираю, какие имена переменных он реально читает и куда девается base URL.

Windsurf: подключение к Claude и GPT

4 мин · · IDE

В Windsurf можно попробовать подключить кастомного провайдера и получить доступ к Claude, GPT и GLM одним ключом. Показываю поля настроек, ограничения и на чём обычно спотыкаются.

JetBrains AI Assistant: подключение в IntelliJ и PyCharm

4 мин · · IDE

JetBrains AI Assistant подключает сторонние ключи через раздел кастомных OpenAI-совместимых провайдеров — разбираем, куда именно вписывать адрес и модель.

Zed: настройка ИИ-ассистента на своём ключе

4 мин · · IDE

Zed настраивается через settings.json, и провайдер anthropic там ожидает адрес без /v1 — забытая деталь, которая превращается в постоянные 404 в панели ассистента.

Continue.dev: подключение к шлюзу

4 мин · · IDE

Continue.dev настраивается файлом config.yaml, а не формой в интерфейсе — из-за этого легко оставить старый apiBase или лишний слеш. Разбираем рабочий конфиг.

Roo Code: быстрая настройка за пять минут

4 мин · · IDE

Roo Code — форк Cline с почти идентичными настройками провайдера. Показываем самый короткий путь от установки расширения до первого рабочего запроса.

Cline: подключение к Claude и GPT через свой ключ

5 мин · · IDE

Cline умеет ходить и в Anthropic-режиме, и в OpenAI-режиме — от выбора провайдера зависит, какой base URL вписывать. Разбираем оба варианта и типичный 404 на старте.

Как получать строго структурированный JSON от модели

3 мин · · API

Просить модель «ответь в формате JSON» в системном промпте работает через раз. Разбираем способ понадёжнее — через tools с жёсткой схемой.

Почему модель отвечает медленно и что можно ускорить

4 мин · · производительность

Запрос выполняется десятки секунд вместо привычных двух-трёх. Разбираем, что из этого зависит от вас, а что — нет, и где искать реальный тормоз.

Ошибка 403 model_not_allowed_for_key

4 мин · · ошибки

Ключ рабочий, баланс есть, а модель отвечает 403. Разбираем, как список разрешённых моделей привязывается к конкретному ключу и как это поправить.

Ошибка 422 idempotency_conflict: что значит и как чинить

4 мин · · ошибки

Повторили запрос с тем же ключом идемпотентности, но с другим телом — и получили 422 вместо ожидаемого повтора ответа. Разбираем, что происходит.

Как посчитать стоимость запроса заранее через count_tokens

4 мин · · API

Перед тем как жечь баланс на длинный промпт, можно бесплатно узнать, во сколько токенов он обойдётся. Разбираем, как это сделать одним запросом.

allowed_models: как разрешить ключу только нужные модели

3 мин · · API-ключи

Ключ, который может вызвать любую модель из каталога, — лишняя свобода для интеграции, которой нужна ровно одна модель. Разбираем настройку allowed_models.

Как поставить дневной и месячный лимит на API-ключ

4 мин · · API-ключи

Один скомпрометированный или неправильно настроенный ключ не должен уметь потратить весь баланс за час. Разбираем, как это ограничить в кабинете.

Кэш ответов X-Zukko-Cache: когда запрос бесплатный

5 мин · · API

Одинаковый запрос от одного пользователя можно не оплачивать второй раз. Разбираем, как включается кэш и как проверить, сработал ли он.