Kenshu Dev
🔀Tool

OpenRouter : une clé API pour tous les LLMs

Claude, DeepSeek, Grok, Llama, Qwen — un seul endpoint, une seule clé. Idéal pour des agents multi-modèles ou pour basculer vers un modèle moins cher selon la tâche.

18 mai 2025·4 min de lecture

OpenRouter : le hub multi-modèles

OpenRouter expose une API unique compatible OpenAI qui relaie vers Claude, GPT-4o, DeepSeek, Grok, Llama, Qwen et des dizaines d'autres. Une seule intégration, accès à tous les modèles.

Pourquoi l'utiliser

  • Pas de compte Anthropic requis pour utiliser Claude — utile si tu es sur quota ou pour des projets secondaires
  • Fallback automatique : si Claude est indisponible, bascule sur Gemini ou DeepSeek
  • Cost routing : envoie les tâches simples vers des modèles moins chers (DeepSeek V3 à $0.14/1M tokens vs Claude à $3/1M)
  • Comparaison facile : même code, tu changes juste le model pour comparer les résultats

Installation (Python)

pip install openai  # l'API est compatible
from openai import OpenAI

client = OpenAI(
    base_url="https://openrouter.ai/api/v1",
    api_key="sk-or-XXXXXXXXXXXXXXXXX",  # clé OpenRouter
)

response = client.chat.completions.create(
    model="anthropic/claude-sonnet-4-6",
    messages=[{"role": "user", "content": "Explique le chunking pour un RAG"}],
    extra_headers={
        "HTTP-Referer": "https://ton-site.com",
        "X-Title": "Ton app",
    }
)
print(response.choices[0].message.content)

Modèles utiles et leurs prix (mai 2025)

ModèleID OpenRouterPrix (1M tokens input)Idéal pour
Claude Sonnet 4.6anthropic/claude-sonnet-4-6$3Code, raisonnement
DeepSeek V3deepseek/deepseek-chat$0.14Tâches répétitives, volume
Qwen3 235Bqwen/qwen3-235b-a22b$0.13Code, reasoning cheap
Llama 3.3 70Bmeta-llama/llama-3.3-70b-instruct$0.12Généraliste open-source
Gemini 2.0 Flashgoogle/gemini-2.0-flash-001$0.10Volume, vitesse

Stratégie hybride recommandée

def smart_completion(prompt: str, task_type: str) -> str:
    # Tâches complexes → Claude
    if task_type in ("code", "reasoning", "analysis"):
        model = "anthropic/claude-sonnet-4-6"
    # Tâches simples / volume → DeepSeek
    else:
        model = "deepseek/deepseek-chat"

    return client.chat.completions.create(
        model=model,
        messages=[{"role": "user", "content": prompt}]
    ).choices[0].message.content

Intégration avec Continue.dev (VS Code)

// ~/.continue/config.json
{
  "models": [
    {
      "title": "Claude via OpenRouter",
      "provider": "openai",
      "model": "anthropic/claude-sonnet-4-6",
      "apiBase": "https://openrouter.ai/api/v1",
      "apiKey": "sk-or-XXXXXXXXXXXXXXXXX"
    }
  ]
}
#openrouter#llm#multi-model#agents#api
← Retour à Signal