Skip to main content

A unified source of truth for LLM providers, models, pricing, and capabilities.

Project description

LLM Providers

A unified source of truth for LLM providers, models, pricing, and capabilities.

Accessible via Rust and Python.

Build Status Crates.io PyPI License

Installation   •   Usage   •   Supported Providers   •   Contributing

Philosophy

Managing LLM provider configurations across multiple projects and languages is a pain. LLM Providers solves this by maintaining a single, curated JSON source of truth for:

  • Model IDs & Names
  • Context Windows & Max Output Tokens
  • Pricing (Input/Output)
  • Capabilities (Tool Support, Vision, etc.)

This data is embedded at compile-time into a Rust crate for zero-latency access and exposed to Python via high-performance bindings.

Features

  • 🚀 Zero-Latency: Data is compiled into the binary; no runtime I/O or API calls.
  • 🦀 Rust Native: Type-safe structs (Provider, Model) for robust development.
  • 🐍 Python Ready: Seamless integration via pip install llm-providers-list.
  • 🔄 Unified Schema: Consistent data structure across all providers (OpenAI, Anthropic, DeepSeek, etc.).
  • 📦 Rich Metadata: Includes pricing, context length, and tool support flags.

Installation

Rust

Add this to your Cargo.toml:

[dependencies]
llm_providers = { git = "https://github.com/lipish/llm-providers.git" }

Python

Install via pip (once published) or build from source:

# From PyPI (Coming Soon)
pip install llm-providers-list

# Build from source (requires maturin)
pip install maturin
maturin develop -m py/Cargo.toml

Usage

Rust

use llm_providers::get_providers_data;

fn main() {
    let providers = get_providers_data();

    if let Some(openai) = providers.get("openai") {
        println!("Provider: {}", openai.label);
        println!("Base URL: {}", openai.base_url);

        for model in &openai.models {
            println!("- {} (Context: {:?})", model.name, model.context_length);
        }
    }
}

Python

import llm_providers_list
import json

# List all supported providers
print(llm_providers_list.list_providers())
# Output: ['aliyun', 'anthropic', 'deepseek', 'openai', ...]

# Get provider object (Rich Type)
openai = llm_providers_list.get_provider("openai")
print(f"Label: {openai.label}")
print(f"Base URL: {openai.base_url}")

for model in openai.models:
    print(f"Model: {model.name}, Price: ${model.input_price}/1M tokens")

# Get raw JSON info
info = llm_providers_list.get_provider_info("anthropic")
print(info)

Supported Providers

  • OpenAI (GPT-4o, GPT-3.5, o1)
  • Anthropic (Claude 3.5 Sonnet, Haiku, Opus)
  • DeepSeek (Chat, Reasoner)
  • Aliyun (Qwen Max, Plus, Turbo)
  • Tencent (Hunyuan)
  • Moonshot (Kimi)
    • Moonshot AI (CN)
    • Moonshot AI Global
  • MiniMax
    • MiniMax (CN)
    • MiniMax Global
  • Zhipu (GLM-4)
    • BigModel (Zhipu CN)
    • Z.ai (Zhipu Global)
  • Volcengine (Doubao)
  • LongCat

Contributing

Contributions are welcome! To add a new provider or update existing models:

  1. Edit providers.json in the root directory.
  2. Run tests to ensure validity:
    cargo test
    
  3. Submit a Pull Request.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llm_providers_list-0.1.1.tar.gz (24.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

llm_providers_list-0.1.1-cp311-cp311-macosx_11_0_arm64.whl (263.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file llm_providers_list-0.1.1.tar.gz.

File metadata

  • Download URL: llm_providers_list-0.1.1.tar.gz
  • Upload date:
  • Size: 24.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.3

File hashes

Hashes for llm_providers_list-0.1.1.tar.gz
Algorithm Hash digest
SHA256 3b0b4bcb7051fd200f04db755cf474912bbfa7126f703e19c1797a8e0b3edf02
MD5 60dd80e45e8bb4a7decc139e5feadf7b
BLAKE2b-256 91b23259295ef9b9aa9bc1429a733ea14bcf536d86159597f562c9d151ee4da5

See more details on using hashes here.

File details

Details for the file llm_providers_list-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for llm_providers_list-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f242727aa23d70d34665959b3c3797aefcaa9776806b867db4ca19ada899b5f5
MD5 5122ae257a3bbc484031c0c9463c199f
BLAKE2b-256 dd955d2dbfd011bb1c693e055479ca5cfde8c8ff46c0edd7b300c19e2dc81ef1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page