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 ライセンスのモデルを提供します。