Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wichtig
Dieses Feature befindet sich in der Betaversion. Um diese Funktionsvorschau im Arbeitsbereich zu aktivieren, wähle die Databricks-Sandbox-Einstellung auf der Seite Vorschauen des Arbeitsbereichs an. Siehe Manage Azure Databricks Previews.
Databricks Sandbox führt Code in einer isolierten, serverlosen Umgebung aus, sodass Agenten den Code, den sie schreiben, sicher ausführen können. Du kannst eine Sandbox von einem Agenten, aus Python-Code oder aus einem Terminal verwenden. Jeder der folgenden Pfade funktioniert eigenständig, also wähle den, der zu deiner Arbeitsweise passt:
- Gib einem bestehenden Agenten ein Sandbox-Tool , damit der Agent den Code, den er schreibt, in einer Sandbox ausführt.
- Nutze das Python SDK, um Sandboxes zu erstellen und Befehle aus Python-Code auszuführen.
- Nutze die Databricks-CLI, um eine Sandbox zu erstellen und sich per SSH mit ihr zu verbinden.
Für einen Überblick über Databricks Sandbox, einschließlich Rechengröße, Speicher und Einschränkungen, siehe Databricks Sandbox.
Requirements
- Ihr Arbeitsbereich muss sich in einer unterstützten Region befinden. Weitere Informationen finden Sie unter Features mit eingeschränkter regionaler Verfügbarkeit.
- Um das SDK zu verwenden, benötigen Sie Python 3.10 oder höher.
- Um die Databricks-CLI zu verwenden, installiere die Databricks-CLI und authentifiziere sie mit
databricks auth login.
Gib einem bestehenden Agenten ein Sandbox-Tool, um Code sicher auszuführen
Nutze diesen Pfad, wenn du deinen Agenten mit der Agent Bricks CLI baust und möchtest, dass der Agent den von ihm geschriebenen Code ausführt, zum Beispiel Datenanalyse in Python, ohne dass dieser Code in der eigenen Umgebung des Agenten läuft.
Du erstellst nicht zuerst eine Sandbox. Das Sandbox-Tool verbindet Ihren Agenten mit dem von Azure Databricks verwalteten system.ai.sandbox Service, der den Code des Agenten in einer Sandbox für Sie ausführt. Sie konfigurieren nur, auf welche Daten die Sandbox zugreifen kann und ob sie schreiben kann.
Um das Tool hinzuzufügen, führe agentbricks tools add sandbox mit einem oder mehreren Scopes aus, die begrenzen, auf welche Daten die Sandbox zugreifen kann:
# Read one table.
agentbricks tools add sandbox --scope table:samples.nyctaxi.trips
# Read a volume and a workspace folder.
agentbricks tools add sandbox --scope volume:main.default.reports --scope workspace:/Workspace/Shared/data
# Allow writes to a volume.
agentbricks tools add sandbox --scope volume:main.default.output --permission read_write
Der Befehl zeichnet das Tool im Projekt agent.tomlauf, und der Agent ruft die Sandbox zur Laufzeit über den system.ai.sandbox MCP-Service auf. Standardmäßig läuft die Sandbox mit den Berechtigungen des Benutzers, der die Anfrage gesendet hat. Um stattdessen den Service Principal der App zu verwenden, füge --auth app hinzu. Wenn Sie mit agentbricks deploy deployen, gewährt Agent Bricks dem Service-Principal der App Zugriff auf die scoped resources für Tools, die --auth app verwenden.
Verwenden Sie das Python SDK, um eine Sandbox zu erstellen
Verwenden Sie diesen Pfad, wenn Sie Sandboxen erstellen und darin Befehle aus Ihrem eigenen Python-Code ausführen möchten, zum Beispiel aus einer Anwendung oder einem benutzerdefinierten Agenten, der seine eigenen Sandboxes verwaltet. Das Databricks SDK für Python ist die empfohlene Methode, um mit Sandboxes aus Code zu arbeiten.
Installieren oder aktualisieren Sie das SDK:
pip install --upgrade databricks-sdkErstelle eine Sandbox:
from databricks.sdk import WorkspaceClient from databricks.sdk.service.sandbox import Sandbox w = WorkspaceClient() created = w.sandbox.create_sandbox( sandbox=Sandbox(), sandbox_id="my-sandbox", ) print(created.name) # "sandboxes/my-sandbox"Führe einen Befehl in der Sandbox aus. Der Befehl läuft direkt, ohne Shell, also rufen Sie zum Ausführen eines Shell-Befehls
/bin/bash -cauf:from google.protobuf.duration_pb2 import Duration resp = w.sandbox.execute_command_sync( "sandboxes/my-sandbox", "/bin/bash", args=["-c", "echo hello world && whoami"], execution_timeout=Duration(seconds=30), ) print(resp.exit_code) # 0 print(resp.stdout) # "hello world\nsandbox-agent\n"Lösche die Sandbox, wenn du fertig bist. Das Löschen einer Sandbox entfernt ihr Home-Verzeichnis und beendet die Abrechnung dafür:
w.sandbox.delete_sandbox("sandboxes/my-sandbox")
Informationen zum Abrufen, Auflisten, Aktualisieren, Stoppen und Neustarten von Sandboxes finden Sie unter Sandboxes erstellen und verwalten mit dem SDK.
Verwenden Sie die Databricks-CLI, um eine Sandbox zu erstellen
Nutze diesen Pfad, wenn du interaktiv von einem Terminal aus in einer Sandbox arbeiten möchtest. Verbinden Sie sich über SSH mit einer Sandbox, um längere Agentenaufgaben auszuführen, ohne Ihren lokalen Rechner aktiv zu halten. Zum Beispiel kannst du einen Coding-Agenten aus der Databricks-CLI steuern oder eine Desktop-IDE oder einen Agenten-Harness wie Cursor, Claude oder Codex verbinden.
Um eine Sandbox zu erstellen und sich damit zu verbinden, führen Sie aus:
databricks sandbox create # create your sandbox
databricks sandbox register # optional: register SSH keys
databricks sandbox ssh # SSH to your default sandbox
Wenn du dich verbindest, wird die Databricks-CLI in der Sandbox installiert und mit dem Arbeitsbereich authentifiziert, in dem die Sandbox läuft. Wenn dein Arbeitsbereich Unity Gateway konfiguriert hat, konfiguriert Azure Databricks auch gängige Coding-Harnesses wie Claude und Codex, damit sie es beim ersten Verbinden nutzen. Siehe Erstellen eines benutzerdefinierten Modelldienstes. Um Git aus der Sandbox zu verwenden, konfigurieren Sie Git-Zugangsdaten. Siehe Verbinden Ihres Git-Anbieters mit Databricks.
Führen Sie für alle Befehle databricks sandbox -h aus, oder siehe die sandbox Kommandogruppe.