Skip to main content

📊 OpenRouter Insights

PyPI version Python versions License: MIT Tests

OpenRouter Insights is a professional, unified LLM registry that supercharges the official OpenRouter catalog with high-fidelity intelligence and benchmarks.

It provides a "Single Source of Truth" for model capabilities, pricing, and performance, designed for production-grade AI agents and high-performance applications.


📖 Table of Contents


🔥 OpenRouter with "Superpowers"

Why use this instead of the raw OpenRouter API?

Feature Raw OpenRouter API OpenRouter Insights
Model Catalog ✅ Yes ✅ Yes (Auto-synced)
Pricing ✅ Yes ✅ Yes (Normalized)
Intelligence Scores ❌ No ✅ Yes (ArtificialAnalysis)
Performance Tiers ❌ No ✅ Yes (Frontier/Pro/Lite)
Smart Discovery ❌ No ✅ Yes (get_smartest, get_cheapest)
Virtual Filtering ❌ No ✅ Yes (Excludes auto-routers by default)
Substitution Engine ❌ No ✅ Yes (get_best_alternative)
Fuzzy Search ❌ Limited ✅ Yes (RapidFuzz integrated)
Sync/Async Facades ❌ No ✅ Yes (Plug & Play)

🛠️ Installation

# Basic installation (Library only)
pip install openrouter-insights

# With API support (FastAPI + Uvicorn)
pip install "openrouter-insights[api]"

💡 Quick Start

⚡ Async Facade (For FastAPI / High Performance)

import asyncio
from openrouter_insights import LLMIndex

async def main():
    # Uses local JSON registry (no DB setup required)
    client = LLMIndex(mode="json")
    
    # Smart Discovery: Get the smartest model for coding
    models = await client.get_best_for_coding(limit=1)
    if models:
        print(f"Best: {models[0].name} (Score: {models[0].intelligence_score})")
        
    # NEW: Find the best substitute for GPT-4 within budget
    alt = await client.get_best_alternative("openai/gpt-4o", max_price=10.0)
    if alt:
        print(f"Fallback to: {alt.id}")

asyncio.run(main())

🕒 Sync Facade (For Scripts / Notebooks)

from openrouter_insights import LLMIndexSync

client = LLMIndexSync(mode="json")

# Get the absolute cheapest frontier model
cheap_pro = client.get_cheapest(tier="frontier", limit=3)
for m in cheap_pro:
    print(f"{m.name}: ${m.pricing.input}/1M tokens")

🧠 Data Intelligence (Providers)

OpenRouter Insights aggregates data from world-class sources to provide high-fidelity metrics:

  • ArtificialAnalysis.ai: Our primary source for model performance. We integrate their independent benchmarks for Intelligence, Quality (V2 ELO), and Speed (TPS) to power our ranking logic.
  • OpenRouter.ai: Our core model catalog. We sync directly with their API to provide real-time pricing and availability for hundreds of models.

🕒 Data Freshness & Automation (Git-Ops)

OpenRouter Insights is not a static file. We run an automated 24-hour synchronization job via GitHub Actions (CRON) that:

  1. Fetches the latest models and pricing from OpenRouter.
  2. Unifies benchmark data from ArtificialAnalysis.
  3. Processes the results via our Matching Engine.
  4. Commits the fresh openrouter_insights.sqlite and .json back to the repository.

This ensures you always have access to the latest frontier models as they are released.


✨ Smart Query Methods

OpenRouter Insights comes with pre-built logic to discover models based on real-world capabilities:

  • .get_smartest(): Highest intelligence scores first.
  • .get_cheapest(): Lowest cost-to-output first (excludes virtual routers).
  • .get_best_for_coding(): Top-tier coding performers.
  • .get_top_frontier(): Only the best models in the world.
  • .get_by_tier("pro"): Native DB-level filtering by performance tiers.
  • .get_fastest(): Highest Tokens Per Second (TPS).

🔄 Model Substitution

One of the most powerful features is the Substitution Engine. It allows you to find valid fallbacks when a model is unavailable or exceeds your budget, ensuring your agents stay operational:

# Seek the highest performing alternative in the same tier
fallback = client.get_best_alternative(
    model_id="anthropic/claude-3.5-sonnet", 
    max_price=15.0  # Optional cost ceiling
)

We take production stability seriously. Every release is validated against a comprehensive test suite (Unit, Integration, Persistence, and Facade tests).

Current Status: 61 tests passed (95% global coverage).


🔮 Future Roadmap

We are committed to making this the most comprehensive LLM index in the industry. Future data sources planned for integration include:

  • Hugging Face: Open LLM Leaderboard scores.
  • Vercel AI: Comprehensive provider metrics.
  • LMSYS Chatbot Arena: Live ELO ratings.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.


📄 License

Distributed under the MIT License. See LICENSE for more information.


Luis Eduardo Farfan Melgar - lucho.farfan9@gmail.com
Project Link: https://github.com/luisfarfan/openrouter-insights

Release files for openrouter-insights 0.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for openrouter-insights 0.6.0
File Size Uploaded
openrouter_insights-0.6.0.tar.gz 19.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for openrouter-insights 0.6.0
File Interpreter ABI Platform
openrouter_insights-0.6.0-py3-none-any.whl Python 3 none any Details

Total release size: 44.1 kB

Release files / openrouter_insights-0.6.0.tar.gz

Download URL openrouter_insights-0.6.0.tar.gz
Size 19.4 kB
Tags Source
SHA-256 checksum
How to use checksums
0b21d7027b49b9bb6d7193a8abcdb762600e49cccaefe26ea3fb5bd0ab9812b4
BLAKE2b-256 checksum
How to use checksums
c89f7c997ade818c2177b0bf77f761486c590d6a8136404d80e4f593ed763549
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.3 CPython/3.12.3 Linux/6.17.0-1008-azure

Release files / openrouter_insights-0.6.0-py3-none-any.whl

Download URL openrouter_insights-0.6.0-py3-none-any.whl
Size 24.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
baf3bb0aae5fb1db9b64df39b20a18d03fbfcc9de7ec58e74dce3e8928d213ea
BLAKE2b-256 checksum
How to use checksums
86baf189a047c0cfc6dd45344706c9849df90110e282b80e103c3e57e6d47ff7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.3 CPython/3.12.3 Linux/6.17.0-1008-azure

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page