Skip to content

sst/models.dev

Repository files navigation

Models.dev logo


Models.dev is a comprehensive open-source database of AI model specifications, pricing, and capabilities.

There's no single database with information about all the available AI models. We started Models.dev as a community-contributed project to address this. We also use it internally in opencode.

API

You can access this data through an API.

curl https://models.dev/api.json

Use the Model ID field to do a lookup on any model; it's the identifier used by AI SDK.

Contributing

The data is stored in the repo as TOML files; organized by provider and model. This is used to generate this page and power the API.

We need your help keeping the data up to date.

Adding a New Model

To add a new model, start by checking if the provider already exists in the providers/ directory. If not, then:

1. Create a Provider

If the AI provider doesn't already exist in the providers/ directory:

  1. Create a new folder in providers/ with the provider's ID. For example, providers/newprovider/.

  2. Add a provider.toml file with the provider information:

    name = "Provider Name"

2. Add a Model Definition

Create a new TOML file in the provider's models/ directory where the filename is the model ID:

name = "Model Display Name"
attachment = true           # or false - supports file attachments
reasoning = false           # or true - supports reasoning / chain-of-thought
tool_call = true            # or false - supports tool calling
temperature = true          # or false - supports temperature control
knowledge = "2024-04"       # Knowledge-cutoff date
release_date = "2025-02-19" # First public release date
last_updated = "2025-02-19" # Most recent update date

[cost]
input = 3.00                # Cost per million input tokens (USD)
output = 15.00              # Cost per million output tokens (USD)
cache_read = 0.30           # Cost per million cached read tokens (USD)
cache_write = 3.75          # Cost per million cached write tokens (USD)

[limit]
context = 200_000           # Maximum context window (tokens)
output = 8_192              # Maximum output tokens

[modalities]
input = ["text", "image"]   # Supported input modalities
output = ["text"]           # Supported output modalities

3. Submit a Pull Request

  1. Fork this repo
  2. Create a new branch with your changes
  3. Add your provider and/or model files
  4. Open a PR with a clear description

Validation

There's a GitHub Action that will automatically validate your submission against our schema to ensure:

  • All required fields are present
  • Data types are correct
  • Values are within acceptable ranges
  • TOML syntax is valid

Schema Reference

Models must conform to the following schema, as defined in app/schemas.ts.

Provider Schema:

  • name: String - Display name of the provider

Model Schema:

  • name: String — Display name of the model
  • attachment: Boolean — Supports file attachments
  • reasoning: Boolean — Supports reasoning / chain-of-thought
  • tool_call: Boolean - Supports tool calling
  • temperature: Boolean — Supports temperature control
  • knowledge (optional): String — Knowledge-cutoff date in YYYY-MM or YYYY-MM-DD format
  • release_date: String — First public release date in YYYY-MM or YYYY-MM-DD
  • last_updated: String — Most recent update date in YYYY-MM or YYYY-MM-DD
  • cost.input (optional): Number — Cost per million input tokens (USD)
  • cost.output (optional): Number — Cost per million output tokens (USD)
  • cost.cache_read (optional): Number — Cost per million cached read tokens (USD)
  • cost.cache_write (optional): Number — Cost per million cached write tokens (USD)
  • limit.context: Number — Maximum context window (tokens)
  • limit.output: Number — Maximum output tokens
  • modalities.input: Array of strings — Supported input modalities (e.g., ["text", "image", "audio", "video", "pdf"])
  • modalities.putput: Array of strings — Supported output modalities (e.g., ["text"])

Examples

See existing providers in the providers/ directory for reference:

  • providers/anthropic/ - Anthropic Claude models
  • providers/openai/ - OpenAI GPT models
  • providers/google/ - Google Gemini models

Working on frontend

Make sure you have Bun installed.

$ bun install
$ cd packages/web
$ bun run dev

And it'll open the frontend at http://localhost:3000

Questions?

Open an issue if you need help or have questions about contributing.


Models.dev is created by the maintainers of SST.

Join our community Discord | YouTube | X.com

About

An open-source database of AI models.

Resources

Stars

Watchers

Forks

Contributors 12