FR ▾
Obtenir une clé API

API LLM VS Code : connectez votre éditeur à votre propre clé

Vous pouvez pointer VS Code vers n'importe quel endpoint compatible OpenAI en fournissant à une extension trois valeurs : une URL de base, une clé API et un ID de modèle. Cette page indique où placer ces valeurs et comment les tester d'abord.

Mis à jour le

Éditeur de code abstrait connecté par un câble à un cube de serveur lumineux, représentant une connexion API LLM VS Code

Points clés

  • Testez la clé avec curl avant de toucher à l'éditeur, afin de savoir quel côté est en panne.
  • Les extensions comme Continue et Cline demandent les trois mêmes valeurs : URL de base, clé, ID de modèle.
  • Utilisez l'ID de modèle uncensored et l'URL de base https://api.codingllmapi.com/v1.
  • L'API ne sert que des complétions de chat, donc les fonctionnalités nécessitant un endpoint de complétion séparé peuvent ne pas fonctionner.

Ce dont vous avez besoin avant de commencer

Une configuration de l'API LLM pour VS Code ne contient aucune magie. VS Code lui-même ne communique pas avec les modèles de langage. C'est une extension qui le fait, et cette extension doit savoir où envoyer les requêtes et comment vous identifier. Toute extension prenant en charge un fournisseur compatible OpenAI peut utiliser ce service.

Collectez d'abord ces trois valeurs.

  • URL de base : https://api.codingllmapi.com/v1
  • ID de modèle : uncensored
  • Clé API : créée sur la page Clés API. Après votre inscription, vous pouvez obtenir 0,50 $ de crédit d'essai en un clic, valable 7 jours et sans carte bancaire.

La clé est envoyée dans la requête sous la forme Authorization: Bearer <key>. Les extensions ajoutent cet en-tête pour vous une fois que vous avez collé la clé dans leurs paramètres.

Étape 1 : tester la clé en dehors de l'éditeur

Le débogage dans une extension est plus lent que dans un terminal. Ouvrez le terminal dans VS Code (Ctrl+` sur Windows et Linux, Cmd+` sur macOS), stockez la clé dans une variable d'environnement et exécutez deux appels. Le premier liste les modèles. Le second envoie une petite requête de chat.

export LLM_API_KEY="paste-your-key-here"

curl -s https://api.codingllmapi.com/v1/models \
  -H "Authorization: Bearer $LLM_API_KEY"

curl -s https://api.codingllmapi.com/v1/chat/completions \
  -H "Authorization: Bearer $LLM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"uncensored","messages":[{"role":"user","content":"Reply with the word ready."}],"max_tokens":10}'

Si le deuxième appel renvoie un JSON avec un message, la clé, l'URL et l'ID du modèle sont corrects. Tout problème ultérieur relève d'un paramètre de l'extension, pas de votre compte. Si vous obtenez une erreur d'authentification ici, vérifiez que vous avez copié la clé entière et qu'aucun guillemet ou espace parasite ne s'est glissé.

Étape 2 : configurer une extension

Les paramètres des extensions changent entre les versions, considérez donc les noms de champs ci-dessous comme un guide et consultez la documentation de l'extension si une étiquette diffère. Les trois valeurs sont toujours les mêmes.

Continue

Continue est un assistant open-source pour VS Code et JetBrains. Il lit un fichier de configuration depuis votre répertoire personnel. Les versions plus récentes utilisent un fichier YAML, et les anciennes utilisent config.json. L'entrée du modèle contient les mêmes champs dans les deux cas. Au format JSON, cela ressemble à ceci :

{
  "models": [
    {
      "title": "Uncensored",
      "provider": "openai",
      "model": "uncensored",
      "apiBase": "https://api.codingllmapi.com/v1",
      "apiKey": "paste-your-key-here"
    }
  ]
}

Le fournisseur est openai car le format filaire est celui d'OpenAI. Seul apiBase indique à Continue de parler à un serveur différent. Rechargez la fenêtre après avoir enregistré et sélectionnez le modèle dans le menu déroulant du panneau de chat.

Cline

Cline est une extension agent capable de lire des fichiers, de les modifier et d'exécuter des commandes terminal avec votre approbation. Ouvrez ses paramètres et choisissez le fournisseur nommé OpenAI Compatible. Remplissez l'URL de base, la clé API et l'ID de modèle. Collez https://api.codingllmapi.com/v1, votre clé et uncensored. Enregistrez, lancez une tâche et approuvez son premier appel d'outil.

Autres extensions

