OTel-телиметрия для LLM-инференса: трассировка токенов, GPU и промптов без просадки QPS — 27 июля 2026 г. в 17:05:36.974
OTel-телиметрия для LLM-инференса: трассировка токенов, GPU и промптов без просадки QPS Стандартные веб-метрики слепы к специфике генеративных нагрузок. Latency 95p может быть в норме, но Time-To-First-Token (TTFT) уже зашкаливает из-за фрагментации VRAM или конкурентного доступа к attention kernel. Логирование полных промптов съедает дисковую подсистему, а отсутствие контекста между HTTP-запросом и фактическим вызовом vLLM превращает отладку в угадывание. Решение — внедрение AI-native telemetry поверх OpenTelemetry. Это не про «добавить logger», а про построение детерминированного конвейера: trace → metrics → structured logs с жёсткой привязкой к жизненному циклу inference-воркера. Архитектура строится вокруг reverse-proxy или FastAPI-шлюза, который оборачивает вызовы модели в OTel-spans. Каждый span фиксирует prompt_tokens, completion_tokens, model_id и sampling parameters. Важно разделить тепловые данные (метрики) от холодных (логи). Метрики уходят в Prometheus с разрядностью 10 мс, логи — в Loki/ClickHouse через OTel Collector с aggressive sampling. Для контроля GPU-нагрузки используется NVML-integration внутри Collector, который маппит PID процесса инференса к метрикам памяти и загрузки CUDA-ядер. Это позволяет увидеть корреляцию между spikes в TTFT и фрагментацией VRAM на уровне отдельных запросов. Для SSE-стримов критично корректно замыкать span не по завершению HTTP-соединения, а по факту получения data: [DONE]. Используйте custom span processor с event listener на генераторе токенов. Маршрутизация логов через Loki stage pipeline позволяет динамически менять retention policy: hot данные (ошибки, drift-alerts) хранятся 30 дней в memory-индексе, холодные — архивируются в S3 после 7 дней. Отдельный слой — семантический drift-мониторинг. Вместо тяжёлых LLM-сравнений используется periodic embedding check: каждые N минут берётся sample из ответов, векторизуется через lightweight sentence-transformer и считается cosine similarity с эталонным corpus. Падение корреляции ниже порога триггерит алерт в Grafana, даже если latency и token-count номинальны. Такой стек даёт full visibility без overhead >3% на QPS при правильной настройке context propagation и batch-экспорта. #AI #LLM #DevOps #Infra

