Best LLMs for Function Calling & AI Agents
Agent workloads have a binary prerequisite before quality even matters: the model must emit well-formed tool calls. This page therefore filters to models whose function-calling support is affirmatively verified, from first-party API capability flags or documented evidence, and excludes models whose support is merely unknown. A model that probably supports tools is not a safe foundation for an agent loop.
Within the verified set, ordering follows general quality evidence, since agentic performance tracks reasoning ability once tool-call syntax is reliable. The table also shows Tau2-Bench, a published agentic evaluation that measures multi-step tool use against real APIs, where a result exists for the model. Every model listed as served on Inferbase supports the standard OpenAI tools and tool_choice parameters through one endpoint.
The top pick
The strongest measured fit for this task right now, taken from the live ranking below.
- Intelligence Index
- 57.6
- Context
- 1M
The ranking
Ordered from live catalog data; the note beneath the table states exactly how. Missing values are shown as missing, never estimated.
| # | Model | Quality index | Intelligence Index | Tau2-Bench | Context |
|---|---|---|---|---|---|
| 1 | anthropic | 100 | 57.6 | No data | 1M |
| 2 | anthropic | 99.5 | 56.0 | No data | 1M |
| 3 | anthropic | 99 | 53.4 | No data | 1M |
| 4 | openai | 98.6 | 52.7 | No data | 1.1M |
| 5 | google | 98.1 | 52.6 | No data | 1M |
| 6 | openai | 97.6 | 51.8 | No data | 1.1M |
| 7 | anthropic | 97.1 | 50.8 | No data | 1M |
| 8 | anthropic | 96.7 | 49.6 | 98.5% | 1M |
| 9 | openai | 96.2 | 47.6 | No data | 1.1M |
| 10 | openai | 95.7 | 47.0 | 85.1% | 1.1M |
This list includes only models whose support for this capability is affirmatively verified, from first-party API capability flags or documented evidence; models whose support is unknown are excluded rather than assumed. Within that set, ordering follows the general quality index, a 0-100 percentile among the 189 qualifying models with measured benchmark evidence.
marks models served through the Inferbase API. Missing values are shown as No data rather than estimated.
Also worth evaluating
The next ranks after the top ten, for teams that want a wider shortlist.
Or stop choosing manually
The honest answer changes as benchmarks and prices move. Routing makes the choice per request instead of once.
Send model="auto" to one OpenAI-compatible endpoint and each request is served by the best fit from the same quality and price data behind this ranking, with the decision disclosed per request.
Every routed request records the task it was classified as, the models that qualified, the one that won and why, so a pick made here can be checked against what the router chose in production. A model pinned by name is served as named, with no routing decision.
from openai import OpenAI
client = OpenAI(
base_url="https://api.inferbase.ai/v1",
api_key="YOUR_INFERBASE_KEY",
)
# Let routing pick the best model per request,
# or pin any model id from GET /models.
response = client.chat.completions.create(
model="auto",
messages=[{"role": "user", "content": "..."}],
)Frequently asked questions
How this ranking works and how to act on it.
The model’s capability record affirms function calling from a first-party source, such as the serving API’s own capability flags, or documented evidence. Models with unknown support are excluded entirely rather than listed with a caveat, because agent frameworks fail unpredictably on malformed tool calls.
Among models with reliable tool-call syntax, agentic task completion correlates strongly with general reasoning quality, and general quality has broader benchmark coverage. The table shows Tau2-Bench agentic scores where published so the two can be compared directly; folding agentic evidence into the ranking itself is planned once it is validated against routing outcomes.
Yes. The inference API accepts the standard tools, tool_choice, and tool-role messages, and streams tool-call deltas. Pin a specific model by id, or use a custom model pool and the router will serve your preferred order among its tool-capable members.
Inferbase filters tool-carrying requests to the tool-capable subset of your pool and discloses which model served each request in the response metadata. A pool with no verified tool-capable model returns an actionable error rather than a silently broken call.
Often, yes, for the high-volume steps. Many agent architectures use a strong model for planning and a cheaper verified-tool model for routine tool dispatch. The price column here makes that split straightforward to reason about.
The ability of a model to return a structured call to a function you described, name and arguments, instead of prose, so your code can run the function and hand the result back. It is the mechanism behind tool use and agents: the model decides which tool to call and with what, your application executes it, and the loop continues until the model answers.
The open-weight entries in this table: each is here because its function-calling support is affirmatively verified, from a provider’s capability flag or documented evidence, not inferred from the model family. Open a model page for its license and for the capability’s source, or filter the catalog by Open Source and read the Function calling row on each entry.
With the standard OpenAI parameters: pass tools and tool_choice on a chat completion to one endpoint, and the response carries tool_calls the same way the OpenAI SDK expects. This works with a pinned model from this list or with routing, where the request’s need for tools is a hard constraint and only verified models qualify.
Related rankings
The same evidence-first method, applied to other tasks.
Put intelligence in the middle.
One gateway in front of every model, with your policies applied and every decision on record. Start on the free plan with 5,000 requests a month, no card required.