De nombreux outils suivent le même motif sous des noms comme « endpoint personnalisé », « compatible OpenAI » ou « apportez votre propre clé ». Cherchez un champ qui accepte une URL de base. Si une extension ne propose qu'une liste fixe de fournisseurs sans champ URL, elle ne peut pas être pointée vers cette API.

Ce qui fonctionne et ce qui peut ne pas fonctionner

Cette API implémente POST /v1/chat/completions et GET /v1/models. Cela couvre les panneaux de chat, les commandes d'édition, les actions d'explication de code et les boucles d'agents. Cela ne couvre pas tout ce qu'un éditeur peut demander.

Fonctionnalité de l'éditeurRésultat attendu
Discuter sur le fichier ouvertFonctionne
Sélectionner du code et demander une modificationFonctionne
Tâches d'agent avec appels d'outilsFonctionne si l'extension utilise le champ tools standard ou son propre format de prompt
Complétion par onglet en ligneDépend de l'extension. Si elle nécessite un endpoint de complétion ou de remplissage au milieu séparé, cette API n'en fournit pas
Embeddings et indexation de la base de codeNon disponible ici, car il n'y a pas d'endpoint d'embeddings. Utilisez une autre source d'embeddings ou désactivez l'indexation
Entrée ou génération d'imagesNon disponible, l'API est uniquement textuelle

Si une extension échoue sur une fonctionnalité de ce tableau, désactivez cette fonctionnalité dans ses paramètres au lieu de supposer que votre clé est incorrecte. Pour un aperçu de ce que vaut ce modèle pour la programmation, consultez la page sur un modèle sans censure pour les agents de codage.

Au-delà des extensions : scripts exécutés depuis l'éditeur

Une extension n'est pas le seul moyen d'utiliser une clé depuis VS Code. De nombreux développeurs conservent un petit script dans le projet qui envoie un fichier au modèle et imprime la réponse, puis l'exécutent depuis le terminal intégré ou le lient à une tâche. Cela vous donne un contrôle total sur le prompt et évite les surprises dues aux instructions cachées d'une extension.

Voici un court script Python qui examine n'importe quel chemin de fichier que vous lui passez. Il lit la clé depuis une variable d'environnement, donc rien de secret ne se retrouve dans votre dépôt.

import os
import sys
from openai import OpenAI

client = OpenAI(
    base_url="https://api.codingllmapi.com/v1",
    api_key=os.environ["LLM_API_KEY"],
)

path = sys.argv[1]
with open(path, encoding="utf-8") as f:
    source = f.read()

resp = client.chat.completions.create(
    model="uncensored",
    messages=[
        {"role": "system", "content": "Review the code. List bugs first, then style issues. Be brief."},
        {"role": "user", "content": source},
    ],
    temperature=0.2,
)
print(resp.choices[0].message.content)

Exécutez-le avec python review.py src/app.py. Les gros fichiers sont acceptés jusqu'à une fenêtre de contexte de 100 000 tokens, mais un prompt plus court répond plus vite et coûte moins cher. Si vous souhaitez voir la réponse s'afficher au fur et à mesure, passez stream=True et affichez le delta.content de chaque chunk à son arrivée.

La même idée fonctionne comme une tâche VS Code dans .vscode/tasks.json : définissez une tâche dont la commande est ce script avec le fichier actuel en argument, et déclenchez-le depuis la palette de commandes. C'est une petite configuration, et le résultat est une commande de révision que vous comprenez entièrement.

Correction des erreurs courantes

La plupart des problèmes relèvent d'un petit nombre de causes. Partez du haut de cette liste.

  1. 401 ou « clé API invalide ». La clé a été collée avec un espace à la fin, ou vous avez utilisé une clé destinée à un autre site. Créez-en une nouvelle et collez-la à nouveau.
  2. 404 ou « modèle introuvable ». L'ID du modèle est mal orthographié, ou l'URL de base manque de /v1 ou le contient deux fois. L'ID correct est uncensored. Exécutez l'appel /v1/models pour voir ce que le serveur indique.
  3. 429 avec rate_limited. Vous avez dépassé la limite de requêtes par minute : 300 pour une clé complète, 60 pour une clé d'essai. Les agents qui bouclent rapidement atteignent cette limite. Attendez et réessayez, ou réduisez le nombre d'étapes automatiques.
  4. 429 avec concurrency. Trop de requêtes simultanées : 8 sur une clé standard, 2 sur une clé d'essai. Certaines extensions lancent plusieurs appels en parallèle pour une seule tâche. Une réponse en streaming occupe son slot jusqu'à sa fin, donc un flux bloqué peut empêcher de nouveaux appels.
  5. 429 avec un en-tête Retry-After: 5. Surcharge temporaire. L'extension devrait réessayer après cinq secondes. Si ce n'est pas le cas, réessayez manuellement.
  6. La requête est rejetée car trop volumineuse. La limite de taille du corps de la requête est de 8 Mo, et la fenêtre de contexte est de 100 000 tokens pour le prompt plus la réponse. Les agents qui joignent de nombreux fichiers peuvent dépasser cette limite. Réduisez le contexte ou effacez la conversation.

