Skip to main content
Utilisez W&B Secret Manager pour mettre des jetons d’API et d’autres identifiants d’authentification à disposition dans une sandbox serverless. Votre application transmet des noms de secrets à l’API Sandbox. Lorsque l’API crée la sandbox, elle résout les valeurs correspondantes à partir de votre équipe W&B et les injecte sous forme de variables d’environnement.

Avant de commencer

L’injection de secrets W&B nécessite une sandbox authentifiée avec une clé API W&B. Elle est disponible pour les sandboxes serverless, mais pas pour les sandboxes exécutées sur votre propre cluster CoreWeave Kubernetes Service (CKS). Le placement sur CKS utilise un jeton d’accès à l’API CoreWeave. Vous ne pouvez pas combiner ce jeton avec une clé W&B distincte pour résoudre les secrets d’une sandbox CKS. Pour suivre les exemples, vous devez disposer des éléments suivants :
  • Un compte W&B SaaS (software-as-a-service) avec un accès aux sandboxes serverless.
  • Un secret nommé HF_TOKEN dans le Secret Manager de votre équipe W&B. Si ce secret n’existe pas, demandez à un administrateur W&B de l’ajouter.
  • Une clé API W&B ayant accès à cette équipe.
Définissez WANDB_API_KEY dans l’environnement du processus qui crée la sandbox. Remplacez [WANDB-API-KEY] par votre clé API W&B :
WANDB_ENTITY est facultatif et correspond par défaut à l’entity par défaut de la clé API. Si le secret appartient à une autre équipe, définissez WANDB_ENTITY sur cette équipe. Remplacez [WANDB-TEAM] par le nom de l’équipe :
Installez le client correspondant à votre langage :
Utilisez Python 3.11 ou une version ultérieure et, si nécessaire, installez uv. Dans votre environnement Python, installez le client avec sa dépendance d’authentification W&B :

Injecter un secret

Utilisez store="wandb" en Python ou store: "wandb" en TypeScript. Ce magasin résout les secrets pour l’équipe W&B authentifiée. Vous n’avez pas besoin d’enregistrer de magasin de secrets d’organisation pour ce flux. Les exemples suivants injectent HF_TOKEN et vérifient sa présence sans afficher sa valeur. Dans le sandbox, la variable d’environnement porte par défaut le nom du secret.
Sélectionnez explicitement l’authentification W&B avec AuthStrategy.WANDB :
Les deux exemples affichent Secret is available et arrêtent le sandbox une fois l’opération terminée. Le code exécuté dans le sandbox peut lire la valeur depuis HF_TOKEN. Dans secrets, transmettez le nom du secret, et non sa valeur. C’est le serveur qui résout la valeur. Ne l’affichez pas et ne l’écrivez pas dans les journaux.

Champs de référence de secret

Utilisez ces champs dans un Secret Python ou dans une entrée secrets TypeScript :

Utiliser un nom de variable d’environnement personnalisé

Pour choisir la variable d’environnement qui reçoit le secret, définissez env_var en Python ou envVar en TypeScript. Les exemples suivants exposent le secret HF_TOKEN sous le nom HUGGINGFACE_TOKEN :
Les deux exemples affichent Secret is available après avoir vérifié la présence de HUGGINGFACE_TOKEN.

Sélectionner un champ d’un secret structuré

Pour injecter une seule valeur d’un objet JSON, définissez field sur sa clé de premier niveau. Les chemins imbriqués ne sont pas pris en charge. Si la valeur est une chaîne JSON, elle est injectée sans les guillemets JSON qui l’entourent. Pour cet exemple, ajoutez un secret d’équipe nommé DB_CREDENTIALS dont la valeur est un objet JSON tel que {"password":"[DB-PASSWORD]"}. Remplacez [DB-PASSWORD] par le mot de passe avant d’enregistrer le secret. Les exemples injectent son champ password dans DB_PASSWORD :
Les deux exemples affichent Secret is available sans révéler le mot de passe. La sélection d’un champ échoue si le secret n’est pas un objet JSON, si la clé n’existe pas ou si sa valeur est null.

Réutiliser les références de secrets

Pour les sessions Python, placez les références de secrets partagées dans SandboxDefaults. En TypeScript, réutilisez un même tableau secrets lorsque vous créez des sandboxes :
Le client Python fusionne les valeurs par défaut de la session avec les secrets propres à chaque sandbox, en ignorant les doublons exacts. Si des références différentes ciblent la même variable d’environnement, le client lève une ValueError avant de créer la sandbox. Pour la signature de type Python, consultez la référence Secret.

Résoudre les problèmes d’injection de secrets

Si le sandbox ne parvient pas à démarrer avec une référence de secret, servez-vous du texte de l’erreur pour vérifier l’authentification, l’équipe sélectionnée et le placement : L’injection de secrets W&B n’est pas disponible pour le placement CKS, même si vous définissez à la fois un jeton d’accès à l’API CoreWeave et une clé API W&B.
Dernière modification le 30 septembre 2026