Как построить масштабируемые serverless-мультиагентные системы LangGraph в AWS с Amazon Bedrock AgentCore
Generative AI стремительно эволюционировал от экспериментальных прототипов к системам, которые должны надежно работать в production, в масштабе и в условиях реальных ограничений по производительности. По мере того как организации уходят от демонстраций и proof of concept, они все чаще сталкиваются с задержкой inference, масштабируемостью, управлением состоянием и операционной видимостью. Сегодня для создания высокопроизводительных AI-агентов уже недостаточно мощных моделей: нужна реализация, которая обеспечивает стабильную производительность, сохраняет контекст между взаимодействиями и дает глубокую observability того, как агенты рассуждают и ведут себя в production.
В этом материале мы показываем решение для построения высокомасштабируемых serverless мультиагентных generative AI-систем на AWS с использованием LangGraph Agents в роли orchestrators, интегрированных с Amazon Bedrock AgentCore Memory и Amazon Bedrock AgentCore Observability.
Наш подход к построению масштабируемых serverless multi-agent orchestrations сочетает serverless-технологии, такие как AWS Lambda и AWS Step Functions. Эти сервисы позволяют разработчикам строить LangGraph-агентов, которые автоматически масштабируются, реагируют на события в реальном времени и снимают с команды задачу управления инфраструктурой. Это делает их подходящими для динамических и всплесковых agent workloads. Объединяя эти сервисы, можно orchestrate сложные multi-tool agent workflows с надежным управлением состоянием, retries и тонким контролем затрат.
Явная графовая модель выполнения LangGraph обеспечивает детерминированную координацию, параллелизм и условную маршрутизацию между агентами, что упрощает понимание и отладку сложных multi-agent workflows. Разделяя логику orchestration и поведение агентов, вы можете добавлять, удалять или развивать специализированных агентов независимо, сохраняя при этом прозрачный и аудируемый путь выполнения. Это особенно важно для production-систем, где требуются предсказуемое поведение, расширяемость и структурированный контроль над multi-agent reasoning.
AgentCore Observability расширяет эти возможности, предоставляя подробную видимость каждого вызова: входы и выходы модели, latency и метрики tool-chain по распределенным serverless-компонентам. Интегрированные memory-сервисы из AgentCore Memory позволяют агентам сохранять краткосрочный conversational context и долгосрочные знания между сессиями.
Обзор решения
Наше решение на базе serverless LangGraph и AgentCore — это generative AI-решение для мультиагентной проверки маркетинговых кампаний, которое orchestrates human reviews с использованием разных персон, чтобы маркетинговые кампании звучали аутентично для целевой аудитории, сохраняя при этом юридическую корректность и соответствие brand standards. Оно состоит из трех специализированных AI-агентов, которые анализируют маркетинговую кампанию параллельно: persona reviewer agent оценивает контент с точки зрения разных демографических групп и формирует resonance scoring, validator agent проверяет соответствие законодательным требованиям и brand guidelines, а finalizer agent синтезирует обратную связь в практические рекомендации. Пользователи загружают документы кампании через React frontend, который также опрашивает систему о результатах и показывает проверки по мере их появления.
Мы используем LangGraph для реализации orchestrator и специализированных агентов, моделируя систему как stateful execution graph. Каждый узел представляет отдельную функцию агента — а именно persona review, compliance validation и feedback synthesis, — а ребра определяют контрольный поток между этими шагами. Orchestrator реализован как supervising graph, который маршрутизирует выполнение, запускает параллельные ветви для специализированных агентов и собирает их результаты для финальной агрегации. LangGraph orchestrator и специализированные агенты вместе упакованы в Docker container.
Мы используем AWS Lambda как serverless managed runtime в AWS для наших Strands agents, чтобы они автоматически масштабировались, реагировали на события в реальном времени и не требовали управления инфраструктурой. Функциональность нашего orchestrator agent доступна через REST-интерфейсы, предоставляемые Amazon API Gateway.
Наша реализация агента использует AgentCore Observability для подробной визуализации каждого шага в agent workflow, что позволяет разработчикам изучать пути выполнения, проверять промежуточные результаты и отлаживать узкие места производительности. В AgentCore Observability мы обеспечиваем видимость в реальном времени в Amazon CloudWatch по операционным панелям и telemetry для ключевых метрик, таких как traces, session count, latency, duration, token usage и error rates.
Мы используем AgentCore Memory для двух ключевых сценариев в нашей реализации агента: multi-agent shared memory для передачи контекста и общей памяти между независимыми запусками агента, а также поддержку multi-turn conversations. Вы можете расширить эту реализацию, чтобы добавить natural language interface для AI assistant, поскольку в ней уже есть встроенная поддержка хранения conversational state и history. Следующая архитектурная диаграмма показывает компоненты нашего решения.

