Skip to content

← Foundations

The fragmentation problem

Without a router you juggle N SDKs, N keys, N bills and N limits. A router collapses it all into one integration.

6 slides 4 min read
  1. OpenRouter · Fonaments

    The fragmentation problem

    Why wiring up each provider on its own gets expensive.

    OpenRouter · Foundations arlaf.dev
  2. The hidden cost of going direct

    Every provider you add multiplies the integration work:

    • N SDKs and N different request shapes.
    • N API keys to manage and rotate.
    • N accounts and N separate bills.
    • N rate-limit regimes that don't talk to each other.
    OpenRouter · Foundations arlaf.dev
  3. Three providers, three integrations

    # Sense router: un client i una key per proveïdor
    from openai import OpenAI
    from anthropic import Anthropic
    
    openai_client = OpenAI(api_key="OPENAI_KEY")
    anthropic_client = Anthropic(api_key="ANTHROPIC_KEY")
    # …i un tercer SDK per al proveïdor de Llama, amb la seva key
    
    # Cada SDK té el seu format de petició i la seva factura
    
    OpenRouter · Foundations arlaf.dev
  4. With a router: one integration

    # Amb router: un sol client, una key, una factura
    from openai import OpenAI
    
    client = OpenAI(
        base_url="https://openrouter.ai/api/v1",
        api_key="OPENROUTER_API_KEY",
    )
    
    # Canviar de model = canviar l'slug (exemples)
    for model in ["openai/gpt-4o", "anthropic/claude-3.5-sonnet"]:
        client.chat.completions.create(
            model=model,
            messages=[{"role": "user", "content": "Hola!"}],
        )
    
    OpenRouter · Foundations arlaf.dev
  5. One place to switch models

    The router collapses N integrations into one. One key, one bill, one format — and trying a new model is changing a string, not opening an account.

    OpenRouter · Foundations arlaf.dev
  6. Fragmentation isn't a code problem, it's a maintenance problem that grows with each provider.
    OpenRouter · Foundations arlaf.dev
Read the full note

Quan vols fer servir més d’un model d’IA, la primera idea és integrar cada proveïdor pel seu compte. Funciona amb dos, però es fa pesat de seguida. El nom del problema és fragmentació: cada proveïdor que afegeixes arrossega la seva pròpia pila de coses a mantenir.

El que multipliques sense adonar-te’n

Anar directe a cada proveïdor vol dir conviure amb:

  • N SDKs — cada client té la seva llibreria i el seu format de petició, així que el teu codi s’omple de casos especials.
  • N API keys — més secrets a guardar, rotar i vigilar.
  • N comptes i N factures — la despesa queda repartida i costa veure quant gastes en total.
  • N règims de rate limit — cada proveïdor té els seus límits i no es coordinen; quan en toques un, l’has de gestionar a part.

Cap d’aquestes peces és difícil per separat. El problema és que es multipliquen: afegir el tercer o el quart proveïdor no suma feina, la compon.

Com ho col·lapsa un router

Un router com OpenRouter es posa al mig i absorbeix tota aquesta diversitat. El resultat és una sola integració, una key, una factura i un únic lloc on canviar de model. Si vols passar de openai/gpt-4o a anthropic/claude-3.5-sonnet, canvies l’slug i prou — sense obrir comptes nous ni tornar a fer la integració.

Nota: els límits de petició i les condicions concretes de cada proveïdor canvien sovint. No memoritzis xifres; consulta la documentació actual d’OpenRouter quan necessitis els valors vigents.