Python SDK-Leitfaden
Vollständiger Python-SDK-Leitfaden — synchrone/asynchrone Clients, Marketplace-Filterung, Order-Lebenszyklus, Spot-Markt, Wallet-Operationen und Fehlerbehandlung
Neu im SDK? Beginnen Sie mit dem 5-Minuten-Schnellstart zuerst.
Für ein Schnellstart-Tutorial mit echten Beispielen siehe Clore.ai Python SDK — Automatisieren Sie Ihre GPU-Workflows in 5 Minuten
Installation
pip install clore-aiDas SDK stellt zwei Clients bereit:
CloreAI— synchron (einfacher, gut für Skripte)AsyncCloreAI— asynchron (schneller für gleichzeitige Operationen)
Beide verwenden dieselben Methoden und geben dieselben Pydantic-Modelle zurück.
Sync vs. Async — Wann man was verwendet
Einfache Skripte, einmalige Aufgaben
CloreAI
Einfacherer Code, kein async/await
Überwachungsschleifen
CloreAI
Sequenzielle Prüfungen funktionieren gut
Massenabfragen des Marktplatzes
AsyncCloreAI
Gleichzeitige Anfragen = schneller
Stapelweise Auftragserstellung
AsyncCloreAI
Mehrere Aufträge parallel erstellen
Webanwendungen
AsyncCloreAI
Nicht blockierendes I/O
Sync-Beispiel
Async-Beispiel
Kontextmanager (empfohlen)
Beide Clients unterstützen Kontextmanager für die automatische Bereinigung:
Client-Konfiguration
Das SDK enthält eine integrierte Ratenbegrenzung:
Allgemeine Anfragen: 1 Anfrage/Sekunde
create_order: 5-sekündige Pause zwischen AufrufenRatenbegrenzungsfehler (Code 5): Automatischer exponentieller Backoff
Marktplatzfilterung
Der marketplace() Methode ruft alle verfügbaren Server ab und filtert clientseitig:
Erweiterte Filterung (clientseitig)
Für Filter, die nicht in der Methode integriert sind, filtern Sie die zurückgegebenen Server Objekte selbst:
Felder des Servermodells
Jedes MarketplaceServer Objekt hat diese Attribute und praktischen Eigenschaften:
id
int
Server-ID (verwenden Sie diese in create_order)
gpu_model
str | None
GPU-Beschreibung aus den Spezifikationen (Eigenschaft)
gpu_count
int
Anzahl der GPUs aus gpu_array (Eigenschaft)
ram_gb
float | None
System-RAM in GB (Eigenschaft, aus specs.ram)
price_usd
float | None
On-Demand-Preis in USD (Eigenschaft, aus price.usd.on_demand_usd)
spot_price_usd
float | None
Spot-Preis in USD (Eigenschaft)
verfügbar
bool
Ob der Server nicht vermietet ist (Eigenschaft)
location
str | None
Ländercode aus den Netzwerkspezifikationen (Eigenschaft)
specs
ServerSpecs | None
Hardware-Spezifikationen (CPU, RAM, Festplatte, GPU, Netzwerk)
price
ServerPrice | None
Vollständige Preisstruktur
rented
bool | None
Ob der Server derzeit vermietet ist
Auftragsverwaltung
Aufträge erstellen
Vollständige create_order Parameter
server_id
int
✅
Zu mietender Server
image
str
✅
Docker-Image
type
str
✅
"on-demand" oder "spot"
currency
str
✅
Zahlungswährung (z. B. "bitcoin")
ssh_password
str
—
SSH-Passwort
ssh_key
str
—
Öffentlicher SSH-Schlüssel
ports
dict
—
Portzuordnungen ({"22": "tcp"})
env
dict
—
Umgebungsvariablen
jupyter_token
str
—
Jupyter-Notebook-Token
command
str
—
Startbefehl
spot_price
float
—
Spot-Gebotspreis
required_price
float
—
Erforderlicher Preis
autossh_entrypoint
str
—
Automatischer SSH-Einstiegspunkt
Aufträge auflisten
Felder des Auftragsmodells
id
int
Auftrags-ID
server_id
int | None
ID des gemieteten Servers
type
str
"on-demand" oder "spot"
status
str | None
Auftragsstatus
image
str | None
Docker-Image
currency
str | None
Zahlungsmwährung
price
float | None
Preis
pub_cluster
str | None
Öffentliche IP / Hostname
tcp_ports
dict | None
Portzuordnungen (z. B. {"22": 50022})
created_at
str | None
Erstellungszeitstempel
Aufträge überwachen
Aufträge stornieren
Serververwaltung (für Hoster)
Wenn Sie GPUs auf Clore hosten, können Sie mit dem SDK Ihre Server verwalten:
Ihre Server auflisten
Server-Konfiguration abrufen
Servereinstellungen aktualisieren
Spot-Markt
Spot-Aufträge können unterbrochen werden, wenn jemand Ihr Gebot überbietet. Etwa ein Drittel der Server bietet Spot unterhalb des On-Demand-Preises an (Median ~13 % Rabatt); der Rest listet Spot zum On-Demand-Preis.
Spot-Angebote anzeigen
Einen Spot-Auftrag erstellen
Spot-Preis anpassen
Spot-Gebotsstrategie
Wallet-Operationen
Guthaben prüfen
Warnung bei niedrigem Guthaben
Bewährte Methoden zur Fehlerbehandlung
Ausnahmearchitektur
Grundlegende Fehlerbehandlung
Retry-Muster mit Backoff
Das SDK hat integrierte Wiederholungsversuche für Ratenlimits und Netzwerkfehler (max_retries=3). Für Wiederholungsversuche auf Anwendungsebene:
Leistungstipps
1. Den Client wiederverwenden
2. Async für gleichzeitige Operationen verwenden
3. Asynchrone Stapel-Bestellerstellung
Hinweis: Das SDK erzwingt eine 5-Sekunden-Abkühlzeit zwischen create_order Aufrufen. Selbst im Async-Modus werden Bestellungen zeitlich versetzt, um Ratenlimits einzuhalten.
4. Clients bei Fertigstellung schließen
Vollständiges Beispiel: GPU-Worker automatisch skalieren
Nächste Schritte
CLI-Automatisierung — Bash-Skripte, CI/CD, Batch-Operationen
Batch-Verarbeitung — Große Workloads auf Clore-GPUs verarbeiten
API-Integration — KI-Services mit Ihren Apps verbinden
Zuletzt aktualisiert
War das hilfreich?