Utilisez Databricks Sandbox pour exécuter les commandes shell d’un agent et manipuler des fichiers dans votre espace de travail Databricks. Votre application gère le bac à sable. L’exécuteur du bac à sable, codex exec-server, ouvre une connexion sortante vers OpenAI à l’aide des valeurs environment.id et environment.remote_url de la session.
Databricks Sandbox est en version bêta. Vérifiez que votre espace de travail se trouve dans une région prise en charge, puis activez Databricks Sandbox sur la page Previews de votre espace de travail.
Avant de commencer
- Authentifiez un profil Databricks pour votre espace de travail. Dans l’exemple ci-dessous, remplacez
my-workspacepar le nom de ce profil. - Définissez
OPENAI_API_KEYsur la clé de votre application etOPENAI_EXECUTOR_API_KEYsur une clé d’environnement distincte. Les deux clés doivent être associées à la même organisation, au même projet et au même compte utilisateur ou compte de service. Seule la clé d’environnement est transmise au bac à sable via la variableCODEX_API_KEY. - Si votre organisation OpenAI applique une liste d’adresses IP autorisées, mettez-la à jour chaque fois que les adresses IP sortantes du bac à sable changent. Pour les espaces de travail qui utilisent la préversion du pare-feu pour le calcul sans serveur, suivez les recommandations de Databricks sur les plages d’adresses IP par région.
Exécutez l’exemple
Depuis la racine du dépôt OpenAI Cookbook, exécutez l’exemple avec uv et Python 3.11 ou une version ultérieure. Choisissez un identifiant de bac à sable inutilisé, car l’exemple supprime le bac à sable lors du nettoyage.
uv run examples/agents_api/sandboxes/databricks/application_managed/main.py \
--profile my-workspace --sandbox-id "openai-agent-$(date +%s)"
L’exemple crée une session auto-hébergée, démarre l’exécuteur dans le bac à sable et demande à l’agent d’écrire un message de bienvenue dans un fichier. Il relit le fichier et affiche Verified the agent's file write. si la vérification réussit. Il arrête ensuite l’exécuteur et supprime la session et le bac à sable.