LiveCode Algorithms Python Agents RAG
Логическая задача
- Есть 5 фермеров, ранжированных по старшинству от 5 (старший) до 1 (младший), и 100 одинаковых сертификатов. Фермеры рациональные, жадные, строгие (при прочих равных голосуют против). Старший предлагает распределение, все голосуют. Если ≥ половины «за» — план принимается, иначе старший исключается, процесс повторяется со следующим. Какой план предложит пятый фермер, чтобы его не исключили и он получил максимум сертификатов?
Python-задача
- Реализовать
LRUCacheс capacity. Методы:get(key)возвращает значение или −1, если ключа нет;put(key, value)добавляет / обновляет, при переполнении вытесняет наименее недавно используемый ключ. Реализовать так, чтобы операции были близки к O(1).
RAG и агенты
- Какая разница между LangChain, LlamaIndex и LangGraph?
- Какую эмбеддинг-модель выбрать: локальную или API (
text-embedding-ada-002)? - Зачем использовать sparse-векторы (BM25) рядом с dense?
- Что такое state-graph (LangGraph)? Когда он лучше плоского pipeline?
- Когда стоит использовать LLM-Judge для оценки RAG?
- Зачем нужны реранкеры? Как назначать веса при реранжировании?
Безопасность инструментов
- Безопасен ли вызов tool? Чем отличается обычный tool от MCP с точки зрения безопасности?
- Как обезопасить вызов MCP / tool в агенте (контейнеризация, sandbox)?
- Как защитить чувствительные данные (PII) от модели через маскирование?
- Как расшифровать обратно после маскирования? Где хранить шифры?
Архитектура агентов
- Что лучше — много tool-call или монолитный prompt? От чего зависит?
- Гарантированно ли модель исполнит prompt? Как обезопасить?
- Как дать генеративной модели второй шанс исправиться (показать ошибку, JSON-схема, search-apply через diff)?
- Зачем нужен стриминг ответа? Чем стриминг лучше блок-вызова?
- Что такое Deep Search / Thinking режим?