APIMaster.ai

Configuration d’une clé tierce DeepSeek Harness — fournisseur personnalisé APIMaster.ai

Comment ajouter une clé API compatible OpenAI d’APIMaster.ai dans DeepSeek Harness (dsh). Ouvrez Settings → Models → Add a custom provider, renseignez Base URL, clé et IDs de modèles, puis sélectionnez le modèle dans le chat.

DeepSeek Harness (dsh) est le framework d’agents local open source de DeepSeek. L’UI web est par défaut sur http://127.0.0.1:3080. La carte DeepSeek n’accepte que la clé officielle. Pour GPT / Claude / DeepSeek et les autres modèles du marketplace via APIMaster, ajoutez un custom provider.

Obtenez une clé API d’abord. La clé reste dans $DSH_HOME/.credentials.yaml (défaut ~/.dsh/). Ne la partagez pas dans un chat ni une capture.


Prérequis

  1. Node.js 22.19+ ou 24+.
  2. UI web lancée :
npx @deepseek-ai/dsh web

Ouvrez l’URL du terminal (souvent http://127.0.0.1:3080).
3. Clé copiée depuis la console APIMaster.
4. model id du marketplace (ex. gpt-5.6-sol, claude-sonnet-4-6, deepseek-v4-pro).


Étape 1 — Ouvrir Models

  1. Ouvrez Settings.
  2. Choisissez Models.
  3. Ne cliquez pas sur Edit de la carte DeepSeek — c’est la clé officielle.

Settings → Models

Bouton Usage
+ Add provider Catalogue (Anthropic, OpenAI, …)
+ Add a custom provider APIMaster (celui-ci)

Étape 2 — Remplir le fournisseur personnalisé

Champ Valeur
Provider ID apimaster (minuscules ; non renommable après enregistrement)
Display name apimaster ou APIMaster.ai
Base URL https://apimaster.ai/v1 (inclure /v1)
API protocol openai-completions
API key Votre clé APIMaster

Ajoutez au moins un modèle (gauche = model id, droite = nom affiché, ex. gpt-5.6-sol) ou Fetch available models. Cliquez sur Create provider.

Custom provider

Un id absent de la liste échoue en local avec UNKNOWN_MODEL. Sans /v1, fetch et chat échouent.

  • Pour les modèles de vision, vérifiez également la configuration d'entrée d'image ci-dessous. L'ajout d'un modèle uniquement via l'interface peut ne pas activer les images.

Vision / Modèles multimodaux avec des fournisseurs personnalisés

Si un modèle que vous ajoutez manuellement prend en charge les images, vous devrez peut-être déclarer cette capacité dans .dsh/settings.yaml. Le formulaire des fournisseurs personnalisés ne comporte actuellement aucun champ pour les types d'entrée de modèle : configurer le modèle uniquement via l'interface ne suffit donc pas lorsque sa capacité de vision est absente du catalogue de modèles.

Ouvrez $DSH_HOME/settings.yaml (par défaut ~/.dsh/settings.yaml) et modifiez l'entrée existante du fournisseur et du modèle. Conservez l'ID du fournisseur, les identifiants, l'URL de base et les autres paramètres déjà configurés ; fusionnez les champs ci-dessous dans cette entrée au lieu de remplacer le fichier.

Activer les images pour un modèle spécifique

Ajoutez input: [text, image] au modèle qui prend en charge la vision :

llm-pi-ai:
  providers:
    my-gateway:
      apiKeyEnv: GATEWAY_API_KEY
      api: openai-completions
      baseURL: https://your-api-endpoint/v1
      models:
        - id: legacy-chat
        - id: vision-model
          input: [text, image]

Les ID de fournisseur et de modèle ci-dessus sont des espaces réservés. Pour votre configuration APIMaster, utilisez votre ID de fournisseur enregistré (par exemple apimaster), https://apimaster.ai/v1 et les ID de modèle réels. apiKeyEnv désigne une variable d'environnement contenant votre clé ; si vous avez enregistré la clé via l'interface, conservez la configuration des identifiants existante.

  • input: [text, image] déclare la prise en charge des entrées texte et image pour ce modèle uniquement. Dans cet exemple, elle s'applique à vision-model et ne modifie pas legacy-chat.
  • Si input est omis ou défini sur [], Harness utilise les informations de capacité du catalogue de modèles. Si le catalogue ne contient aucune information correspondante, il utilise le defaultInput du fournisseur / de la route comme solution de secours.
  • Une déclaration explicite au niveau du modèle est particulièrement utile pour les modèles ajoutés manuellement dont le catalogue ne reconnaît pas la capacité de vision.

Définir une valeur par défaut pour les modèles d'un fournisseur

Si tous les modèles ajoutés manuellement sous un fournisseur personnalisé prennent en charge les images, définir defaultInput: [text, image] sur le fournisseur est plus concis :

llm-pi-ai:
  providers:
    vision-gateway:
      apiKeyEnv: GATEWAY_API_KEY
      api: openai-completions
      baseURL: https://your-api-endpoint/v1
      defaultInput: [text, image]
      models:
        - id: first-model
        - id: second-model
Champ Portée Quand l'utiliser
input Capacités d'entrée d'un seul modèle Privilégiez-le lorsque seuls certains modèles prennent en charge les images
defaultInput Capacités d'entrée par défaut pour les modèles de ce fournisseur / de cette route Pratique lorsque tous les modèles ajoutés manuellement prennent en charge les images

Ordre de résolution : input du modèle non vide → informations de capacité du catalogue de modèles → defaultInput du fournisseur / de la route (qui prend [text] par défaut). defaultInput est une solution de secours ; il ne remplace pas une déclaration explicite du modèle ni les capacités connues du catalogue. Si le catalogue décrit un modèle de vision comme étant texte uniquement, définissez explicitement input: [text, image] sur ce modèle.

Ces paramètres déclarent des capacités ; ils n'ajoutent pas la prise en charge de la vision à un modèle texte uniquement. Le modèle et l'API du fournisseur personnalisé doivent tous deux prendre en charge le format d'entrée d'image envoyé.

Enregistrez le fichier et envoyez une nouvelle requête avec une image. Harness relit les paramètres à la requête suivante ; un redémarrage n'est donc normalement pas nécessaire. Si la modification ne prend pas effet, rechargez l'interface ou redémarrez DeepSeek Harness, puis sélectionnez à nouveau le modèle configuré.


Étape 3 — Vérifier l’enregistrement

Vous devez voir DeepSeek et apimaster avec le badge gris Custom.

Liste Models


Étape 4 — Choisir le modèle dans le chat

Dans le sélecteur, prenez le modèle du groupe apimaster, pas du groupe DeepSeek.

Sélecteur de modèles


Étape 5 — Message de test

Envoyez hi. Une réponse normale accompagnée des métriques de pied de page (LLM / TTFT / tok) signifie que la clé et l'URL de base fonctionnent pour les requêtes texte. Pour vérifier la vision, envoyez également une image après avoir configuré l'entrée d'image.

Chat de test


Dépannage

Problème Correction
Formulaire introuvable Settings → Models → + Add a custom provider
401 / MISSING_CREDENTIAL Recoller la clé dans Edit
Pas de connexion https://apimaster.ai/v1
UNKNOWN_MODEL Ajouter l’id à Models
Trafic DeepSeek officiel Choisir la ligne du groupe apimaster
Provider ID incorrect Créer un nouveau puis Delete l’ancien
Images refusées Vérifiez la capacité de vision du modèle ainsi que input / defaultInput dans ~/.dsh/settings.yaml ; consultez la liste de contrôle de dépannage des images ci-dessous

Les images ne fonctionnent pas avec un modèle ajouté manuellement

Si les requêtes texte fonctionnent mais que les requêtes contenant des images échouent, vérifiez :

  1. Prise en charge du modèle : le modèle sélectionné prend effectivement en charge la vision / les entrées d'image.
  2. Configuration du modèle : son entrée dans .dsh/settings.yaml déclare input: [text, image] si le catalogue n'identifie pas sa capacité de vision.
  3. Valeur par défaut du fournisseur : sinon, le fournisseur possède defaultInput: [text, image], la solution de secours s'appliquant alors. Si une déclaration de modèle ou une entrée du catalogue indique texte uniquement, utilisez input au niveau du modèle pour activer explicitement les images pour un modèle pris en charge.
  4. Configuration chargée : enregistrez le fichier de paramètres utilisé par l'instance en cours et réessayez. Si la modification n'est pas répercutée, rechargez l'interface ou redémarrez DeepSeek Harness.
  5. Compatibilité de l'API : le protocole API et le point de terminaison du fournisseur personnalisé acceptent le format d'entrée d'image envoyé par Harness. Une requête texte réussie, à elle seule, ne vérifie pas la compatibilité des images.

Voir Vision / Modèles multimodaux avec des fournisseurs personnalisés pour les deux exemples YAML.


Liste de contrôle

  • npx @deepseek-ai/dsh web est lancé
  • + Add a custom provider utilisé
  • API protocol = openai-completions
  • Base URL = https://apimaster.ai/v1
  • Le modèle du groupe apimaster répond
  • Pour les modèles de vision, l'entrée d'image est déclarée ou résolue à partir du catalogue, et une requête contenant une image aboutit

Liens connexes