7 ошибок при работе с LLM API
Эти ошибки встречаются почти в каждом проекте, который мы видим. Каждая — либо лишние деньги, либо падения в проде.
1. Таскать всю историю диалога
Каждый запрос отправляет весь предыдущий разговор заново. К двадцатому сообщению вы платите за 50 000 токенов вместо 500. Решение — обрезать историю или заменять её кратким резюме.
2. Не указывать max_tokens
Без явного лимита модель может выдать максимум, на который способна — и вы заплатите за всё. Плюс некоторые шлюзы требуют это поле и вернут ошибку без него.
3. Использовать флагман для всего
Классификация отзыва на Opus — это как возить продукты на фуре. Разбор, как выбирать модель.
4. Не обрабатывать обрывы
Длинные запросы к LLM рвутся: сеть, таймауты, перегрузка провайдера. Без ретраев ваш агент упадёт на середине работы. Минимум — повтор при обрыве соединения, если ни один байт ответа ещё не ушёл клиенту.
5. Игнорировать стриминг
Пользователь готов ждать 40 секунд, если видит, как текст появляется. Тот же ответ, отданный молча одним куском, воспринимается как зависание.
6. Не логировать расход по моделям
Без разбивки по моделям и юзерам вы не узнаете, что 80% счёта делает один цикл, который кто-то забыл выключить.
7. Хардкодить провайдера
Если код завязан на конкретный SDK и endpoint, миграция превращается в рефакторинг. Работайте через OpenAI-совместимый интерфейс — тогда смена провайдера это одна строка.
client = OpenAI(
api_key="claudepoint-live-...",
base_url="https://api.claudepoint.io/v1",
)
Попробуйте ClaudePoint
Claude, GPT, Gemini и Qwen через один ключ. Без VPN, оплата в рублях.