Aller au contenu
Toute la documentation

Agents de code

Configurer OpenCode

OpenCode accepte toute API compatible OpenAI comme fournisseur personnalisé. Ajoutez nokeep dans opencode.json, testez avec la clé gratuite, puis lancez votre agent sur un modèle doté d'une fenêtre d'un million de tokens et d'une entrée en cache bon marché.

Vérifié le 29 octobre 2026

Les valeurs

URL de base
https://nokeep.ai/v1
Clé API
sk-nokeep-test to test, then your own sk-nokeep-… key
Modèle
deepseek-v4.1-flash-uncensored
Fenêtre de contexte
1000000
Tokens de sortie max
32768

Commencez par la clé de test gratuite : elle répond à chaque requête par une ligne fixe et sans appel d'outil, ce qui prouve que l'URL et la clé sont bonnes sans rien dépenser. Collez ensuite votre propre clé depuis la console. Crédits à partir de $5, sans abonnement.

Connexion

  1. Dans OpenCode, lancez /connect, descendez jusqu'à Other et choisissez-le.
  2. Saisissez nokeep comme identifiant de fournisseur.
  3. Collez sk-nokeep-test comme clé API. OpenCode la garde pour cet identifiant.
  4. Ajoutez le fournisseur ci-dessous à opencode.json dans votre projet, ou à ~/.config/opencode/opencode.json pour tous les projets.
  5. Lancez /models et choisissez DeepSeek V4.1 Flash Uncensored.
  6. Envoyez un message. Une réponse qui commence par « Connected to » signifie que la configuration fonctionne.
  7. Relancez /connect avec le même identifiant et collez votre propre clé depuis la console.
opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "model": "nokeep/deepseek-v4.1-flash-uncensored",
  "provider": {
    "nokeep": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "nokeep",
      "options": {
        "baseURL": "https://nokeep.ai/v1"
      },
      "models": {
        "deepseek-v4.1-flash-uncensored": {
          "name": "DeepSeek V4.1 Flash Uncensored",
          "limit": {
            "context": 1000000,
            "output": 32768
          }
        },
        "glm-5.3-flash-uncensored": {
          "name": "GLM 5.3 Flash Uncensored",
          "limit": {
            "context": 128000,
            "output": 32768
          }
        }
      }
    }
  }
}

L'identifiant de fournisseur dans /connect et la clé sous provider doivent correspondre : nokeep dans les deux.

Pour lire la clé depuis l'environnement au lieu de /connect, ajoutez "apiKey": "{env:NOKEEP_API_KEY}" sous options.

Réglages utiles

  • limit.context indique à OpenCode la place restante, pour qu'il compacte la conversation avant de déborder. Un modèle personnalisé n'a pas de limite tant que vous n'en fixez pas une.
  • limit.output est envoyé comme plafond de tokens à chaque réponse. 32,768 suffit pour les longues modifications ; DeepSeek permet jusqu'à 131,072.
  • Le model au niveau racine fait de DeepSeek le modèle par défaut, sous la forme fournisseur/modèle.
  • Les appels d'outils fonctionnent tels quels : OpenCode envoie ses outils au format OpenAI et DeepSeek répond par des appels.

Quel modèle

deepseek-v4.1-flash-uncensoredglm-5.3-flash-uncensored
Contexte1,000,000 tokens128,000 tokens
Réponse la plus longue131,072 tokens32,768 tokens
Appels d'outilsOui, chaque tool_choiceOui, tool_choice auto ou none
Lit les captures d'écranOui, jusqu'à 10 par requêteNon, texte seulement
RéflexionDésactivée sauf demandeToujours, brièvement
Par 1M de tokens$0.45 en entrée · $0.011 en cache · $1.75 en sortie$0.20 en entrée · $0.04 en cache · $0.65 en sortie

Utilisez DeepSeek pour le travail d'agent. Un dépôt entier tient dans son contexte, il appelle des outils sous toutes les formes, et l'historique qu'un agent renvoie à chaque appel se facture au tarif en cache de $0.011 par million. Utilisez GLM pour les courtes tâches ponctuelles qui ne renvoient pas un long historique, là où ses prix plus bas en entrée fraîche et en sortie l'emportent.

