Guide du SDK Python
Guide complet du SDK Python — clients synchrones/asynchrones, filtrage de la place de marché, cycle de vie des commandes, marché spot, opérations de portefeuille et gestion des erreurs
Pour un tutoriel de démarrage rapide avec des exemples concrets, voir Clore.ai Python SDK — Automatisez vos workflows GPU en 5 minutes
Installation
pip install clore-aiLe SDK fournit deux clients :
CloreAI— synchrone (plus simple, adapté aux scripts)AsyncCloreAI— asynchrone (plus rapide pour les opérations concurrentes)
Les deux partagent les mêmes méthodes et renvoient les mêmes modèles Pydantic.
Synchrone vs asynchrone — quand utiliser chacun
Scripts simples, tâches ponctuelles
CloreAI
Code plus simple, pas de async/await
Boucles de surveillance
CloreAI
Les vérifications séquentielles fonctionnent très bien
Requêtes groupées sur la place de marché
AsyncCloreAI
Requêtes concurrentes = plus rapide
Création d’ordres en lot
AsyncCloreAI
Créer plusieurs ordres en parallèle
Applications web
AsyncCloreAI
E/S non bloquantes
Exemple synchrone
Exemple asynchrone
Gestionnaires de contexte (recommandé)
Les deux clients prennent en charge les gestionnaires de contexte pour un nettoyage automatique :
Configuration du client
Le SDK inclut un limiteur de débit intégré :
Requêtes générales : 1 requête/seconde
create_order: délai de 5 secondes entre les appelsErreurs de limitation de débit (code 5) : Backoff exponentiel automatique
Filtrage de la place de marché
Le marketplace() la méthode récupère tous les serveurs disponibles et filtre côté client :
Filtrage avancé (côté client)
Pour les filtres non intégrés à la méthode, filtrez les Server objets renvoyés vous-même :
Champs du modèle de serveur
Chaque MarketplaceServer objet possède ces attributs et propriétés pratiques :
id
int
ID du serveur (utilisez-le dans create_order)
gpu_model
str | None
Description du GPU d’après les spécifications (propriété)
gpu_count
int
Nombre de GPU provenant de gpu_array (propriété)
ram_gb
float | None
RAM système en Go (propriété, depuis specs.ram)
price_usd
float | None
Prix à la demande en USD (propriété, depuis price.usd.on_demand_usd)
spot_price_usd
float | None
Prix spot en USD (propriété)
disponibles
bool
Indique si le serveur n’est pas loué (propriété)
location
str | None
Code pays issu des spécifications réseau (propriété)
specs
ServerSpecs | None
Spécifications matérielles (cpu, ram, disque, gpu, réseau)
price
ServerPrice | None
Structure tarifaire complète
rented
bool | None
Indique si le serveur est actuellement loué
Gestion des ordres
Création d’ordres
Complet create_order Paramètres
server_id
int
✅
Serveur à louer
image
str
✅
Image Docker
type
str
✅
"on-demand" ou "spot"
currency
str
✅
Devise de paiement (par ex. "bitcoin")
ssh_password
str
—
Mot de passe SSH
ssh_key
str
—
Clé publique SSH
ports
dict
—
Mappages de ports ({"22": "tcp"})
env
dict
—
Variables d’environnement
jupyter_token
str
—
Jeton du notebook Jupyter
command
str
—
Commande de démarrage
spot_price
float
—
Prix d’enchère spot
required_price
float
—
Prix requis
autossh_entrypoint
str
—
Point d’entrée Auto SSH
Liste des ordres
Champs du modèle d’ordre
id
int
ID de l’ordre
server_id
int | None
ID du serveur loué
type
str
"on-demand" ou "spot"
status
str | None
Statut de l’ordre
image
str | None
Image Docker
currency
str | None
Devise de paiement
price
float | None
Prix
pub_cluster
str | None
IP publique / nom d’hôte
tcp_ports
dict | None
Mappages de ports (par ex. {"22": 50022})
created_at
str | None
Horodatage de création
Surveillance des ordres
Annulation des ordres
Gestion des serveurs (pour les hébergeurs)
Si vous hébergez des GPU sur Clore, le SDK vous permet de gérer vos serveurs :
Lister vos serveurs
Obtenir la configuration du serveur
Mettre à jour les paramètres du serveur
Marché spot
Les ordres spot peuvent être interrompus si quelqu’un surenchérit sur vous. Environ un tiers des serveurs affichent un prix spot inférieur au prix à la demande (médiane ~13 % de moins) ; les autres affichent le spot au prix à la demande.
Voir les offres spot
Créer un ordre spot
Ajuster le prix spot
Stratégie d’enchère spot
Opérations sur les portefeuilles
Vérifier les soldes
Alerte de solde faible
Bonnes pratiques de gestion des erreurs
Hiérarchie des exceptions
Gestion des erreurs de base
Modèle de nouvelle tentative avec backoff
Le SDK intègre des tentatives automatiques pour les limites de débit et les erreurs réseau (max_retries=3). Pour les tentatives au niveau de l'application :
Conseils de performance
1. Réutiliser le client
2. Utiliser l'asynchrone pour les opérations concurrentes
3. Création asynchrone de lots de commandes
4. Fermer les clients une fois terminé
Exemple complet : mise à l'échelle automatique des workers GPU
Étapes suivantes
Automatisation CLI — scripts Bash, CI/CD, opérations par lots
Traitement par lots — Traiter de gros volumes de travail sur les GPU Clore
Intégration API — Connecter les services IA à vos applications
Mis à jour
Ce contenu vous a-t-il été utile ?