Agents LLM RAG NLP SysDes

LLM-классификация без дообучения

  • Как построить классификацию на 80+ классов через LLM без дообучения?
  • Что выдавать на выходе LLM-классификатора, чтобы ответ однозначно мапился на класс (JSON, structured output, индексы классов вместо названий)?
  • Как подбирать few-shot примеры, когда классов много? Как добиться равномерного покрытия классов примерами?
  • Почему нельзя просто увеличить число few-shot примеров до 50–100? (ограничение контекстного окна, деградация на середине контекста)
  • Когда LLM-классификация выигрывает у дообученного BERT? Как размер размеченного датасета влияет на этот выбор?
  • Как использовать разметку от LLM для последующего обучения энкодерной модели?
  • Что делать с дисбалансом классов, когда часть классов представлена менее чем 100 примерами?
  • Как заказчик задаёт порог качества (например, взвешенный F1 ≥ 0.85) и почему метрика именно взвешенная?
  • Имеет ли смысл тратить несколько инференсов LLM на один пример ради качества? От чего зависит ответ?

Инференс, батчинг и квантизация

  • Как повысить эффективность батчевой обработки большого потока текстов через LLM при фиксированном размере батча?
  • Почему сортировка текстов по длине перед формированием батча экономит вычисления?
  • Как динамически подбирать размер батча, чтобы не переполнять видеопамять?
  • Как квантизация до INT4 влияет на качество и на потребление видеопамяти?
  • Как оценить, сколько карт и памяти нужно под инференс модели на 70B?
  • Чем офлайн-разметка через очередь отличается от real-time инференса по требованиям к системе?

LoRA и адаптеры

  • Зачем обучать LoRA-адаптер вместо дообучения внутренних слоёв модели?
  • Какие плюсы даёт LoRA-адаптер для LLM-классификатора (качество, фиксированный формат ответа, сокращение инструкции в промпте)?
  • Какой основной минус адаптера в продакшене? (нестандартный инференс, отдельная модель под каждую задачу, занятая карта)

RAG и поиск

  • Как построить гибридный поиск с фильтрацией по метаданным?
  • Как измерять качество поиска в RAG и как построить синтетический golden set для этой оценки?
  • Где применять Redis, а где Elasticsearch? В чём разница между ними?
  • За счёт каких структур данных работает полнотекстовый поиск в Elasticsearch?
  • Когда полнотекстовый поиск выигрывает у семантического? (артикулы, коды оборудования, буквенно-цифровые наименования)

Агенты на LangGraph

  • Что такое LangGraph? Как в нём устроены ноды, рёбра и состояние агента?
  • Какие плюсы и минусы у графового фреймворка относительно других?
  • Можно ли построить агента без фреймворка и что это даёт?
  • Как агент проверяет корректность выполнения каждого шага?
  • Как выдавать ответ агента с цитатами и ссылками на источники?
  • Что выводить на дашборд мониторинга агента (число итераций, стоимость, метрики качества)?
  • Как использовать LLM-as-a-judge для регулярной валидации пайплайна?

Кейс: real-time подсказки уточняющих вопросов

  • Дан пайплайн обработки диалогов (транскрибация текста). На выходе пайплайна — структурированные факты (знания) о клиенте. Задача: увеличить покрытие диалогов новыми фактами. Для этого необходимо разработать систему рекомендаций, работающую реалтайм: система анализирует текущую реплику клиента и предлагает клиентскому менеджеру один уточняющий вопрос, который максимизирует вероятность получения нового, ранее неизвестного факта. Критерий пилота: сравнить долю диалогов, где появился новый факт (в тестовой группе с подсказками), против контрольной группы (менеджер работает без подсказок). Пилот должен учитывать влияние человеческого фактора.
  • Почему baseline «отправить текущую реплику в LLM и попросить уточняющий вопрос» не проходит по требованиям реального времени?
  • Какие данные нужны для решения задачи и в каком виде нужны диалоги (разделение реплик менеджера и клиента, тайминги)?
  • Что здесь является таргетом, а что — метрикой? Почему вероятность получения нового факта — это метрика, а не таргет?
  • Как разметить места в диалоге, где уточняющий вопрос уместен?
  • Почему случайная выдача подсказок — плохой способ собрать обучающие данные?
  • Как из одного диалога получить несколько обучающих примеров?
  • Как выбрать между генеративной LLM и дообученным энкодером для выбора вопроса? Какие плюсы и минусы у каждого варианта?
  • Как построить воронку мониторинга: подсказка выдана → менеджер озвучил → клиент ответил → новый факт получен?
  • Как измерять переходы между этапами воронки, если озвучивание подсказки менеджером нигде не логируется?
  • Как учесть человеческий фактор (менеджер игнорирует подсказку) при дизайне пилота?
  • Какие части системы должны работать в реальном времени, а какие можно считать офлайн после диалога?