strands-agents

2 개의 포스트

aws

런타임 인스턴스: Amazon Bedrock AgentCore에서 프로덕션 AI 에이전트를 위한 지속적 컴퓨팅 | Amazon Web Services (새 탭에서 열림)

Amazon Bedrock AgentCore의 **runtime instances**는 장시간 실행, GPU 사용, 다중 에이전트 협업이 필요한 프로덕션 AI 에이전트를 위한 AWS 관리형 EC2 기반 실행 환경이다. 최대 14일 동안 세션 상태를 유지하고, 여러 에이전트가 같은 호스트와 파일 시스템을 공유할 수 있다. 기존에 직접 구성해야 했던 EC2, 네트워크, 세션 관리, 확장, 모니터링을 AgentCore API·IAM·관측성 체계와 함께 관리해 복잡한 에이전트 워크로드를 단순화한다. ## runtime instances가 해결하는 문제 - 프로토타입 에이전트를 프로덕션으로 전환하면 다음 요구사항이 발생한다. - 수 시간에서 수일 동안 지속되는 워크플로 - 여러 단계에 걸친 상태 유지 - 에이전트 간 협업과 컨텍스트 공유 - GPU 또는 운영체제 수준 접근 - 대용량·지속형 컴퓨팅 환경 - 기존에는 EC2 인스턴스, 네트워크, 세션 관리, 확장, 모니터링을 직접 구축해야 했다. - runtime instances는 이러한 인프라를 AWS가 관리하면서 기존 AgentCore API, 인증 제어, 관측성 기능과 통합한다. ## runtime microVM과 runtime instances의 차이 - **runtime microVM** - 빠른 확장에 적합한 경량 실행 환경 - 개별 호출을 최대 8시간까지 실행 - 관리형 세션 저장소를 통해 상태 기반 워크플로 지원 - **runtime instances** - AWS 관리형 EC2 기반의 지속형 실행 환경 - 공유 세션을 최대 14일까지 유지 - GPU, 직접적인 OS 접근, 장시간 실행 지원 - 여러 에이전트를 하나의 런타임에서 실행 가능 - 유휴 기간에는 세션을 중지하고 나중에 재개해 비용 절감 - 두 환경은 독립적으로 사용하거나 함께 구성할 수 있다. - 예를 들어 microVM의 오케스트레이터가 작업을 분배하고, instances의 워커 에이전트가 코드 컴파일·보안 검사·GUI 자동화 같은 무거운 작업을 수행한다. ## 에이전트 배포와 협업 방식 - CrewAI, LangGraph, LlamaIndex, Strands 등 원하는 프레임워크와 모델을 사용할 수 있다. - 애플리케이션은 `@app.entrypoint` 데코레이터를 사용하며, ZIP 파일 또는 컨테이너 이미지로 패키징한다. - 같은 세션에 속한 에이전트들은 서로를 도구처럼 호출하며 자율적으로 작업을 반복할 수 있다. - 세션이 며칠간 중단되어도 상태를 유지한 채 재개할 수 있다. - 세션을 초월해 보존해야 하는 지식은 다음 서비스와 결합할 수 있다. - Amazon EBS: 지속적인 파일 시스템과 작업 데이터 저장 - AgentCore Memory: 세션·환경을 넘어 유지되는 장기 기억 ## 코드 작성 에이전트와 리뷰 에이전트 예시 - 예제에서는 두 개의 Python 에이전트를 만든다. - **Writer**: 자연어 요구사항을 Python 코드로 변환 - **Reviewer**: 생성된 코드의 버그, 보안 문제, 스타일을 검토 - Writer는 세션 ID를 기반으로 공유 디렉터리를 만든 뒤 `code.py`를 저장한다. - Reviewer는 같은 세션 ID로 해당 파일을 읽어 코드 리뷰를 수행한다. - 두 에이전트가 같은 파일 시스템을 공유하므로 다음이 필요 없다. - 코드 파일을 별도로 업로드하거나 다운로드하는 과정 - 에이전트 간 API를 통한 데이터 전송 - 실제 운영 환경에서는 예외 처리, 파일 접근 권한, 동시성 제어, 세션 ID 검증 등을 추가해야 한다. ## 용량 공급자 설정 - 먼저 에이전트가 실행될 EC2 인프라를 정의하는 **capacity provider**를 생성한다. - 주요 설정 항목은 다음과 같다. - 운영체제: Linux 64-bit ARM - 인스턴스 유형: 예시에서는 `c7g.2xlarge` - 컴퓨팅 자원: 8 vCPU, 16 GiB 메모리 - VPC, 서브넷, 보안 그룹 - gp3 EBS 볼륨 - EC2 관리를 위한 서비스 역할과 인프라 역할 - 생성 후 상태가 `Active`가 되면 런타임에서 사용할 수 있다. - 생성 이후에는 설명 외 설정 변경이 제한되므로 인스턴스 유형, 네트워크, 보안 설정을 처음부터 검토해야 한다. ## 런타임 생성과 에이전트 배포 - Runtime에서 Compute type으로 **Instances**를 선택한다. - 앞서 만든 capacity provider를 연결한다. - 에이전트 소스는 S3에서 가져오며, ZIP 파일을 업로드할 수 있다. - 배포 시 다음 정보를 지정한다. - Python 3.13 등 언어 런타임 - `agent.py`와 같은 엔트리포인트 파일 - 에이전트의 `@app.entrypoint` 함수 - AWS Management Console뿐 아니라 AgentCore CLI, AWS CLI, IaC 도구로도 배포할 수 있다. ## 실용적인 선택 기준 - 빠른 확장과 짧은 호출 중심의 오케스트레이션에는 runtime microVM이 적합하다. - 장시간 실행, GPU, 공유 파일 시스템, 다중 에이전트 협업, OS 접근이 필요하면 runtime instances를 고려하는 것이 좋다. - 일반적으로는 microVM을 오케스트레이터로, runtime instances를 전문 워커 실행 환경으로 조합하는 구조가 효과적이다. - 비용을 줄이려면 작업이 없는 시간에 세션을 중지하고, EBS와 AgentCore Memory를 목적에 맞게 분리해 사용하는 것이 권장된다.

