
영상 링크: Introducing Strands Agents, an Open Source AI Agents SDK — Suman Debnath, AWS
채널명: AI Engineer
Strands Agents, 오픈소스 AI 에이전트 SDK 소개 핵심 요약
- Strands는 에이전트 구축을 극도로 단순화하기 위한 오픈소스 SDK로, 에이전트 개발 시 ‘모델’과 ‘툴’만 필요하며 별도의 복잡한 스캐폴딩(scaffolding)이 불필요함을 강조함
- Strands는 다양한 서드파티 제공자(Langfuse, LightLM 등)와의 통합을 지원하며, Bedrock 모델과 로컬 테스트를 위한 Lama 등 다양한 모델을 사용할 수 있음
- 에이전트의 추론(reasoning) 역할을 점점 더 똑똑해지는 모델에 맡기고, 프롬프트, 시스템 프롬프트 등 복잡한 백그라운드 설정을 최소화함
- 첫 번째 데모에서는 Strands의 기본 툴만으로 파일 읽기, 요약 생성, 결과 음성 출력까지 수행하며, 별도 커스텀 툴 없이 쉽게 구현함을 보여줌
- 설치와 사용이 pip install로 매우 간단하며, 기본 툴 외에 커스텀 툴 개발/확장도 간편하게 가능함을 실제 코드 예시로 설명함
- Strands는 기본적으로 Bedrock(Claude 3.7) 모델을 사용하며, 필요 시 사용자 지정 모델도 별도 지정 가능함을 명확히 안내함
- 두 번째 데모에서는 MCP 서버와 연동해 Manim 라이브러리로 수학 애니메이션 영상 자동 생성 과정을 설명하고, MCP 서버의 툴 등록 및 연동 방법을 상세히 안내함
- 서버 기동, 클라이언트 생성, 프롬프트 입력, 영상 생성 결과까지 구체적 예시로 시연하며, 별도 system prompt 없이도 모델이 스스로 추론하게 하는 방식을 강조함
- 커스텀 툴 제작 및 사용법도 실제 데코레이터 예시와 함께 추가 설명하여, Strands 활용법의 확장성을 구체적으로 전달함
- 마지막으로 공식 문서 및 GitHub 등 다양한 참고 자료와 커뮤니티 참여 방법을 적극 안내하며, 오픈소스 프로젝트로서 개발자 기여까지 독려함
세부 요약 - 주제별 정리
Strands는 에이전트 개발을 모델과 툴만으로 극도로 간단하게 만듦을 주장함
- Strands는 오픈소스 SDK로, 에이전트 개발 시 ‘모델(model)‘과 ‘툴(tool)‘만 있으면 충분함을 내세움
- 기존 프레임워크와 달리 system prompt, 복수의 프롬프트, 백그라운드 코드 등 복잡한 스캐폴딩(setup 과정)이 전혀 필요 없음을 반복적으로 언급함
- 이유는 최근 AI 모델이 스스로 추론을 잘하기 때문에, 개발자가 에이전트의 세부 동작을 일일이 정의할 필요가 없다는 점임
- Strands 로고의 2가닥 실은 모델과 툴이라는 2가지 핵심 요소를 시각화함
Strands는 다양한 AI 모델과 외부 서비스와의 폭넓은 호환성을 지원함
- 기본적으로 AWS Bedrock(Claude 3.7)이 적용되어 있으나, 사용자가 지정한 어떤 AI 모델도 적용 가능함
- Langfuse, LightLM 등 다양한 API 또는 로컬 테스트용 Lama 모델까지 직접 연동 가능함
- Bedrock에 종속되지 않고 국민 누구나 자기 환경에 맞는 모델을 선택할 수 있고, 오픈소스 인프라와도 자연스럽게 통합 가능함
첫 번째 데모: 파일 요약 및 자동 음성 출력까지 ‘기본 툴’만으로 구현하는 사례 설명
- 첫 데모의 목표는, “파일을 읽고”, “내용을 요약하고”, “요약 결과를 마크다운 파일로 저장”, “결과를 에이전트가 음성으로 읽어주는 것”
- 모두 Strands 기본 툴(파일 읽기, 파일 쓰기, 음성 합성)만으로 해결하며, 사용자는 별도 커스텀 코드 작성이나 복잡한 설정이 필요 없음
- 실제 사용 절차:
- pip install로 SDK(strands-agent)와 strands-tools 설치만 하면 바로 사용 가능
- import strands, 모델 지정(옵션), 시스템 프롬프트(필요시), 그리고 사용할 툴들만 리스트에 추가
- 실제 파일을 읽고, 요약하여 로컬에 마크다운 파일로 저장 후, 음성으로 결과 출력까지 과정을 라이브 데모로 시연
- 예시 프롬프트: “chapter 10을 읽고 요약한 내용 마크다운 파일로 저장, 그리고 결과를 음성으로 들려줘”
Strands에서는 시스템 프롬프트가 꼭 필요하지 않으며 모델이 스스로 추론함을 시연함
- 코드 내 system prompt는 옵션 개념임을 강조
- 실제로 GitHub 예제 실행 시 system prompt를 삭제해도 제대로 동작함
- Strands의 목표는 프롬프트, 시스템 프롬프트에 대한 과도한 의존 없이 “모델이 스스로 추론, 작업을 결정하는 것”임
설치 및 코드 사용법이 매우 간단하며 커스텀 툴 추가도 최소화된 코드로 가능함
- strands-agent와 strands-tools를 pip로 설치
- 코드상 import, 모델(필요시) 지정, 사용할 툴(리스트로)만 세팅 후 바로 에이전트 생성 가능
- 기본 제공 툴 외에 자체 개발한 커스텀 툴 추가도 매우 간단함(코드 하단 예시 참고)
- 툴은 decorator(
@tools
)로 간단히 기존 함수에 적용해 자동 등록 가능
두 번째 데모: MCP 서버와 Strands 연동으로 Manim 기반 수학 애니메이션 영상 생성 자동화 구조를 설명함
- 수학·과학 개념을 시각화하는 영상으로 유명한 ‘Three Blue One Brown’ 채널을 언급하며, 이들의 애니메이션 생성에 사용되는 Manim 라이브러리 활용을 소개
- MCP 서버는 해당 Manim 렌더링 실행 코드를 관리하며, Strands 에이전트가 클라이언트로 활용해 코드 실행을 요청
- 예시: “x = -3 ~ 3 범위에서 이차방정식 시각화 영상 생성” 등의 프롬프트만 주면, MCP 서버가 Manim 코드 실행·영상 생성까지 자동 진행
- 에이전트 입장에서는 “툴”로 MCP 클라이언트만 추가하고, 프롬프트만 입력하면 영상이 생성됨
- MCP와의 연동도 도입이 쉽고, 별도의 system prompt 등 복잡한 추가 코드가 전혀 필요 없음
MCP 서버 내 툴 등록 및 코드 연동 원리가 데코레이터 기반으로 간단함을 코드 예제로 전달함
- fast-mcp를 이용하여 MCP 서버 구축 및 툴 메서드 정의
- 각 MCP 툴(예: 영상 생성 함수)은 데코레이터만 붙여 등록 가능
- Strands 에이전트가 MCP 클라이언트 생성 후 MCP 서버와 연결해서 툴 리스트 종료/사용이 가능하게 이루어짐
- 프롬프트 입력 후 while loop으로 상호작용성 있는 chat 인터페이스까지 제공함
커스텀 툴 제작 및 Strands 에이전트에서의 활용 확장성을 구체적인 코드로 입증함
- 커스텀 함수(예: 데이터 검색 함수)를
@tools
로 데코레이팅 하여 ‘툴’로 변환 가능 - 에이전트의 툴 리스트에 커스텀/기본 툴의 조합도 자유롭게 가능
- 기본 툴(read file, write file, speak)과 커스텀 툴(예: API client 등)도 동시에 활용 가능함
공식 문서, GitHub repo 등 오픈소스 리소스와 커뮤니티 참여 방법을 상세하게 안내함
- 공식 런치 블로그, 문서(strandsagent.com), GitHub 링크 모두 직접 안내
- 샘플 코드 저장소, PR 기여, 여러분의 빌드 및 피드백 공유, 오프라인 부스 체험 등 커뮤니티 활성화 적극 독려
- 다양한 데모 및 샘플 코드, Lambda, MCP 연동 사례 등 지속적 제공중임을 강조
Strands 프로젝트는 오픈소스 중심으로 누구나 쉽게 AI 에이전트 개발·확장에 참여 가능함을 강조하며 마무리함
- 영상 마지막에는 “누구나 자유롭게 기능 추가 및 샘플 기여” 독려
- 개발자 중심 생태계, 확장성, 실시간 지원 체계 등을 주요 장점으로 언급
- 전체 시연, 예시, 문서, 커뮤니티 안내까지 실무 활용 관점에서 구체적으로 소개함