В этой подборке вопросы сгруппированы по формату «System Design», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: backend, api, database.
Сначала определите источники, целевой объект, момент прогнозирования и требования к свежести. Затем постройте воспроизводимую цепочку ingestion, проверки, очистки, признаков и выдачи данных модели.
Уточните, какую проблему должен решить FAQ-кеш и есть ли данные о повторяющихся запросах. Добавлять его стоит как проверяемое улучшение, а не автоматически ради снижения числа вызовов.
Версии документа нужно связывать общим идентификатором и хранить их статус и период действия. При отмене приказа поисковая выдача и кеш должны перестать представлять его как действующий.
Сначала измерьте время до первого токена, скорость генерации и задержки шагов агента. В OpenRouter можно выбирать маршрутизацию по latency или throughput, но это не гарантирует фиксированную скорость.
Начните со случайного A/B-показа постеров и измеряйте не только клики, но и квалифицированные просмотры. Лучший постер должен увеличивать просмотр контента, а не привлекать обманчивым изображением.
Векторный поиск не гарантирует точные фильтры, суммы, JOIN и актуальное транзакционное состояние. Для числовых ответов по SQL-базе основой должны быть проверяемые запросы к данным.
Запускайте новую версию постепенно: canary или ограниченная аудитория, метрики ошибок и бизнес-результата, быстрый rollback. Успешный старт процесса не доказывает корректную работу.
Суммаризация относится к управлению контекстом, а не обязательно к хранилищу сессий. Redis или SQL могут хранить историю, а отдельный компонент — сокращать её и выбирать нужные воспоминания.
Храните полные данные в отдельном поле state или внешнем хранилище, а в messages передавайте только разрешённое краткое представление. Tool получает служебные данные через runtime, не через аргументы LLM.
Зафиксируйте версионированный evaluation-набор, основные метрики и guardrails, затем сравнивайте кандидатов с текущей моделью. Решение о замене должно учитывать качество, стоимость и задержку.
Разделите ассистента на получение схемы, генерацию SQL, проверку и ограниченное исполнение. Для ClickHouse используйте отдельную учётную запись только с нужными правами чтения.
Разделите наблюдение на технические, модельные и продуктовые показатели. Доступность и latency не заменяют оценку правильности результата, а высокая offline-метрика не гарантирует пользу в production.