Перейти к содержанию

ML System Design: Обновления 2025-2026

~5 минут чтения

Предварительно: Материалы MLSD | Подготовка к интервью MLSD

За 2025 год ML System Design сместился от "как обучить модель" к "как её выкатить и не сломать". Три ключевых сдвига: vLLM + PagedAttention стал стандартом LLM-inference (24x throughput), real-time ML-пайплайны с sub-100ms SLA вытесняют batch-предсказания, и multi-armed bandits заменяют классические A/B-тесты для быстрой итерации. На интервью 2026 года вопросы по inference optimization и LLM guardrails стали обязательными.

Что изменилось в ML System Design за 2025-2026 Обновлено: 2026-02-11


Критические тренды

1. Inference Optimization (Ключевой тренд 2025-2026)

Что изменилось: - vLLM стал стандартом для LLM serving - PagedAttention — новая парадигма KV-cache - Continuous batching — вместо static batching - Speculative decoding — 2-3x speedup

Новые инструменты: - SGLang — structured output optimization - TensorRT-LLM — NVIDIA inference - llama.cpp — CPU/edge deployment

2. Real-time ML Pipelines

Тренд 2025-2026: - Streaming inference с Kafka + Flink - Sub-100ms latency requirements - Feature stores для real-time features

3. Drift Detection Evolution

Что изменилось: - Automated retraining triggers - Multi-metric monitoring (не только PSI) - Business metric correlation

4. A/B Testing для ML

Новые паттерны 2025-2026: - Multi-armed bandits вместо fixed A/B - Interleaving experiments (faster results) - Counterfactual evaluation


Model Serving Updates

Latency Targets 2026

Use Case P99 Target
Interactive apps < 50ms
Real-time bidding < 10ms
Search ranking < 100ms
Batch predictions No strict

Inference Runtimes Comparison

Runtime Latency Throughput Best For
vLLM Low Very High LLM serving
TensorRT Very Low High GPU inference
ONNX Runtime Low Medium Cross-platform
TorchServe Medium Medium PyTorch native

Drift Detection Updates

PSI Thresholds (Updated 2026)

Стандартные пороги (общепринятые):
PSI < 0.1:    No change
PSI 0.1-0.25: Moderate change
PSI > 0.25:   Significant change (ACTION REQUIRED)

Строгие пороги (company-specific, e.g. финтех):
PSI < 0.05:   No change
PSI 0.05-0.15: Moderate
PSI > 0.15:   Significant

Note: Стандартные пороги PSI (< 0.1 / 0.1-0.25 / > 0.25) остаются общепринятыми в литературе и на собесах. Строгие пороги (0.05/0.15) — company-specific практика, особенно в финтехе (fraud detection, credit scoring).

New Drift Metrics

Wasserstein Distance: Более robust чем KS Jensen-Shannon Divergence: Symmetric, bounded [0, 1]


RecSys Updates

Two-Tower Evolution 2025-2026

Новые паттерны: - Multi-task two-tower (shared embeddings) - Sequential two-tower (session-based) - Graph-enhanced two-tower

Cold Start Solutions 2026

  1. LLM for Cold Start: Generate preferences from onboarding
  2. Graph Neural Networks: Knowledge graphs for items
  3. Meta-learning: Learn to learn from few examples

LLM Production Updates

OWASP Top 10 LLM (2025)

  1. Prompt Injection
  2. Insecure Output Handling
  3. Training Data Poisoning
  4. Model DoS
  5. Supply Chain
  6. Sensitive Information Disclosure
  7. Insecure Plugin Design
  8. Excessive Agency
  9. Overreliance
  10. Model Theft

Guardrails Tools 2026

Tool Type Focus
NeMo Guardrails Open-source Programmable
Lakera Guard API Security-focused
Guardrails AI Open-source Type-safe
LLM Guard Open-source Security toolkit

Что спрашивают в 2025-2026

Тема Частота
vLLM/PagedAttention HIGH
Real-time ML pipelines HIGH
Two-Tower architecture HIGH
Drift detection MEDIUM
LLM guardrails HIGH
A/B testing MEDIUM

Заблуждение: PSI > 0.25 всегда означает необходимость переобучения

PSI -- это мера СДВИГА распределения, а не падения качества. Drift в X не обязательно означает drift в P(Y|X). Пример: сезонность в e-commerce увеличивает PSI, но модель может работать отлично. Правильный подход: (1) зафиксировать drift, (2) проверить prediction quality на свежих данных, (3) переобучить только если quality упала. Автоматический retrain по PSI без проверки quality -- частая ошибка в production.

Заблуждение: vLLM решает все проблемы LLM inference

vLLM оптимизирует KV-cache memory через PagedAttention, но НЕ решает: (1) latency первого токена (TTFT) -- это вопрос model size и prefill computation, (2) speculative decoding нужен отдельный draft model, (3) structured output constraints (JSON schema) требуют дополнительной логики (SGLang). vLLM -- must-have, но это один слой в stack'е inference optimizations.


Вопросы с оценкой ответов

Что такое continuous batching и почему это лучше static batching?

❌ "Continuous batching просто объединяет больше запросов в один батч" -- не объясняет ключевое отличие

✅ "Static batching ждёт завершения ВСЕХ запросов в батче перед обработкой новых -- если один запрос генерирует 200 токенов, а остальные 10, GPU простаивает. Continuous batching вставляет новые запросы сразу как освобождается слот, утилизируя GPU на 90%+ вместо 30-50%. В vLLM это реализовано через iteration-level scheduling: каждый iteration проверяет готовые/новые запросы."

Как провести A/B тест ML-модели с network effects (соцсеть, маркетплейс)?

❌ "Просто случайно разделить пользователей на группы" -- игнорирует SUTVA violation

✅ "Network effects нарушают SUTVA (Stable Unit Treatment Value Assumption) -- поведение user A влияет на user B. Решения по возрастанию сложности: (1) Cluster-based randomization -- рандомизация по сообществам/городам, минимизируя cross-cluster interaction; (2) Ego-network randomization -- рандомизация вместе с ближайшими соседями; (3) Switchback experiments -- чередование control/treatment по времени. Для маркетплейсов: geo-based split + Difference-in-Differences анализ."

Drift detected, PSI > 0.3 на 5 из 20 фичей. Ваш action plan?

❌ "Переобучить модель на свежих данных" -- skip critical diagnostic steps

✅ "Пошагово: (1) Определить root cause -- data pipeline bug, business change, seasonality? Проверить upstream data quality. (2) Проверить correlated drift -- 5 фичей могут зависеть от одного источника. (3) Оценить impact на model quality -- если AUC не упала, drift может быть безвредным. (4) Если quality упала: retrain на окне последних N дней с мониторингом. (5) Если root cause -- pipeline bug, починить source, не маскировать retraining'ом. (6) Обновить alerting thresholds если drift оказался нормой."


Источники


Обновлено: 2026-02-11