Lorsque vous demandez de l'aide au support, incluez la valeur de l'en-tête de réponse X-Request-Id. Vous pouvez le voir avec curl -i.

Garder les coûts visibles

Les agents d'édition envoient beaucoup de texte, car chaque étape inclut généralement les fichiers et l'historique jusqu'alors. Le prix est de 0,15 $ par 1 M de tokens d'entrée et de 0,50 $ par 1 M de tokens de sortie, ce qui rend les requêtes individuelles peu coûteuses, mais les boucles s'accumulent.

Un exemple concret : une étape d'agent avec 30 000 tokens d'entrée et 1 000 tokens de sortie coûte 30 000 x 0,15 $ / 1 000 000 = 0,0045 $ pour l'entrée et 1 000 x 0,50 $ / 1 000 000 = 0,0005 $ pour la sortie, soit 0,005 $ par étape. Une tâche de 40 étapes de ce type coûte 0,20 $. Il s'agit d'une estimation approximative, pas d'une promesse, car les étapes réelles varient en taille.

  • Vérifiez X-Balance-USD dans les en-têtes de réponse pour voir votre crédit après un appel.
  • Lancez de nouvelles tâches dans de nouvelles conversations afin que l'ancien historique ne traîne pas indéfiniment.
  • Définissez la limite d'étapes ou de requêtes de l'extension si elle en possède une.

Le crédit est prépayé, donc les dépenses s'arrêtent lorsque le solde est épuisé, et il n'expire jamais. Les recharges vont de 20 $ à 500 $ en montants entiers, avec un bonus de 5 % à partir de 50 $, de 10 % à partir de 100 $ et de 15 % à partir de 200 $. Les cartes (Visa, Mastercard, Apple Pay, Google Pay) et la crypto (USDT sur TRC20, USDC sur Base) sont acceptées. Les détails figurent sur la page des tarifs, et la documentation liste tous les paramètres pris en charge.

Une note sur la confidentialité et l'utilisation

Le code que vous envoyez va aux serveurs du fournisseur, donc ne collez pas de secrets tels que des clés de production, des mots de passe ou des données clients dans les prompts. Les prompts sur ce service ne sont pas utilisés pour l'entraînement. Le modèle est ajusté pour répondre sans refus de contenu pour une utilisation adulte légale, ce qui signifie qu'il ne s'arrêtera pas pour vous faire une leçon sur un test de sécurité ou un script de jeu à thème sombre, mais vous restez responsable de ce que vous lui demandez. Le contenu sexuel impliquant des mineurs est strictement interdit.

Questions et réponses

Puis-je utiliser cette API avec GitHub Copilot dans VS Code ?

Copilot est lié à son propre service, donc cette clé ne le remplace pas. Utilisez une extension qui accepte un endpoint personnalisé, comme Continue ou Cline.

Quel ID de modèle dois-je saisir ?

Saisissez uncensored. Vous pouvez le confirmer en appelant GET /v1/models avec votre clé.

Pourquoi l'éditeur indique-t-il que la connexion a échoué ?

Exécutez d'abord le test curl. Si curl fonctionne, revérifiez l'URL de base dans l'extension, y compris le /v1 à la fin et l'absence d'espaces supplémentaires.

L'autocomplétion en ligne fonctionne-t-elle ?

Uniquement si l'extension peut utiliser les complétions de chat standard pour cela. Cette API n'a pas d'endpoint de complétion séparé, donc vérifiez les paramètres d'autocomplétion de l'extension.

Existe-t-il un moyen gratuit de le tester ?

Les nouveaux utilisateurs peuvent réclamer 0,50 $ de crédit d'essai sur la page clé API après l'inscription. Aucune carte n'est nécessaire, la durée est de 7 jours et la limite est d'un par personne.

Votre clé n'est qu'à un formulaire d'ici

Créez un compte, copiez la clé, modifiez l'URL de base. C'est toute la configuration.

Obtenir une clé API