Skillia

Configurer OpenRouter

Maintenant que LiteLLM tourne sur Elestio, on le connecte à OpenRouter pour accéder à 300+ modèles.

Récupérer ta clé OpenRouter

  1. Crée un compte sur openrouter.ai
  2. Va dans Settings → API Keys
  3. Crée une nouvelle clé et copie-la (elle commence par sk-or-)

Création d'une clé API sur OpenRouter

Méthode 1 : Via le Dashboard LiteLLM

C'est la méthode la plus simple. Tout se fait depuis l'interface web de LiteLLM.

Ajouter le credential OpenRouter

Va dans Models + Endpoints → LLM Credentials → Add Credential. Choisis "openrouter" comme provider et colle ta clé API.

Credential OpenRouter ajouté dans LiteLLM

Ajouter un modèle

Va dans Models + Endpoints → Add Model. Le format LiteLLM pour OpenRouter est openrouter/<provider>/<modele>. Par exemple, pour Gemini 3 Flash :

  • LiteLLM Model Name : openrouter/google/gemini-3-flash-preview
  • Model Name (l'alias public) : le nom que tu veux utiliser dans tes appels API

Configuration d'un modèle dans LiteLLM

Tu peux donner un alias court et lisible à ton modèle (comme "skillia" ou "mon-gemini") au lieu d'utiliser le chemin complet. C'est ce nom que tes apps utiliseront dans leurs requêtes.

Modèle configuré avec un alias personnalisé

Vérifier dans la liste des modèles

Une fois ajouté, ton modèle apparaît dans l'onglet All Models avec ses coûts et credentials.

Liste des modèles configurés

Répète l'opération pour chaque modèle que tu veux exposer (Claude, GPT-4o, Llama 4...).

Méthode 2 : Via config.yaml

Si tu préfères la config-as-code, LiteLLM utilise un fichier config.yaml. Sur Elestio, tu peux le modifier en SSH.

Le format pour OpenRouter est openrouter/<provider>/<modele> :

model_list:
  - model_name: claude-sonnet
    litellm_params:
      model: openrouter/anthropic/claude-sonnet-4
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: gpt-4o
    litellm_params:
      model: openrouter/openai/gpt-4o
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: gemini-pro
    litellm_params:
      model: openrouter/google/gemini-2.5-pro
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: llama-4
    litellm_params:
      model: openrouter/meta-llama/llama-4-maverick
      api_key: os.environ/OPENROUTER_API_KEY

litellm_settings:
  num_retries: 3
  request_timeout: 30
  fallbacks: [{"claude-sonnet": ["gpt-4o"]}]

general_settings:
  master_key: sk-ta-master-key-ici

Ajoute ta clé OpenRouter dans les variables d'environnement de ton instance Elestio :

OPENROUTER_API_KEY=sk-or-ta-cle-ici

Tester un appel

curl https://ton-litellm-xxx.vm.elestio.app/v1/chat/completions \
  -H "Authorization: Bearer sk-ta-master-key-ici" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet",
    "messages": [{"role": "user", "content": "Dis bonjour en français"}]
  }'

Ta requête utilise le format standard OpenAI (/v1/chat/completions), et LiteLLM la traduit et la route vers Claude via OpenRouter. Le modèle "claude-sonnet" dans ta requête correspond au model_name dans ta config.

Les 3 étapes de configuration

Ajouter un fallback direct

Si OpenRouter tombe, tu peux aussi configurer un accès direct à Anthropic en fallback :

model_list:
  - model_name: claude-sonnet
    litellm_params:
      model: openrouter/anthropic/claude-sonnet-4
      api_key: os.environ/OPENROUTER_API_KEY

  - model_name: claude-sonnet-direct
    litellm_params:
      model: anthropic/claude-sonnet-4
      api_key: os.environ/ANTHROPIC_API_KEY

Dans la prochaine leçon, on connecte OpenCode pour coder avec tous ces modèles depuis le terminal.