aws

워크플로 현대화: Amazon WorkSpaces, 이제 AI 에이전트에 자체 데스크톱 제공(미리 보기) | Amazon Web Services (새 탭에서 열림)

Amazon WorkSpaces는 레거시 애플리케이션을 API로 현대화하지 않아도 AI 에이전트가 데스크톱 환경에서 직접 조작할 수 있도록 지원한다. 에이전트는 직원과 동일한 관리형 가상 데스크톱에서 애플리케이션을 사용하며, IAM 인증과 CloudTrail·CloudWatch 감사 추적을 적용받는다. 이를 통해 기업은 대규모 마이그레이션 없이 기존 업무 시스템에 AI 자동화를 도입할 수 있다. ## 레거시 애플리케이션의 AI 접근성 문제 - 2024년 Gartner 보고서에 따르면 조직의 75%가 현대적인 API가 없는 레거시 애플리케이션을 운영한다. - Fortune 500 기업의 71%는 프로그래밍 방식 접근이 부족한 메인프레임에서 핵심 업무를 처리한다. - 기업은 AI 도입을 미루거나, 비용과 위험이 큰 애플리케이션 현대화 프로젝트를 진행해야 했다. - WorkSpaces는 애플리케이션을 재개발하거나 API를 새로 구축하지 않고도 이 문제를 해결한다. ## AI 에이전트를 위한 보안 데스크톱 - AI 에이전트는 관리형 WorkSpaces 환경 내부에서 데스크톱 애플리케이션을 실행한다. - AWS IAM을 통해 에이전트를 인증하고, 에이전트별 자격 증명과 권한을 적용한다. - AWS CloudTrail과 Amazon CloudWatch를 이용해 세션과 작업을 감사·모니터링할 수 있다. - 로컬 컴퓨터가 아닌 격리된 클라우드 데스크톱에서 동작하므로 기존 보안 정책과 컴플라이언스 통제를 유지할 수 있다. - 직원용으로 사용하던 WorkSpaces 인프라를 AI 에이전트용 실행 환경으로 확장할 수 있다. ## MCP 기반 에이전트 연동 - WorkSpaces는 업계 표준인 Model Context Protocol(MCP)을 지원한다. - MCP 엔드포인트를 통해 에이전트 프레임워크와 WorkSpaces를 연결할 수 있다. - LangChain, CrewAI, Strands Agents 등 다양한 프레임워크와 함께 사용할 수 있다. - 별도의 애플리케이션별 API 통합 없이 에이전트가 데스크톱의 사용자 인터페이스를 조작한다. ## 에이전트 접근 환경 설정 - WorkSpaces Applications 스택을 생성해 에이전트의 연결 방식과 권한을 정의한다. - 스택 설정에서 기본값인 `No AI agent access` 대신 `Add AI Agents`를 선택하면 에이전트 접속을 활성화할 수 있다. - 주요 에이전트 기능은 다음과 같다. - **Computer input**: 클릭, 입력, 스크롤 수행 - **Computer vision**: 화면을 캡처해 애플리케이션 상태 인식 - **Screenshot storage**: 감사 및 디버깅을 위한 세션 스크린샷 저장 - 화면 해상도와 이미지 형식도 지정할 수 있다. - 예시 설정: 1280×720 해상도, PNG 형식 - 복잡하고 조밀한 UI는 더 높은 해상도가 유리할 수 있다. - 터미널 중심 인터페이스는 720p 수준으로도 충분할 수 있다. ## API 없이 기존 업무 애플리케이션 자동화 - Strands Agent SDK와 Amazon Bedrock으로 구현한 에이전트가 샘플 약국 시스템에서 처방전 리필 업무를 수행했다. - 에이전트는 환자 기록 조회, 약품 검색, 주문, 처방전 갱신 확인을 모두 화면 조작으로 처리했다. - 해당 애플리케이션은 에이전트가 사용 중이라는 사실을 인식하지 못한다. - 애플리케이션 수정, 재빌드, API 통합 없이 현재 상태 그대로 사용할 수 있다는 점이 핵심이다. ## 제공 범위와 도입 방법 - 현재 퍼블릭 프리뷰로 제공되며 추가 비용은 없다. - 지원 리전에는 미국 동부·서부, 캐나다, 유럽 주요 리전, 도쿄·뭄바이·시드니·서울·싱가포르 등이 포함된다. - AWS Management Console에서 WorkSpaces Applications 스택을 생성하고 AI 에이전트 접근을 활성화한 뒤, MCP 엔드포인트와 IAM 인증 정보를 에이전트 프레임워크에 설정한다. - AWS GitHub 저장소와 WorkSpaces 공식 페이지를 통해 구현을 시작할 수 있다. 기존 데스크톱 애플리케이션을 빠르게 자동화하려는 기업에는 유용한 접근 방식이다. 다만 퍼블릭 프리뷰 단계이므로 실제 도입 전 권한 범위, 화면 캡처의 민감정보 처리, 감사 로그 보존 정책을 충분히 검토하는 것이 좋다.