Шаблон агента ADK с памятью и MCP

1. Чему вы научитесь

Добро пожаловать на мастер-класс ADK — ваше путешествие в мир многоагентных систем.

Вы вот-вот погрузитесь в захватывающий мир агентов искусственного интеллекта. Забудьте о простых чат-ботах, которые просто отвечают на вопросы. Мы глубоко изучаем Agent Development Kit (ADK) , чтобы создавать сложные автономные системы, способные рассуждать, планировать и использовать инструменты для выполнения сложных задач.

крышка

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

  • Создайте своего первого ИИ-агента : пройдите путь от нуля до полностью функционального агента, способного понимать потребности пользователя, использовать такие инструменты, как поиск Google, и генерировать подробные и полезные ответы.
  • Создание многоагентных систем : изучите модель «агент как инструмент» — революционную концепцию, в которой агенты делегируют задачи другим специализированным агентам, создавая команду экспертов в области искусственного интеллекта, работающих вместе.
  • Организуйте сложные рабочие процессы : выйдите за рамки простого делегирования и освойте продвинутые шаблоны, такие как маршрутизаторы , последовательные цепочки , циклы и параллельное выполнение, чтобы создавать надежные, эффективные и интеллектуальные приложения, способные обрабатывать практически любые запросы.
  • Научите своих агентов запоминать информацию : поймите важнейшую роль разговорной памяти, которая позволит вашим агентам обрабатывать дополнительные вопросы, учиться на обратной связи и беспрепятственно управлять многоэтапными задачами.
  • Подключитесь к MCP : Подключитесь к инструментарию MCP.

Начнём! 🚀

2. Настройка ключей API GCP и Gemini.

Настройка вашего проекта GCP и ключа API Gemini.

Для работы наших ИИ-агентов нам необходимы две вещи: проект Google Cloud, который обеспечит основу, и ключ API Gemini для доступа к мощным моделям Google.

Шаг 1: Активируйте платежный аккаунт

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

Шаг 2: Создайте новый проект GCP.

  • Перейдите в консоль Google Cloud и создайте новый проект.

создать новую учетную запись GCP

  • Перейдите в консоль Google Cloud и создайте новый проект.
  • Откройте левую панель, нажмите Billing , проверьте, связана ли учетная запись для выставления счетов с этой учетной записью GCP.

Свяжите платежный аккаунт с аккаунтом GCP.

Если вы видите эту страницу, перейдите в раздел manage billing account , выберите пробную версию Google Cloud Trial One и свяжите ее с этим аккаунтом.

Шаг 3: Найдите идентификатор своего проекта Google Cloud.

👉Нажмите «Активировать Cloud Shell» в верхней части консоли Google Cloud (это значок терминала в верхней части панели Cloud Shell). cloud-shell.png

👉Нажмите на кнопку «Открыть редактор» (она выглядит как открытая папка с карандашом). Это откроет редактор кода Cloud Shell в окне. Слева вы увидите файловый менеджер. open-editor.png

👉Найдите идентификатор своего проекта Google Cloud:

  • Откройте консоль Google Cloud: [ссылка]
  • Выберите проект, который вы хотите использовать для этого мастер-класса, из выпадающего списка проектов в верхней части страницы.
  • Идентификатор вашего проекта отображается в карточке с информацией о проекте на панели управления.

03-04-project-id.png

👉💻 В терминале убедитесь, что вы уже авторизованы и что проект настроен на ваш идентификатор проекта, используя следующую команду:

gcloud auth list

👉💻 Клонируйте проект Bootstrap с GitHub:

git clone https://github.com/cuppibla/adk_tutorial.git

👉💻 Запустите скрипт инициализации. Этот скрипт предложит вам ввести идентификатор вашего проекта Google Cloud . Затем введите идентификатор проекта Google Cloud, найденный на предыдущем шаге, когда скрипт setup_venv.sh запросит это.

cd ~/adk_tutorial
./setup_venv.sh

gcloud services enable  compute.googleapis.com \
                        artifactregistry.googleapis.com \
                        run.googleapis.com \
                        iam.googleapis.com \
                        aiplatform.googleapis.com \
                        cloudresourcemanager.googleapis.com

3. Сессия 1: Ваш первый агент в ADK Web

Откройте веб-версию ADK, выполнив следующую команду:

cd ~/adk_tutorial
source .adk_env/bin/activate
adk web

После выполнения команд в терминале должен отобразиться вывод, указывающий на запуск веб-сервера ADK, примерно такой:

+-----------------------------------------------------------------------------+
| ADK Web Server started                                                      |
|                                                                             |
| For local testing, access at http://localhost:8000.                         |
+-----------------------------------------------------------------------------+

INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)

👉 Далее, чтобы получить доступ к пользовательскому интерфейсу разработчика ADK из вашего браузера:

На панели инструментов Cloud Shell (обычно в правом верхнем углу) в меню предварительного просмотра веб-страниц выберите «Изменить порт». Во всплывающем окне установите порт на 8000 и нажмите « Изменить и просмотреть ». После этого Cloud Shell откроет новую вкладку или окно браузера с пользовательским интерфейсом разработчика ADK.

веб-предварительный просмотр

👉 Ваш ритуал призыва завершен, и агент запущен. Интерфейс разработчика ADK в вашем браузере — это ваша прямая связь с Фамильяром.

Выберите агент параллельного рабочего процесса. В раскрывающемся меню в верхней части пользовательского интерфейса выберите parallel_agent .

Здесь вы можете выбрать single_agent : трассировочное изображение отдельных агентов

Здесь вы можете увидеть результаты трассировки: трассировочное изображение отдельного агента

👉 Тестовое задание:

Plan a trip from Sunnyvale to San Francisco this weekend, I love food and art.

4. Сессия 2: Агент рабочего процесса: Последовательный агент, Параллельный агент, Циклический агент

Параллельный агент

Выберите агент параллельного рабочего процесса. В раскрывающемся меню в верхней части пользовательского интерфейса выберите parallel_agent .

👉 Тестовое задание:

Plan my trip to San Francisco, I want to find some good concert, restaurant and museum.

Здесь вы можете выбрать parallel_agent : трассировка изображения параллельных агентов

Здесь вы можете увидеть результаты трассировки: трассировка изображения параллельных агентов

Последовательный агент

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

👉 Тестовое задание:

Find a good sushi near Standford and tell me how to get there.

Здесь вы можете выбрать sequential_agent : трассировочное изображение последовательных агентов

Здесь вы можете увидеть результаты трассировки: трассировочное изображение последовательного агента

Агент петли

Выберите агент рабочего процесса loop. В раскрывающемся меню в верхней части пользовательского интерфейса выберите loop_agent .

👉 Тестовое задание:

Plan a trip from Sunnyvale to San Francisco today.

Здесь вы можете выбрать loop_agent : трассировка изображения агентов петли

Здесь вы можете увидеть результаты трассировки: трассировка изображения агентов петли

5. Сессия 3: Пользовательский агент

После открытия веб-интерфейса ADK вы можете выбрать агента Custom_Agent .

👉 Тестовое задание:

Plan a trip from Sunnyvale to San Francisco this weekend, I love food and art. Make sure within budget of 100 dollars.

Здесь вы можете выбрать Custom_Agent : трассировочное изображение Custom_Agent

Здесь вы можете увидеть результаты трассировки: трассировочное изображение Custom_Agent

6. Сессия 4: Шаблон оркестратора — Агент маршрутизации

После открытия веб-интерфейса ADK вы можете выбрать routing_agent .

👉 Тестовое задание:

Plan a trip from Sunnyvale to San Francisco this weekend, I love concert, restaurant and museum.

Здесь вы можете выбрать routing_agent : трассировочное изображение маршрутных агентов

Здесь вы можете увидеть результаты трассировки: трассировочное изображение маршрутных агентов

7. Сессия 5: Агент как инструмент

После открытия веб-интерфейса ADK вы можете выбрать агента Agent_as_tool .

👉 Тестовое задание:

Plan a trip from Sunnyvale to San Francisco this weekend, I love concert, restaurant and museum.

Здесь вы можете выбрать agent_as_tool : обводка изображения агента как инструмента

Здесь вы можете увидеть результаты трассировки: трассировочное изображение маршрутных агентов

8. Сессия 6: Агент с долговременной памятью

👉💻 Проверьте свою долговременную память, перейдя в папку и используя средство запуска, чтобы активировать агента:

cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/f_agent_with_memory
python main.py

👉 Тестовое задание:

I like Art and Italian food.

Затем завершите сессию, нажав "Ctrl+C". Перезапустите сессию:

cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/f_agent_with_memory
python main.py

👉 Тестовое задание:

Plan a trip to San Francisco based on my preference.

9. Сессия 7: Расширьте возможности своего агента с помощью MCP.

Шаг 1: Подготовка локальной базы данных

👉💻 Выполните следующую команду в терминале

cd ~/adk_tutorial
source .adk_env/bin/activate
chmod +x setup_trip_database.py
./setup_trip_database.py

Шаг 2: Установите и запустите сервер MCP Toolbox.

👉💻 Выполните следующую команду в терминале

cd ~/adk_tutorial/mcp_tool_box
export VERSION=0.16.0
curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/v$VERSION/linux/amd64/toolbox

после завершения загрузки запустите

chmod +x toolbox

Шаг 3

В одном из терминалов выполните следующую команду.

cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/mcp_tool_box
./toolbox --tools-file "trip_tools.yaml" --port 7001

В другом терминале выполните следующую команду.

cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/g_agents_mcp
python main.py