Les refus ont été retirés des poids des deux modèles : un travail proche d'un sujet sensible, comme le test de sécurité sur vos propres systèmes ou les outils de modération, obtient du code au lieu d'un refus. Comparer les modèles.

Réflexion

DeepSeek répond tout de suite, sauf si une requête nomme un reasoning_effort, ce qui convient à la boucle rapide modifier-et-lancer d'un agent. Pour planifier ou traquer un bug difficile, demandez-lui de réfléchir : il accepte none, low, high, max. Les minimal, medium et xhigh d'autres applications sont ramenés à la valeur la plus proche de ces quatre ; toute autre valeur est refusée avec 400 invalid_reasoning_effort. La réflexion se facture comme sortie.

Dans OpenCode, ajoutez une variante qui envoie un effort, puis basculez dessus avec le raccourci variant_cycle quand une tâche demande de la réflexion. Fusionnez ceci dans le fournisseur ci-dessus.

opencode.json
{
  "provider": {
    "nokeep": {
      "models": {
        "deepseek-v4.1-flash-uncensored": {
          "variants": {
            "think": {
              "reasoningEffort": "high"
            }
          }
        }
      }
    }
  }
}

Ce que coûte une session

Un agent envoie toute la conversation à chaque appel : les instructions, les fichiers lus, chaque étape passée. Supposons qu'un appel envoie 60,000 tokens, dont 55,000 identiques au début de l'appel précédent, et en écrit 1,000. Sur DeepSeek, cet appel coûte environ $0.0046, donc 200 appels font environ $0.92. Sans cache, le même appel coûterait $0.0288.

  • La mise en cache est automatique : rien à activer. Un début d'environ 1,000 tokens ou plus, répété dans les quelques minutes, se facture au prix du cache.
  • Chaque appel réserve ce qu'il peut coûter (son prompt et sa sortie maximale), puis se règle sur ce qu'il a réellement utilisé. À 32,768 tokens de sortie maximale, la partie sortie de la réservation vaut environ $0.0573.
  • La console affiche les tokens réels de chaque appel, les tokens en cache et les crédits. Le compteur de coût propre à un agent ne connaît peut-être pas le prix du cache, et il affiche alors un chiffre trop élevé.

Fonctionnement de la facturation.

Si cela ne fonctionne pas

L'agent afficheSolution
401La clé est fausse ou révoquée. Collez-la à nouveau, sans espaces ni guillemets.
402Le compte n'a plus de crédits achetés. Rechargez à partir de $5 dans la console, et activez Rechargement automatique là-bas pour qu'une longue tâche ne s'arrête jamais à mi-chemin : quand le solde passe sous le montant choisi, il ajoute des crédits sur votre carte enregistrée.
429Plus de 120 requêtes par minute sur une clé, ou au-delà d'un plafond quotidien que vous avez fixé. Les agents qui lancent plusieurs sous-agents à la fois tombent d'abord là-dessus. Attendez les secondes indiquées dans Retry-After, relevez le plafond dans la console, ou donnez à chaque agent sa propre clé.
400 invalid_reasoning_effortL'agent a envoyé un effort que le modèle n'accepte pas. DeepSeek accepte none, low, high, max ; GLM accepte low ou high.
404L'URL est fausse ou contient le chemin deux fois. Utilisez https://nokeep.ai/v1, sans /chat/completions, et vérifiez l'identifiant du modèle dans /v1/models.
503Le modèle est occupé. Réessayez dans quelques secondes ; rien n'a été facturé.
La ligne de test fixeLa configuration fonctionne. Remplacez par votre propre clé pour obtenir de vraies réponses.

Chaque erreur est listée avec sa solution dans Erreurs.

Questions

Mon code est-il conservé ?

Non. Nous gardons une ligne de compteurs par appel : l'heure, la clé, le modèle, les tokens, les crédits et le statut. Jamais le prompt, les fichiers ou la réponse. Ce que nous gardons.

Pourquoi le deuxième appel coûte-t-il moins cher que le premier ?

Le deuxième appel commence comme le premier : ce début est donc lu depuis le cache à $0.011 par million de tokens au lieu de $0.45. La plus grande partie de l'entrée d'un agent est en cache après son premier appel.

Puis-je garder mes autres fournisseurs ?

Oui. nokeep est une entrée de plus sous provider, et /models la liste à côté des autres.