ai-agents-for-beginners

Память для AI-агентов

Память агента

Когда речь идет о преимуществах создания AI-агентов, обычно обсуждаются две ключевые вещи: способность использовать инструменты для выполнения задач и возможность улучшаться со временем. Память лежит в основе создания самообучающихся агентов, которые могут предоставлять более качественный опыт для пользователей.

В этом уроке мы рассмотрим, что такое память для AI-агентов, как ее можно управлять и использовать для улучшения наших приложений.

Введение

В этом уроке мы изучим:

Понимание памяти AI-агентов: Что такое память и почему она важна для агентов.

Реализация и хранение памяти: Практические методы добавления возможностей памяти в AI-агентов, с акцентом на краткосрочную и долгосрочную память.

Создание самообучающихся AI-агентов: Как память позволяет агентам учиться на прошлых взаимодействиях и становиться лучше со временем.

Цели обучения

После завершения урока вы сможете:

Различать различные типы памяти AI-агентов, включая рабочую, краткосрочную и долгосрочную память, а также специализированные формы, такие как память персонажа и эпизодическая память.

Реализовывать и управлять краткосрочной и долгосрочной памятью для AI-агентов с использованием фреймворка Semantic Kernel, инструментов, таких как Mem0 и Whiteboard memory, и интеграции с Azure AI Search.

Понимать принципы работы самообучающихся AI-агентов и как надежные системы управления памятью способствуют непрерывному обучению и адаптации.

Понимание памяти AI-агентов

В основе своей память AI-агентов — это механизмы, позволяющие им сохранять и вспоминать информацию. Эта информация может включать детали разговора, предпочтения пользователя, прошлые действия или даже выученные шаблоны.

Без памяти AI-приложения часто остаются без состояния, то есть каждое взаимодействие начинается с нуля. Это приводит к повторяющемуся и неудовлетворительному пользовательскому опыту, когда агент “забывает” предыдущий контекст или предпочтения.

Почему память важна?

Интеллект агента тесно связан с его способностью вспоминать и использовать прошлую информацию. Память позволяет агентам быть:

Рефлексивными: Учиться на прошлых действиях и результатах.

Интерактивными: Сохранять контекст в ходе текущего разговора.

Проактивными и реактивными: Предугадывать потребности или реагировать на основе исторических данных.

Автономными: Работать более независимо, используя накопленные знания.

Цель внедрения памяти — сделать агентов более надежными и способными.

Типы памяти

Рабочая память

Представьте себе листок бумаги, который агент использует для выполнения текущей задачи или мыслительного процесса. Она хранит информацию, необходимую для выполнения следующего шага.

Для AI-агентов рабочая память часто фиксирует наиболее важную информацию из разговора, даже если полный журнал чата длинный или сокращен. Она сосредоточена на ключевых элементах, таких как требования, предложения, решения и действия.

Пример рабочей памяти

В агенте по бронированию путешествий рабочая память может фиксировать текущий запрос пользователя, например: “Я хочу забронировать поездку в Париж”. Это конкретное требование сохраняется в контексте агента для управления текущим взаимодействием.

Краткосрочная память

Этот тип памяти сохраняет информацию на протяжении одного разговора или сеанса. Это контекст текущего чата, позволяющий агенту ссылаться на предыдущие реплики в диалоге.

Пример краткосрочной памяти

Если пользователь спрашивает: “Сколько будет стоить перелет в Париж?” и затем добавляет: “А как насчет проживания там?”, краткосрочная память позволяет агенту понять, что “там” относится к “Парижу” в рамках одного разговора.

Долгосрочная память

Это информация, которая сохраняется на протяжении нескольких разговоров или сеансов. Она позволяет агентам запоминать предпочтения пользователя, исторические взаимодействия или общие знания на длительный срок. Это важно для персонализации.

Пример долгосрочной памяти

Долгосрочная память может хранить информацию, например: “Бен любит кататься на лыжах и заниматься активным отдыхом, предпочитает кофе с видом на горы и избегает сложных лыжных трасс из-за прошлой травмы”. Эта информация, полученная из предыдущих взаимодействий, влияет на рекомендации в будущих сеансах планирования путешествий, делая их максимально персонализированными.

Память персонажа

Этот специализированный тип памяти помогает агенту развивать последовательную “личность” или “персону”. Он позволяет агенту запоминать детали о себе или своей роли, делая взаимодействия более естественными и целенаправленными.

Пример памяти персонажа

Если агент по путешествиям предназначен быть “экспертом по планированию лыжных туров”, память персонажа может укреплять эту роль, влияя на его ответы, чтобы они соответствовали тону и знаниям эксперта.

Память рабочего процесса/эпизодическая память

Эта память сохраняет последовательность шагов, которые агент выполняет во время сложной задачи, включая успехи и неудачи. Это похоже на запоминание конкретных “эпизодов” или прошлых событий для обучения.

Пример эпизодической памяти

Если агент пытался забронировать определенный рейс, но это не удалось из-за отсутствия мест, эпизодическая память может зафиксировать эту неудачу, позволяя агенту попробовать альтернативные рейсы или информировать пользователя о проблеме более осведомленно при следующей попытке.

