Backend-контур для LLM-продукта
Какие backend-компоненты нужны для LLM-продукта с tools, cache и долгими задачами?
Ответить самому
Сначала сформулируйте ответ как на собеседовании, затем откройте разбор и оцените себя.
Короткий ответ
Нужны API/orchestrator, job queue, tool execution layer, cache, artifact storage, streaming updates, auth и observability.
Полный разбор
LLM-задачи часто долгие и stateful, поэтому backend должен быть не только HTTP wrapper над model API. Обычно есть API gateway, orchestrator, очередь задач, workers для tool execution, storage для intermediate artifacts и канал обновлений статуса через streaming/websocket/polling.
Cache нужен на нескольких уровнях: retrieval results, expensive tool outputs, rendered artifacts, иногда model responses для deterministic prompts. Но cache должен учитывать user permissions, version prompts/models и invalidation.
Для production важны timeouts, idempotency, retries, cancellation, rate limits, tracing, cost accounting и audit log. Если агент вызывает внешние системы, tool layer должен валидировать аргументы и права доступа.
Типичные ошибки
- Делать все синхронным request-response.
- Кешировать ответы без учета прав пользователя.
- Не предусмотреть cancel/retry/idempotency.
Как отвечать на собеседовании
- Скажи queue + workers for long tasks.
- Упомяни streaming status and artifact storage.