Skip to main content
Ces exemples utilisent un jeton d’accès à l’API CoreWeave défini dans CWSANDBOX_API_KEY. Pour l’authentification par clé API Forge, consultez Premiers pas. Pour connaître les exigences relatives à CKS, consultez Modes de placement. Ce guide explique comment utiliser Session pour gérer plusieurs bacs à sable avec une configuration partagée. Il s’adresse aux développeurs côté client qui doivent coordonner des groupes de bacs à sable, appliquer des valeurs par défaut communes et garantir un nettoyage cohérent à l’échelle d’une charge de travail.

Aperçu de la session

Une Session fournit :
  • Une configuration par défaut commune à tous les bacs à sable.
  • Un nettoyage automatique à la fermeture de la session.
  • Une portée pour le décorateur @session.function().

Utilisation de base

Créer des bacs à sable

Les sections suivantes expliquent comment créer des bacs à sable à partir d’une session et comment remplacer les valeurs par défaut de la session.

session.sandbox()

Crée une sandbox avec les valeurs par défaut de la session. La sandbox ne démarre qu’à sa première utilisation :
Pour contrôler explicitement le moment où le RPC de démarrage est déclenché :

Remplacer les valeurs par défaut

Transmettez des arguments supplémentaires pour remplacer les valeurs par défaut de la session :
Consultez le guide de configuration du bac à sable pour connaître toutes les options disponibles.

Gestion de sandboxes multiples

Les sessions se prêtent bien à la gestion de pools de sandboxes :
Pour préparer des bacs à sable avant l’arrivée des requêtes, voir Implement a warm pool. La recette maintient une réserve de bacs à sable prêts, attribue à chaque charge de travail un sandbox distinct et réalimente la réserve à mesure que les charges de travail les prennent.

Cycle de vie de la session

Les sections suivantes expliquent comment fermer une session, ce que fait close() et comment gérer les erreurs.

Fermeture manuelle

Si vous n’utilisez pas de gestionnaire de contexte, fermez explicitement la session :

Ce que fait close()

L’appel à close() effectue les actions suivantes :
  1. Arrête tous les bacs à sable créés via la session ou adoptés par celle-ci.
  2. Attend la fin du nettoyage.
  3. Renvoie OperationRef[None].

Gestion des erreurs

Les sessions sont nettoyées même si des exceptions se produisent :

Adopter des bacs à sable externes

Confiez à la session la gestion des bacs à sable créés en dehors de celle-ci :

Propriétés de Session

Consultez l’état de la session grâce aux propriétés intégrées, telles que sandbox_count :

Quand utiliser les sessions

Sans sessions

Les sessions ne sont pas nécessaires pour une sandbox unique :
Dernière modification le 15 octobre 2026