ShishirPatil/gorilla
Gorilla: Training and Evaluating LLMs for Function Calls (Tool Calls)
What it solves
Gorilla는 API 호출을 시도할 때 대형 언어 모델(LLM)이 환각을 일으키는 문제를 해결합니다. 생성된 호출이 의미론적·구문적으로 올바른지 확인함으로써 LLM이 수천 개의 API를 정확하게 호출하도록 하여 도구 사용 오류를 줄입니다.
How it works
Gorilla는 특화된 파인튜닝과 검색 강화 학습을 결합해 LLM을 방대한 API 컬렉션과 연결합니다. 프로젝트는 다음과 같은 도구 모음을 제공합니다.
- OpenFunctions: 함수 호출을 대체할 수 있는 즉시 사용 가능한 솔루션으로, 여러 언어(Python, Java, JavaScript)와 REST API를 지원합니다.
- GoEx (Execution Engine): 안전성을 보장하는 샌드박스 런타임으로, LLM이 생성한 행동을 실행하며 "사후 검증" 및 실행 취소 기능을 제공해 위험을 완화합니다.
- API Zoo: 커뮤니티가 유지 관리하는 구조화된 API 문서 저장소로, 모델을 최신 상태로 유지하고 환각을 감소시킵니다.
- RAFT: 도메인 특화 Retrieval‑Augmented Generation(RAG)을 위한 파인튜닝 레시피로, 모델이 문서를 직접 인용하도록 학습시킵니다.
Who it’s for
AI 에이전트를 구축하는 개발자, LLM을 외부 서비스와 통합하는 소프트웨어 엔지니어, 함수 호출 및 도구 사용 벤치마크에 집중하는 연구자를 위한 것입니다.
Highlights
- Massive API Support: 1,600개 이상의 API를 정확하게 호출할 수 있습니다.
- Berkeley Function Calling Leaderboard (BFCL): 단일 턴, 다중 턴, 다단계 함수 호출을 평가하는 포괄적인 벤치마크입니다.
- Agent Arena: ELO 레이팅 시스템을 사용하는 LLM 에이전트 간 대전 플랫폼입니다.
- Safe Execution: GoEx를 통해 Docker 기반 샌드박스 환경에서 API 호출 및 파일 시스템 작업을 안전하게 실행합니다.
- Commercial Readiness: 상업적 사용이 가능한 Apache 2.0 라이선스 모델을 제공합니다.