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 사양에 따라 디렉터리 또는 임베디드 파일 시스템에서 에이전트 스킬 로드 가능.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트