Платформы для AI-агентовспецификации, плагины, конфигурация, наблюдаемость, мультитенантность
GPU и видеоCUDA, NVDEC/NVENC, zero-copy конвейеры, FFmpeg
ML в продеvLLM, TensorRT, ONNX, дообучение OCR, голос и липсинк
ИнфраструктураKubernetes, Docker, MikroTik, PKI на Vault, Prometheus
Основные проекты
От спецификации до работы в проде.
dagstack активная разработка · 0.x
Экосистема спецификаций для инфраструктуры AI-агентов, одинаковая для Python, TypeScript и Go.
У каждого компонента есть свой spec-репозиторий: ADR, JSON Schema и генераторы типов
(pydantic, zod, OpenRPC). Реализации на трёх языках проходят общий набор conformance-тестов.
Принцип «спецификация главнее кода»: расхождение чинится в биндинге или в спеке, а не замалчивается.
- plugin-system — манифесты, пять классов диспетчеризации (singleton, broadcast, chain, capability), отображение на MCP;
- config — иерархичный YAML, подстановка окружения, горячая перезагрузка, маскирование секретов, каноническая сериализация RFC 8785;
- logger — совместим с OpenTelemetry Log Data Model, расширение для наблюдаемости агентов по OTel GenAI;
- postgres, tenancy, tenant-registry — транспорт и миграции, единая таксономия ошибок по SQLSTATE, виртуальные ключи, лимиты (token bucket, sliding window), инвалидация через LISTEN/NOTIFY.
6спецификаций
3языка с общими тестами
PythonTypeScriptGoJSON SchemaMCPOpenTelemetryDocusaurus
cuframes в проде · v0.1
Передача декодированных видеокадров между процессами через CUDA IPC — без копирования.
Обычно каждый сервис видеоаналитики (видеорегистратор, детектор, аналитика) сам декодирует один и тот же
поток камеры. cuframes декодирует поток один раз на NVDEC, держит кадры в кольцевом буфере в VRAM, и любое
число потребителей читает их без копий. В составе: C-библиотека с C++-обёрткой, мост RTSP → IPC,
Python-биндинги через DLPack и демультиплексор cuframes:// для FFmpeg.
2 → 1декодирование на поток
0потерянных кадров за 24 ч
~2,8 МБVRAM на кольцевой буфер
CUDAC/C++FFmpegNVDECDLPackLGPL-2.1+
cuframes-composer в проде
CUDA-композитор: мозаика из нескольких камер в один H.264 RTSP-поток.
Заменил монолитный ffmpeg-конвейер. Кадры идут от cuframes до NVENC без копирования. Раскладка
меняется сама по событиям детектора (с гистерезисом), PTZ-камеры переключаются с телевизора по ONVIF,
оверлеи приходят из MQTT, управление — через ZeroMQ. Отвалившаяся камера даёт пустую ячейку, а не падение потока.
C++CUDANVENCZeroMQMQTTONVIF
Распознавание российских номеров модель в проде
Дообучение PaddleOCR под кириллицу на номерах и честная проверка на «грязных» кадрах.
Штатный OCR в Frigate путал кириллицу с похожей латиницей и цифрами (У → 9, А → 4). Дообучил PP-OCRv4
на открытом датасете с аугментациями; ONNX-модель встаёт в Frigate вместо штатной. Затем собрал стенд,
где модели OCR и VLM сравниваются на реальных ночных и дождливых кадрах под углом, — и он показал, насколько
валидационная метрика расходится с жизнью. Это и определяет следующий шаг: данные, а не архитектура.
0,9994точность на валидации
≈0,3точное совпадение на реальных кадрах
120–142 мсзадержка p95
PaddleOCRONNXFrigatePARSeqоценка моделей
Говорящий аватар прототип
Локальный фотореалистичный аватар для голосового ассистента — из одной фотографии.
Цепочка: вопрос → ответ LLM (vLLM) → речь (Chatterbox, ударения и нормализация чисел для русского) →
липсинк (Ditto) → потоковое fMP4-видео в браузер по WebSocket. Ditto пересобран под TensorRT для Blackwell.
MuseTalk отвергнут по замеру подвижности губ: 0,24 против 6,16 у Ditto.
10,1 → 2,8 сгенерация 6,6 с речи
RTF 0,42быстрее реального времени
TensorRTFastAPIvLLMTTSRTX 5090
Домашняя инфраструктура как код в эксплуатации
Лаборатория, в которой всё перечисленное выше работает каждый день.
- сеть на MikroTik с сегментацией VLAN, приватный центр сертификации на Vault;
- Kubernetes в виртуальных машинах: Home Assistant, Zigbee2MQTT, учёт электроэнергии;
- видеонаблюдение на Frigate поверх cuframes, детекция по текстовым запросам (YOLO-World) и уведомления;
- локальные LLM на vLLM: голосовой ассистент дома и помощник для кода;
- живая карта трафика сети по каналам и устройствам — RouterOS API, conntrack, топология по LLDP и MAC-таблицам, SSE;
- гибридная солнечная станция с мониторингом инвертора в Home Assistant.
246 ток/с7B-модель на одной RTX 5090
256kконтекст на 32 ГБ VRAM
KubernetesDockerMikroTikVaultPrometheusHome Assistant