Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
9.1 KiB
9.1 KiB
Глава 3 · Память пользователя и базы знаний
Позволяет агентам помнить пользователя между сессиями и обращаться к внешним знаниям. Охватывает системы пользовательской памяти, базовые пайплайны RAG, а также организацию и извлечение знаний за пределами плоского текста (структурированные индексы, графы знаний и т. д.).
← К оглавлению · 📖 Читать главу
Как читать эксперименты
В основном тексте короткие скелеты механизмов объясняют поток управления; в каталогах экспериментов находятся полные адаптеры SDK, журналы, тесты и приёмочные доказательства. Читать каждый файл построчно не требуется.
- Starter: Начните с цели, минимальной команды и условий приёмки; начните с user-memory / retrieval-pipeline;
- Builder: Проследите точку входа, основной цикл, схему состояния/сообщений, инструменты и проверяющий модуль.
- Maintainer: Затем изучите тесты, манифесты доказательств, обработку сбоев, откат и адаптеры провайдеров.
При первом чтении можно пропустить ключи, слой представления и совместимость провайдеров; вернитесь при воспроизведении чисел.
Сопутствующие проекты
| Эксп. | Проект | Тип | Описание |
|---|---|---|---|
| 3-1, 3-2 | user-memory | ✅ | Строит систему долговременной пользовательской памяти, позволяя агенту помнить предпочтения и историю взаимодействий для персонализированного обслуживания. |
| 3-1 | user-memory-evaluation | ✅ | Систематически оценивает точность, релевантность и эффективность систем пользовательской памяти, включая множество тестовых сценариев и метрик. |
| 3-2 | mem0 · memobase | ✅ | Реализует пользовательскую память на каждом из двух открытых фреймворков памяти — mem0 и Memobase — как сравнительную реализацию для эксперимента 3-2 «Сравнение стратегий памяти», удобную для горизонтального сравнения форм извлечения и качества ответов у разных решений. |
| 3-3 | log-sanitization | ✅ | Интеллектуальная санитизация логов с использованием локальной модели Ollama для обнаружения и маскирования секретов и PII с сохранением отладочной ценности. |
| 3-4 | dense-embedding | ✅ | Строит сервис поиска по векторному сходству, сравнивая алгоритмы приближённого поиска ближайших соседей ANNOY (на деревьях) и HNSW (на графах). Показывает компромиссы между стратегиями индексации по скорости, памяти и способности к обновлению. |
| 3-5 | sparse-embedding | ✅ | С нуля реализует поисковый движок на разреженных векторах на базе алгоритма BM25. Даёт богатое логирование и визуализацию для понимания внутренней работы движка, включая расчёт весов частот терминов и принципы инвертированного индекса. |
| 3-6 | retrieval-pipeline | ✅ | Строит полный пайплайн извлечения, объединяя плотный поиск, разреженный поиск и нейросетевое переранжирование. На тщательно подобранных тест-кейсах систематически показывает взаимодополняющие преимущества гибридного поиска в разных сценариях. |
| 3-7 | structured-index | ✅ | Реализует и сравнивает два структурированных индекса — RAPTOR (рекурсивное дерево абстракций) и GraphRAG (граф знаний). |
| 3-8 | agentic-rag | ✅ | Сравнивает качество традиционного не-агентного RAG и агентного RAG. Показывает, как агент по паттерну ReAct ведёт итеративное извлечение информации, значительно повышая качество ответов в сложных юридических вопросах-ответах. |
| 3-9 | agentic-rag-for-user-memory | ✅ | Применяет фреймворк агентного RAG для управления историей диалогов пользователя. Использует многораундовый итеративный поиск для извлечения памяти между сессиями, обеспечивая базовое припоминание и кросс-сессионное извлечение. |
| 3-10 | contextual-retrieval | ✅ | Реализует технику контекстного извлечения, предложенную Anthropic. За счёт генерации префиксных сводок с ключевым контекстом для фрагментов текста решает проблему потери контекста при традиционном разбиении, снижая долю неудачных извлечений на 49–67%. |
| 3-11 | contextual-retrieval-for-user-memory | ✅ | Применяет технику контекстного извлечения к построению пользовательской памяти. Сочетает Advanced JSON Cards с Contextual RAG, образуя двухслойную структуру памяти для более высокоуровневого проактивного обслуживания. |
| 3-12 | structured-knowledge-extraction | ✅ | На примере судебных прецедентов реализует трёхэтапный пайплайн: «восходящее обнаружение факторов → кластеризация прототипов дел → диалоговый агент-консультант». Без заранее заданных жёстких полей LLM самостоятельно обнаруживает факторы из множества дел и обобщает их в модульную схему (базовые факторы + факторы-расширения под конкретный состав). Затем дела кластеризуются в несколько прототипов, и для каждого вычисляется важность каждого фактора. Агент сопоставляет факты нового дела с наиболее похожим прототипом, запрашивает недостающую информацию по важности факторов и даёт обоснованный доказательствами совет (с юридической оговоркой). |
Типы проектов
| Значок | Тип | Значение |
|---|---|---|
| ✅ | Автономный | Полный код в этом репозитории, запускается после настройки API-ключа |
| 📖 | Гайд по воспроизведению | Подробный документ, зависящий от внешних репозиториев через git clone |
| 🚧 | Проектный документ | Только архитектура/план реализации, рабочий код ещё в разработке |