GPU-Sitzungen aus einem Notebook
Starten Sie eine GPU-Maschine aus Jupyter mit Höchstkosten, erhalten Sie die SSH- und JupyterLab-Links und lassen Sie sie am Ende stoppen.
Das Modul nodelodge.notebook des Python-SDK startet aus einer Notebook-Zelle eine Secure-Maschine von Node Lodge, wartet, bis sie bereit ist, zeigt, wie Sie sich verbinden, und stoppt sie, wenn Ihr Arbeitsblock endet, auch nach einem Fehler oder einer unterbrochenen Zelle.
Einrichtung
Im Terminal oder in einer Notebook-Zelle mit %pip:
pip install ./sdk/python
Setzen Sie Ihren API-Schlüssel, bevor Sie Jupyter starten (der Schlüssel braucht die Scopes workloads:read und workloads:write):
export NODELODGE_API_KEY=nl_live_...
Ihr öffentlicher SSH-Schlüssel wird aus ~/.ssh/id_ed25519.pub gelesen. Siehe SSH-Schlüssel.
Starten, arbeiten, stoppen
from nodelodge.notebook import gpu_session
with gpu_session(max_cost_usd=5, min_vram_gb=48) as gpu:
display(gpu)
input("Press Enter to stop the machine")
display(gpu) zeigt die Maschine, ihre Höchstkosten, den SSH-Befehl und den JupyterLab-Link. Wenn der Block endet, stoppt die Sitzung: Die Abrechnung endet, Maschine und Festplatte werden gelöscht.
max_cost_usdist erforderlich. Der Betrag wird als Budget der Sitzung auf Ihrem Guthaben reserviert, und die Sitzung kostet nie mehr: Abgerechnet wird die tatsächliche Laufzeit der Maschine. Mithours=stoppt sie nach dieser Anzahl Stunden.- Wählen Sie die Maschine mit
gpu="H100",min_vram_gb=48oder eineroffer_id=. Ohne diese Angaben wird die günstigste buchbare Maschine verwendet. - Startet die Maschine nicht, oder unterbrechen Sie die Zelle während des Starts, wird die Sitzung gestoppt, bevor der Fehler erscheint.
- Während die Maschine startet, wird jeder Startschritt einmal angezeigt, sobald er beginnt. Mit
launch(..., wait=False)rufen Sie spätergpu.wait_ready(on_step=print)auf: Ihre Funktion erhält jeden neuen Schritt (allocated,booting,verifying).
JupyterLab auf der Maschine
Jede Secure-Maschine von Node Lodge führt JupyterLab aus, bereit, sobald die Sitzung bereit ist. Führen Sie gpu.jupyter_command in einem Terminal aus: Der Befehl öffnet SSH und leitet JupyterLab auf Port 8888 Ihres Computers weiter. Solange er läuft, öffnen Sie gpu.jupyter_url in Ihrem Browser. JupyterLab ist nur über Ihre SSH-Verbindung erreichbar.
Ohne with-Block
from nodelodge.notebook import launch
gpu = launch(max_cost_usd=5, gpu="A6000")
# ... later
gpu.stop()
Eine nicht gestoppte Sitzung wird gestoppt, wenn der Notebook-Kernel neu startet oder beendet wird. Stoppen Sie sie selbst, sobald Sie fertig sind: So halten Sie die Kosten niedrig, denn Sie zahlen für die Laufzeit der Sitzung.
Alle SDK-Methoden finden Sie unter CLI und SDK.