Краткое содержание: Знания и память (Knowledge and Memory)
Основные тезисы
1. Введение: Знания vs. Память
Знания (Knowledge):
- Фактический или доменно-специфичный контент
- Реализуется через retrieval-augmented generation (RAG)
- Извлекается во время генерации
- Дополняет информацию в весах модели
Память (Memory):
- Собственная история агента
- Прошлые обмены с пользователями, выходы инструментов, обновления состояния
- Поддерживает непрерывность между ходами и сессиями
- Использует историю для информирования будущих решений
Связь с инженерией контекста: Память предоставляет знания, историю и факты, которые могут быть выбраны и собраны в эффективные промпты.
2. Фундаментальные подходы к памяти
Управление окнами контекста
- Окно контекста: Информация, передаваемая модели в одном вызове
- Длина контекста: Максимальное число токенов (1 токен ≈ ¾ слова)
- Современные лимиты:
- GPT-5, Claude 3.7 Sonnet: до 272,000 токенов
- Gemini 2.5: до 1 миллиона токенов
Скользящее окно контекста:
- Полное взаимодействие передается в окно контекста
- При заполнении старые части удаляются (FIFO)
- Простота реализации, низкая сложность
- Недостаток: Информация теряется независимо от важности
Рекомендации:
- Выделять наиболее релевантный контекст
- Размещать важную информацию близко к концу промпта
Традиционный полнотекстовый поиск
- Основа: Инвертированный индекс
- Процесс: Токенизация → нормализация → удаление стоп-слов → индексирование
- Ранжирование: BM25 (term frequency, inverse document frequency, document length normalization)
- Преимущества: Молниеносные поиски, зрелая технология
- Недостатки: Пропускает темы, перефразировки, концептуальные связи
3. Семантическая память и векторные хранилища
Введение в семантический поиск
- Цель: Понимание контекста и намерения, а не точное совпадение
- Основа: Встраивания (embeddings) — векторные представления слов
- Модели: Word2Vec, GloVe, BERT, современные LLM
- Преимущества: Понимание значения, синонимов, отношений
Реализация с векторными хранилищами
- Векторные базы данных: VectorDB, FAISS, Annoy
- Процесс:
- Генерация семантических встраиваний
- Хранение в векторной БД
- Поиск подобия по запросу
- Извлечение релевантных встраиваний
Преимущества:
- Быстрое индексирование и извлечение в больших масштабах
- Понимание семантического значения
- Эффективный поиск по большим объемам информации
4. Retrieval-Augmented Generation (RAG)
Процесс RAG:
-
Индексирование:
- Разбиение документов на фрагменты
- Встраивание фрагментов моделью-кодировщиком
- Индексирование в векторной БД
-
Извлечение:
- Поиск релевантной информации по запросу
- Эффективные механизмы извлечения
-
Генерация:
- Подача извлеченной информации в генеративную модель
- Синтез с изученными знаниями модели
- Производство контекстуально обогащенного ответа
Преимущества:
- Более информированные и точные ответы
- Включение доменно-специфичной информации
- Улучшение производительности в различных доменах
5. Семантическая память опыта
Проблема: Агент начинает каждую сессию с чистого листа, контекст долго работающих задач выпадает из окна.
Решение: Семантическая память опыта
- Каждый пользовательский ввод превращается в вектор
- Векторный поиск по всем предыдущим взаимодействиям
- Резервирование части окна контекста для лучших совпадений
- Остальное пространство для системного сообщения и последних взаимодействий
Результат: Агент может адаптировать ответы на основе накопленного опыта.
6. GraphRAG
Определение: Продвинутое расширение RAG, использующее структуры данных на основе графов.
Когда базовый RAG борется:
- Ответы требуют соединения информации из множественных документов
- Запросы включают суммирование семантических тем высокого уровня
- Набор данных большой, беспорядочный или повествовательный
Компоненты GraphRAG:
- Граф знаний: Хранит сущности (узлы) и отношения (ребра)
- Система извлечения: Запрашивает граф, извлекая релевантные подграфы
- Генеративная модель: Синтезирует информацию из графа
Преимущества:
- Многошаговое рассуждение
- Цепочки отношений
- Структурированное суммирование
- Обработка сложных взаимосвязей
7. Построение графов знаний
Процесс построения:
- Сбор данных: Из различных источников (БД, документы, веб-сайты)
- Предобработка: Очистка, стандартизация форматов
- Извлечение сущностей: NER для идентификации узлов
- Извлечение отношений: Определение связей между сущностями
- Дизайн онтологии: Определение схемы типов сущностей и отношений
- Население графа: Создание узлов и ребер в графовой БД
- Интеграция и валидация: Связывание с существующими системами
- Обслуживание: Регулярные обновления и уточнения
Технологии: Neo4j, OrientDB, Amazon Neptune
Модель данных: Resource Description Framework (RDF) — субъект-предикат-объект
8. Динамические графы знаний
Преимущества:
- Обработка информации в реальном времени
- Адаптивное обучение без переобучения
- Структурированный формат для рассуждений
- Большая гибкость, чем векторные хранилища
Риски:
- Сложность обслуживания (ошибки, несоответствия)
- Интенсивность ресурсов
- Проблемы безопасности и конфиденциальности
- Риск чрезмерной зависимости
Стратегии смягчения:
- Надежные механизмы валидации
- Масштабируемая архитектура
- Сильные меры безопасности
- Человеческий надзор
9. Note-Taking (Ведение записей)
Техника: Модель генерирует заметки о входном контексте перед ответом на вопрос.
Процесс:
- Генерация заметок по частям контекста
- Генерация заметки на вопрос
- Чередование заметок с оригинальным контекстом
- Генерация окончательного ответа
Преимущества:
- Более глубокое рассуждение
- Улучшенная производительность задач
- Хорошие результаты на задачах рассуждения и оценки
Ключевые выводы
-
Память критична: Для успешной работы агентных систем необходима эффективная система памяти.
-
Эволюция подходов: От простых (окна контекста) к сложным (GraphRAG, динамические графы).
-
Компромиссы:
- Простота vs. Возможности
- Стоимость vs. Точность
- Статичность vs. Динамичность
-
Интеграция: Память должна интегрироваться с инженерией контекста для максимальной эффективности.
-
Выбор подхода: Зависит от требований к точности, масштабу, сложности и ресурсам.
Рекомендации
- Начинать с простого: Скользящее окно контекста для базовых случаев
- Масштабировать по необходимости: Переходить к семантической памяти и RAG при росте данных
- Рассматривать GraphRAG: Для сложных взаимосвязей и многошагового рассуждения
- Учитывать обслуживание: Динамические графы требуют значительных ресурсов
- Интегрировать с контекстом: Память должна эффективно использоваться в инженерии контекста
Следующие шаги
После изучения памяти следующая глава рассматривает обучение — как агенты могут учиться на опыте для автоматического улучшения.