Как развернуть серверных ИИ-агентов в продакшене с помощью Amazon Bedrock

DeepLearning.AI 1,7 тыс. 1 ч 3 мин 7 мин 27.03.2025
Главное

На воркшопе ИТ-платформы DeepLearning.AI специалист по связям с разработчиками из AWS Майк Чемберс (Mike Chambers) представил концепцию создания и развертывания масштабируемых ИИ-агентов. Основное внимание в выступлении было уделено переходу от локальных экспериментов в Jupyter-ноутбуках к полноценной эксплуатации систем в корпоративной среде (продакшене). Спикер продемонстрировал, как экосистема Amazon Bedrock в сочетании с серверной архитектурой позволяет решать задачи бизнеса без необходимости управлять инфраструктурой.

🛠️ От экспериментов к продакшену: концепция серверных агентов 0:26

Сегодня ИТ-индустрия сталкивается с растущим давлением со стороны руководства организаций, требующего реальной отдачи от инвестиций в технологии искусственного интеллекта. Разработчики успешно создают прототипы систем и тестируют архитектуру RAG (генерации с дополнением извлечения) на локальных ноутбуках, однако запуск этих решений в промышленном масштабе требует принципиально иного подхода.

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

Для создания отказоустойчивой и масштабируемой агентной системы Майк Чемберс предлагает использовать полностью серверный (serverless) стек AWS, который исключает необходимость администрирования серверов и обновлений ОС. Архитектура такого решения включает следующие элементы:

В каталоге Amazon Bedrock доступны модели Anthropic Claude, Meta Llama, Mistral, управляемые эндпоинты DeepSeek R1, а также собственная линейка моделей Amazon Nova. Для разработчиков критически важен интерфейс Converse API, который низкоуровнево абстрагирует логику диалога. По словам Чемберса, главным преимуществом использования Bedrock по сравнению с прямым обращением к API отдельных провайдеров является то, что для перехода на совершенно другую модель (например, на ставшую популярной DeepSeek R1) достаточно изменить всего один идентификатор модели в коде.

💻 Пошаговое создание агента с помощью Boto3 SDK 14:02

В рамках практической части воркшопа Майк Чемберс продемонстрировал процесс создания базового агента поддержки для вымышленного бизнеса по продаже кружек. Первым этапом стало развертывание простейшего агента, который еще не имеет инструментов, но уже поддерживает историю диалога и логику рассуждений.

Процесс конфигурации агента на языке Python с использованием AWS SDK (Boto3) состоит из следующих шагов:

  1. Инициализация специализированного клиента для работы с агентами Bedrock через команду boto3.client('bedrock-agent').
  2. Вызов функции create_agent, в которую передаются базовые параметры: имя агента, привязанная модель (в данном примере — Claude 3 Haiku), роль безопасности IAM и системная инструкция.
  3. Ожидание перевода агента из статуса создания (creating) в статус готовности к подготовке.
  4. Вызов метода prepare_agent для компиляции конфигурации агента.
  5. Создание постоянного продакшен-алиаса через create_agent_alias для последующего вызова в приложениях.

Майк Чемберс подчеркнул, что системная инструкция в Amazon Bedrock — это не просто стандартный промпт, а метаданные, которые платформа автоматически упаковывает вместе со схемами инструментов в финальный контекст для LLM. Примечательно, что вся процедура создания промышленной ИИ-системы происходит без развертывания виртуальных серверов EC2 или контейнеров.

Для взаимодействия с созданным агентом используется другой клиент — bedrock-agent-runtime. При вызове функции invoke_agent обязательным параметром является session_id (уникальный UUID). Поскольку вся история переписки хранится внутри самого агента, передача одного и того же session_id позволяет бесшовно продолжать диалог в рамках одной сессии. Важнейшей опцией для разработчиков является включение трассировки (trace='ENABLED'), которая возвращает поток событий (event stream) и позволяет детально видеть логические шаги модели и процесс ее рассуждений при отладке.

🔌 Подключение внешних инструментов через Action Groups 28:15

Агент, лишенный инструментов, не способен помочь пользователю в решении транзакционных задач. Чтобы связать ИИ с внешними ИТ-системами, в Amazon Bedrock используется механизм групп действий — Action Groups. Каждая группа объединяет несколько логических функций (инструментов), выполнение которых делегируется серверным функциям AWS Lambda.

Для того чтобы модель понимала, когда и как вызывать внешний инструмент, разработчик должен описать его с помощью схемы функций (Function Schema). Майк Чемберс обратил особое внимание на то, что текстовые описания (descriptions) функций и их аргументов имеют критическое значение:

«В AWS есть много мест, где можно оставить описание сервиса, и никто из нас этого обычно не делает. Но здесь это действительно важно, потому что именно этот текст большая языковая модель будет использовать для анализа и рассуждений».

В рамках демонстрации для интеграции с CRM-системой были созданы схемы для трех функций:

В схеме параметров жестко задается их обязательность (required). Если параметр отмечен как обязательный, LLM на основе логических рассуждений сначала попытается выяснить недостающие данные у пользователя в чате и только потом инициирует вызов функции Lambda. Любое обновление состава инструментов требует повторного прохождения цикла «Push to Production»: обновления группы действий, переподготовки агента (prepare_agent) и обновления его алиаса.

🧮 Расширение возможностей: Code Interpreter и Guardrails 37:03

Языковые модели превосходно работают с текстом, но традиционно испытывают трудности с точными математическими расчетами и детерминированной логикой. Для преодоления этого ограничения в Amazon Bedrock Agents интегрирована функция Code Interpreter (интерпретатор кода).

Этот инструмент предоставляет агенту доступ к изолированной и безопасной среде выполнения кода. Обнаружив задачу, требующую вычислений (например, перевод фразы пользователя «10 недель назад» в точную календарную дату для поиска чека), модель самостоятельно пишет скрипт на Python, запускает его внутри песочницы и забирает текстовый результат выполнения. По соображениям безопасности среда Code Interpreter полностью изолирована от интернета, чтобы исключить выполнение опасного вредоносного кода.

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

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

Во время живой демонстрации Майк Чемберс сымитировал попытку пользователя узнать свой внутренний системный идентификатор customer_id. Интегрированный Guardrail мгновенно перехватил запрос и заблокировал выдачу информации, вернув стандартный безопасный отказ, несмотря на настойчивые повторные просьбы пользователя.

📚 Управление знаниями с помощью Knowledge Bases (RAG) 50:54

Для предоставления агенту доступа к актуальным внутренним документам компании без постоянного переобучения модели применяется встроенный компонент Knowledge Bases. Данная технология автоматизирует построение архитектуры RAG, которая стала индустриальным стандартом.

В качестве хранилища исходных текстовых документов или инструкций выступают корзины Amazon S3. Роль векторной базы данных выполняет бессерверная коллекция Amazon OpenSearch Serverless. Bedrock Knowledge Base полностью берет на себя рутинные процессы:

Агент Bedrock связывается с базой знаний и автоматически извлекает релебэк-контекст при поступлении сложных вопросов о продуктах. Спикер отметил, что реализация RAG-архитектуры через консоль или API Bedrock сводится буквально к трем кликам, полностью изолируя разработчика от ручной настройки векторных индексов и алгоритмов поиска.

🚀 Эволюция архитектуры: модели Nova и инлайн-агенты 54:27

В заключительной части доклада Майк Чемберс представил новейшие технологические изменения, анонсированные на ежегодной конференции AWS re:Invent в Лас-Вегасе. Ключевым событием стал выпуск обновленного семейства собственных моделей AWS — Amazon Nova (включая модификации Micro, Light и Pro). По оценке спикера, эти модели демонстрируют высочайшую ценовую эффективность (price-performance) и относятся к высшему тиру современных ИИ-решений, показывая отличные результаты на бенчмарках.

Параллельно был представлен революционный инструмент для разработчиков — Inline Agents (инлайн-агенты). Традиционный подход требует жесткого развертывания агента в облаке, создания версий и управления их инфраструктурой, что замедляет итерации. Технология Inline Agents позволяет описать всю конфигурацию агента и структуру его инструментов в виде обычного словаря данных Python в локальном коде и немедленно вызвать исполнение через метод invoke_inline_agent runtime-клиента.

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

В качестве примера использования Return Control для долгоживущих процессов Чемберс привел личный шуточный проект — ИИ-агента, запущенного в контейнере, который поддерживает игровое состояние и играет с ним в Minecraft.

💬 Цитаты

«Агент — это оркестратор, который под капотом занимается манипуляциями со строками, но использует большую языковую модель для инкапсуляции интеллекта.»

Майк Чемберс 03:45

«Если вы подключаетесь к моделям через Bedrock, вы находитесь на расстоянии изменения одного ID модели в коде, чтобы попробовать совершенно другого провайдера.»

Майк Чемберс 08:06
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Action Group
Компонент Amazon Bedrock, объединяющий набор функций или инструментов, к которым ИИ-агент получает доступ для взаимодействия с внешними системами.
Code Interpreter
Изолированная безопасная среда (песочница), в которой ИИ-агент может выполнять сгенерированный им код для решения точных логических или математических задач.
Inline Agent
Режим работы ИИ-агента в AWS, позволяющий передавать и исполнять его конфигурацию динамически прямо из программного кода без создания постоянного облачного ресурса.
Converse API
Унифицированный низкоуровневый программный интерфейс AWS, который абстрагирует особенности ведения диалога для моделей различных ИИ-провайдеров.
📊 Цифры
🗓 Хронология
  1. 2023 год Выпуск курса 'Generative AI with LLMs' Майком Чемберсом и командой DeepLearning.AI.
  2. Декабрь прошлого года На ежегодной конференции AWS re:Invent представлены модели линейки Amazon Nova и инструмент Inline Agents.
⚖️ Другая сторона
Искусственный интеллект Amazon Bedrock ИИ-агенты AWS Lambda Boto3 Amazon Nova