go-kratos/blades

Blades is a Go-based multimodal AI Agent framework.

해결하는 문제

Blades는 Go 개발자가 멀티모달 AI 에이전트를 구축할 수 있도록 구조화된 프레임워크를 제공합니다. 일반적으로 백엔드 서비스에 사용되는 언어인 Go에서 다양한 대규모 언어 모델(LLM) 통합, 대화 메모리 관리, 다단계 추론 워크플로우 오케스트레이션의 복잡성을 해결합니다.

작동 방식

이 프레임워크는 통일된 인터페이스 기반의 분리된 플러그인 아키텍처를 사용합니다. 여러 핵심 컴포넌트를 조율합니다:

  • Agent: 모델과 도구를 결합하여 작업을 수행하는 주요 단위.
  • ModelProvider: OpenAI, DeepSeek, Gemini 등 다양한 LLM 간 전환을 가능하게 하는 어댑터 계층. 핵심 로직을 변경하지 않고도 가능합니다.
  • Tool: 에이전트가 실제 세계와 상호작용하기 위해 호출할 수 있는 외부 함수(API, 데이터베이스 등).
  • Memory: 대화 기록을 저장하고 검색하여 턴 간의 맥락을 유지하는 시스템.
  • Chain/Flow: 여러 에이전트나 단계를 연결하여 복잡한 데이터 및 제어 흐름을 생성하는 메커니즘.
  • Middleware: 로깅, 모니터링, 가드레일과 같은 횡단 관심사 처리를 위한 '온리온 모델' 체인.

대상 사용자

생산 환경용 AI 에이전트, 대화형 애플리케이션, 또는 복잡한 AI 워크플로우를 자연스러운 Go 코드베이스로 구축하고자 하는 Go 개발자.

주요 특징

  • Go 스타일: 단순성과 확장성을 중시하며 Go 개발자에게 친숙한 설계.
  • 플러그인 가능한 모델: ModelProvider 인터페이스를 통해 쉽게 LLM 제공자 교체 가능.
  • 멀티모달 지원: 멀티모달 AI 에이전트 프레임워크로 설계됨.
  • 스킬 인젝션: Agent Skill 사양에 따라 디렉터리 또는 임베디드 파일 시스템에서 에이전트 스킬 로드 가능.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트