tgoop.com/neuraldeep/1485
Last Update:
Когда open-source логирование подставляет, а невнимательность с моделями бьет по метрикам 📊
Все вы помните как я переехал на LiteLLM
Вчера у нас был тот самый день, когда все идет не так, как планировалось
OpenAI API частично лежало, задержки до 16 секунд, пользователи в поддержку валом — классика жанра для любого сервиса с высоким MAU
Проблема №1: Слепая зона в мониторинге
Когда пользователи начали жаловаться на тормоза, мы полезли проверять наш LiteLLM прокси. И тут выяснилось, что без лицензии у нас доступны только базовые метрики в /metrics
Мой самописный дашборд показывал, что с прокси все ОК — никаких аномалий
Но задержки-то были! В логах они светились, а в интерфейсе нет
Результат: 2 часа потрачено на копание в прокси, вместо того чтобы сразу проверить статус провайдеров
Ха-ха классический случай "лечим симптомы, а не причину"
Проблема №2: Миграция фильтров без должного тестирования
Наша эволюция фильтров NSFW для FLUX генерации:
- Начали с Llama 3.1 + кастомный промпт для нашего FLUX (низкий RPS легко справлялся локальный кластер)
- Переехали на Qwen2.5 (промпт остался тот же)
- Из-за нагрузки мигрировали на gpt-4o-mini
И вот тут началось веселье!
Промпт, который работал с локальными моделями, на gpt-4o-mini показал себя ужасно да как так то? =)
- 37% False Positive срабатываний
- Пользователи, которые писали "девушка" в запросе, не получали генерацию
После анализа данных из единого прокси (спасибо ему за централизованные логи!) команда R&D быстро поняла масштаб проблемы и сделали первое
1) Выгрузил все срабатывания от момента замены модели
2) Глазами просмотрели все FALSE
3) Поняли что нужно менять
Что сделали:
- Переработали промпт под gpt-4o-mini
- Ввели уровни категоризации вместо бинарной фильтрации
- Добавили структурированный вывод (SO)
Результаты после фикса(все просмотрели глазами)
- Снижение общей фильтрации до 17%
- FP уменьшились до 24%
- Пользователи снова получают нормальные генерации
Проблема №3: Мистический расход токенов на $350
Тут была самая загадочная история! Один из API ключей потребил весь свой бюджет на токены за какие-то 5 запросов. Трекнулось аж целых 350 долларов сразу алерты полетели 🚨
Что я сделал? Натравил на логи агента в Cursor, дал ему доступ через SSH к серверу где лежит проект и указал как писать запросы в БД и где лежат логи и сказал: "Найди что тут не так!"
И знаете что? LLM оказался круче любого DevOps инженера! За несколько минут он нашел, что это web search функция, которая за 1000 запросов стоит $35, а не обычная генерация
Дальше мы с LLM стали искать, где же система неправильно трекает этот параметр. 15 взаимодействий с find и grep — и вуаля! Нашли проблемный участок кода.
Баг найден будет отправлен в репозиторий LiteLLM
Честно, почти везде LLM помогли найти проблему быстрее, чем я бы сам
- Анализ латенси — LLM разобрал логи и указал на узкие места
- Поиск багов — структурированный поиск по кодовой базе
- Анализ трафика — выявление аномальных паттернов в запросах
Мой новый подход
1. Логи → LLM для первичного анализа
2. LLM находит зацепки → я иду копать глубже
3. LLM помогает с grep/awk/sed магией
4. Профит!
По мониторингу
- Open-source решения могут подставить в критический момент
- Нужен собственный экспортер метрик для Grafana
- Логи != метрики в дашборде (очевидно, но забываем)
По фильтрации
- Каждая модель требует отдельной настройки промптов
- A/B тестирование фильтров — не роскошь, а необходимость
- Миграция моделей без тестов = выстрел себе в ногу
По дебагу
- LLM + логи = мощный дуэт для поиска проблем
- Структурированный анализ через AI экономит часы времени
- Всегда держите LLM "под рукой" при инцидентах:
Да, скажете "это же база!" — но опыт есть опыт. Иногда нужно наступить на грабли, чтобы понять, где они лежат 😅
И главное LLM действительно может быть вашим DevOps коллегой. Не заменит, но сильно поможет! Главное не дать выполнить критичные команды (читай каждую команду что генерит LLM)
P.S. Единое прокси снова доказало свою ценность — без централизованного логирования мы бы копались в проблеме намного дольше!
BY Neural Deep
Share with your friend now:
tgoop.com/neuraldeep/1485