Gorilla enables LLMs to use tools by invoking APIs, with open-source components for inference, evaluation, and API datasets. It focuses on function calling, multi-turn evaluation, and leaderboards, with Apache-2.0 licensed models available.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
Gorilla enables LLMs to use tools by invoking APIs. The repository includes inference code for running Gorilla finetuned models, evaluation code for reproducing results from the associated paper, and API benchmarks/datasets (APIBench).
How it works
Gorilla provides infrastructures and datasets to evaluate and benchmark function-calling capabilities, including multi-turn and multi-step function calls. It includes components such as a runtime for executing LLM-generated actions (GoEx) and multiple datasets and leaderboards for benchmarking tool usage.
Getting started
Quick Start
Try Gorilla in your browser:
- Gorilla Colab Demo: https://colab.research.google.com/drive/1y78Zj7xHysX0xMpr9S468HYs12Mj6X1F?usp=sharing
- Gorilla Gradio Demo: https://huggingface.co/spaces/gorilla-llm/gorilla-demo/
- OpenFunctions Colab Demo: https://colab.research.google.com/drive/1Td3_R5vPael9PnKYHcl-PxmZkZzA9TCo?usp=sharing
- OpenFunctions Website Demo: https://gorilla.cs.berkeley.edu/leaderboard.html#api-explorer
- Berkeley Function Calling Leaderboard: https://gorilla.cs.berkeley.edu/leaderboard
Installation Options
- Gorilla CLI
pip install gorilla-cli
gorilla generate 100 random characters into a file called test.txt
- Run Gorilla Locally
git clone https://github.com/ShishirPatil/gorilla.git
cd gorilla/inference
- Use OpenFunctions
import openai
openai.api_key = "EMPTY"
openai.api_base = "http://luigi.millennium.berkeley.edu:8000/v1"
# Define your functions
functions = [{
"name": "get_current_weather",
"description": "Get weather in a location",
"parameters": {
"type": "object",
"properties": {
"location": {"type": "string"},
"unit": {"type": "string", "enum": ["celsius", "fahrenheit"]}
},
"required": ["location"]
}
}]
# Make API call
completion = openai.ChatCompletion.create(
model="gorilla-openfunctions-v2",
messages=[{"role": "user", "content": "What's the weather in San Francisco?"}],
functions=functions
)
Other quick starts
- Evaluation & Benchmarking: BFCL, Agent Arena, Gorilla Paper Evaluation Scripts
- Development Tools: GoEx, RAFT, API Store
Recent releases
Latest releases include v1.3 (Berkeley Function Calling Leaderboard Updates) with multi-step and multi-turn evaluation, followed by v1.2, v1.1, and earlier v1.0 releases detailing BFCL data and evaluation pipelines.
Traction
- The repository has 12986 stars and 1398 forks as of the provided data.
License
- Gorilla is Apache-2.0 licensed.