Память сущностей

Этот тип памяти включает извлечение и запоминание конкретных сущностей (например, людей, мест или вещей) и событий из разговоров. Он позволяет агенту создавать структурированное понимание ключевых элементов обсуждения.

Пример памяти сущностей

Из разговора о прошлой поездке агент может извлечь “Париж”, “Эйфелева башня” и “ужин в ресторане Le Chat Noir” как сущности. В будущем взаимодействии агент может вспомнить “Le Chat Noir” и предложить сделать там новую бронь.

Структурированный RAG (Retrieval Augmented Generation)

Хотя RAG — это более широкая техника, “структурированный RAG” выделяется как мощная технология памяти. Он извлекает плотную, структурированную информацию из различных источников (разговоров, писем, изображений) и использует ее для повышения точности, полноты и скорости ответов. В отличие от классического RAG, который опирается только на семантическое сходство, структурированный RAG работает с внутренней структурой информации.

Пример структурированного RAG

Вместо простого сопоставления ключевых слов структурированный RAG может анализировать детали рейса (пункт назначения, дата, время, авиакомпания) из письма и сохранять их в структурированном виде. Это позволяет задавать точные запросы, например: “Какой рейс я забронировал в Париж на вторник?”

Реализация и хранение памяти

Реализация памяти для AI-агентов включает систематический процесс управления памятью, который включает генерацию, хранение, извлечение, интеграцию, обновление и даже “забывание” (или удаление) информации. Извлечение является особенно важным аспектом.

Специализированные инструменты памяти

Один из способов хранения и управления памятью агента — использование специализированных инструментов, таких как Mem0. Mem0 работает как слой постоянной памяти, позволяя агентам вспоминать важные взаимодействия, сохранять предпочтения пользователей и фактический контекст, а также учиться на успехах и неудачах со временем. Идея заключается в том, чтобы сделать агентов с состоянием вместо агентов без состояния.

Он работает через двухфазный процесс памяти: извлечение и обновление. Сначала сообщения, добавленные в поток агента, отправляются в сервис Mem0, который использует модель LLM для суммирования истории разговора и извлечения новых воспоминаний. Затем этап обновления, управляемый LLM, определяет, следует ли добавить, изменить или удалить эти воспоминания, сохраняя их в гибридном хранилище данных, которое может включать векторные, графовые и ключ-значение базы данных. Эта система также поддерживает различные типы памяти и может включать графовую память для управления отношениями между сущностями.

Хранение памяти с помощью RAG

Помимо специализированных инструментов памяти, таких как Mem0, вы можете использовать мощные поисковые сервисы, такие как Azure AI Search, как бэкенд для хранения и извлечения воспоминаний, особенно для структурированного RAG.

Это позволяет основывать ответы агента на ваших собственных данных, обеспечивая более релевантные и точные ответы. Azure AI Search можно использовать для хранения воспоминаний о путешествиях пользователей, каталогов продуктов или любых других знаний, специфичных для вашей области.

Azure AI Search поддерживает возможности, такие как структурированный RAG, который превосходно извлекает и извлекает плотную, структурированную информацию из больших наборов данных, таких как история разговоров, письма или даже изображения. Это обеспечивает “сверхчеловеческую точность и полноту” по сравнению с традиционными подходами к разбиению текста и встраиванию.

Создание самообучающихся AI-агентов

Распространенный подход к созданию самообучающихся агентов включает введение “агента знаний”. Этот отдельный агент наблюдает за основным разговором между пользователем и основным агентом. Его роль заключается в следующем:

  1. Выявление ценной информации: Определение, стоит ли сохранить какую-либо часть разговора как общие знания или конкретное предпочтение пользователя.

  2. Извлечение и суммирование: Выделение ключевых знаний или предпочтений из разговора.

  3. Сохранение в базе знаний: Сохранение извлеченной информации, часто в векторной базе данных, чтобы ее можно было извлечь позже.

  4. Дополнение будущих запросов: Когда пользователь инициирует новый запрос, агент знаний извлекает соответствующую сохраненную информацию и добавляет ее к запросу пользователя, предоставляя важный контекст основному агенту (аналогично RAG).

Оптимизация памяти

Управление задержкой: Чтобы избежать замедления взаимодействий с пользователем, можно использовать более дешевую и быструю модель для первоначальной проверки, стоит ли сохранять или извлекать информацию, и только при необходимости запускать более сложный процесс извлечения/сохранения.

Поддержка базы знаний: Для растущей базы знаний менее часто используемую информацию можно переместить в “холодное хранилище” для управления затратами.

Остались вопросы о памяти агентов?

Присоединяйтесь к Azure AI Foundry Discord, чтобы встретиться с другими учащимися, посетить офисные часы и получить ответы на свои вопросы о AI-агентах.


Отказ от ответственности:
Этот документ был переведен с использованием сервиса автоматического перевода Co-op Translator. Несмотря на наши усилия обеспечить точность, автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его родном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникшие в результате использования данного перевода.