Предварительные требования
Выполните следующие предварительные требования:
- Проверьте доступ к модели в Amazon Bedrock. В этом решении мы используем Anthropic’s Claude 4.5 Sonnet на Amazon Bedrock.
- Установите AWS Command Line Interface (AWS CLI).
- Установите AWS SAM CLI v1.100.0+
- Установите Docker v20.x+.
- Установите Node.js v18.x+
- Установите Docker v20.x+
- Установите Python v3.11+
Зависимости
Наша реализация Strands Agents имеет следующие зависимости, которые упакованы в Dockerfile:
- langchain>=0.2.0
- langgraph==0.3.31
- langgraph-prebuilt~=0.1.8
- langgraph-sdk~=0.1.61
- langchain-aws>=0.2.18
- langchain_tavily
- requests
- bedrock-agentcore
- boto3
Развертывание решения
Вы можете загрузить решение из нашего GitHub repo. Используйте следующую пошаговую инструкцию, которая также приведена в README GitHub repo, чтобы развернуть решение и получить к нему доступ в вашей AWS-среде:
Шаг 1: клонируйте репозиторий git clone <respository url>
cd aws-genai-campaign-review-langgraph
Шаг 2: настройте AWS credentials
Настройте AWS CLI:
aws configure
Проверьте credentials:
aws sts get-caller-identity
Шаг 3: создайте таблицу persona в Amazon DynamoDB
Сделайте скрипт исполняемым:
chmod +x scripts/setup_persona_table.sh
Запустите скрипт настройки:
./scripts/setup_persona_table.sh
Шаг 4: соберите AWS SAM application
sam build
Шаг 5: разверните инфраструктуру
Используйте guided deployment и следуйте подсказкам, чтобы указать имя стека, имя агента, регион AWS и принять значения по умолчанию для остальных параметров.
sam deploy --guided
Шаг 6: получите outputs развертывания
Получите API endpoints:
aws cloudformation describe-stacks --stack-name <your stack name> --query 'Stacks[0].Outputs' --output table
Сохраните следующие значения:
- ApiEndpoint – API URL
- CampaignOrchestratorApi – Agent API URL
- CloudFrontURL – Front-end URL
- FrontendBucket – S3 bucket для frontend
Шаг 8: настройте окружение front-end
Получите значения из CloudFormation outputs:
API_URL=$(aws cloudformation describe-stacks --stack-name <your stack name> --query 'Stacks[0].Outputs[?OutputKey==`ApiEndpoint`].OutputValue' --output text)
AGENT_API_URL=$(aws cloudformation describe-stacks --stack-name <your stack name> -review --query 'Stacks[0].Outputs[?OutputKey==`CampaignOrchestratorApi`].OutputValue' --output text)
Создайте .env файл:
cat > .env << EOF
VITE_API_URL=$API_URL
VITE_AGENT_API_URL=$AGENT_API_URL
VITE_AWS_REGION= <your AWS region>
EOF
Шаг 9: соберите и разверните frontend
Установите зависимости:
npm install
Соберите frontend:
npm run build
Получите имя frontend bucket:
FRONTEND_BUCKET= $(aws cloudformation describe-stacks --stack-name <your stack name> --query 'Stacks[0].Outputs[?OutputKey==`FrontendBucket`].OutputValue' --output text)
Разверните в S3:
aws s3 sync dist/ s3://$FRONTEND_BUCKET --delete
Сделайте инвалидацию CloudFront cache (необязательно, для обновлений):
DISTRIBUTION_ID=$(aws cloudfront list-distributions --query "DistributionList.Items[?Origins.Items[0].DomainName=='${FRONTEND_BUCKET}.s3.us-west-2.amazonaws.com'].Id" --output text)
aws cloudfront create-invalidation --distribution-id $DISTRIBUTION_ID --paths "/*"
Шаг 10: откройте приложение
Получите CloudFront URL:
aws cloudformation describe-stacks --stack-name <your stack name> --query 'Stacks[0].Outputs[?OutputKey==`CloudFrontURL`].OutputValue' --output text
Откройте URL в браузере, чтобы получить доступ к приложению. Используйте этот файл campaign_brief.md как пример документа кампании и загрузите его в левую панель. После этого вы сможете увидеть результат campaign review от multi-agent orchestration в правой панели. Перейдите в консоль Bedrock AgentCore Observability и выберите своего агента, чтобы получить подробную визуализацию каждого шага agent workflow, как показано ниже

Очистка
Чтобы избежать повторных списаний, очистите аккаунт после проверки решения.
- Удалите CloudFormation stack
sam delete --stack-name <your stack name>
- Удалите таблицу DynamoDB
aws dynamodb delete-table --table-name PersonaTable --region <your aws region>
Заключение
В этом материале мы показали, как сочетание LangGraph, Amazon Bedrock AgentCore и serverless-сервисов AWS помогает командам строить высокомасштабируемые, production-ready multi-agent generative AI-системы. Используя явную graph-based execution model LangGraph для orchestration и AWS Lambda-based runtimes для выполнения, разработчики могут координировать сложные параллельные agent workflows с детерминированным control flow, автоматическим масштабированием и минимальными операционными накладными расходами. Интегрированные AgentCore Memory и Observability решают две самые частые проблемы реальных внедрений агентов — управление состоянием и видимость — обеспечивая общий, долговечный контекст между запусками агентов и глубокое понимание поведения, производительности и стоимости агентов.
Вместе эти возможности формируют повторяемый архитектурный паттерн для создания enterprise-grade AI-агентов на AWS. Независимо от того, реализуете ли вы системы проверки кампаний, цифровых ассистентов или другие multi-agent reasoning workflows, такой подход позволяет отделить orchestration от execution, эластично масштабироваться под спрос и сохранять полную прозрачность того, как агенты рассуждают и взаимодействуют. Используя LangGraph для структурированной orchestration и Amazon Bedrock AgentCore для managed runtime, memory и observability, вы можете уверенно перейти от экспериментальных прототипов к надежным и масштабируемым generative AI-системам в production.
Материал — перевод статьи с английского.
Оригинал: Build highly scalable serverless LangGraph multi-agent systems in AWS with Amazon Bedrock AgentCore