Guide CLI et SDK
Vue d'ensemble
Clore.ai fournit une API REST qui permet un accès programmatique complet à la place de marché GPU — lister les serveurs, créer des commandes, surveiller les déploiements et annuler les locations.
Remarque : Il n'existe actuellement aucun binaire CLI officiel. Toute automatisation se fait directement via l'API REST à l'aide d'outils comme
curl, Python ou Node.js.
URL de base : https://api.clore.ai/v1
Format de réponse : JSON. Chaque réponse inclut un code indiquant le statut.
Authentification
Générez votre clé API depuis le tableau de bord Clore.ai:
Connectez-vous à votre compte
Accédez à API section dans les paramètres
Générez et copiez votre clé API
Format de l'en-tête :
auth: YOUR_API_KEY⚠️ Important : L'en-tête auth est
auth, pasAuthorization: Bearer. L'utilisation du mauvais format renverra le code3(Jeton API invalide).
Exemple :
curl -H 'auth: YOUR_API_KEY' 'https://api.clore.ai/v1/marketplace'Démarrage rapide
Lister les serveurs de la place de marché
Parcourez tous les serveurs GPU disponibles :
Réponse :
Obtenez vos commandes
Inclure les commandes terminées/expirées :
Créer une commande (à la demande)
Réponse :
Créer une commande spot
Les commandes spot sont moins chères mais peuvent être surenchéries. Vous définissez votre prix par jour :
Vérifier l'état de la commande
Les commandes actives incluent pub_cluster (noms d'hôte) et tcp_ports pour l'accès SSH :
Connectez-vous en SSH à votre serveur loué :
Annuler une commande
Vous pouvez éventuellement signaler un problème avec le serveur :
SDK Python
Un wrapper léger utilisant la requests bibliothèque. Installez-le avec :
Classe CloreClient
Exemple complet fonctionnel
Exemple Node.js
En utilisant l'API native fetch API (Node.js 18+):
Flux de travail courants
Trouver le RTX 4090 le moins cher et le louer
Surveiller mes commandes
Location automatique lorsque le prix descend sous X
WebSocket
L'API REST de Clore.ai n'expose actuellement pas de point de terminaison WebSocket. Pour la surveillance en temps réel, utilisez l'interrogation à un intervalle raisonnable (voir les limites de débit ci-dessous).
Limites de débit
La plupart des points de terminaison
1 requête/seconde
create_order
1 requête/5 secondes
set_spot_price (réduction de prix)
Une fois toutes les 600 secondes
Réponse de limite de débit (code 5) :
Bonnes pratiques :
Ajoutez
time.sleep(1)entre des appels API consécutifsPour
create_order, attendez au moins 5 secondes entre les requêtesUtilisez des intervalles d'interrogation de 60 secondes ou plus pour les boucles de surveillance
Mettez en cache localement les données de la place de marché si vous devez les interroger fréquemment
Aide Python :
Gestion des erreurs
Chaque réponse API inclut un code champ. Une valeur de 0 signifie le succès.
Codes d'erreur
0
Succès
—
1
Erreur de base de données
Réessayez après un délai
2
Données d'entrée invalides
Vérifiez le corps et les paramètres de votre requête
3
Jeton API invalide
Vérifiez votre clé API dans le tableau de bord
4
Point de terminaison invalide
Vérifiez l'URL du point de terminaison
5
Limite de débit dépassée (1 requête/sec)
Ajoutez des délais entre les requêtes
6
Erreur d'application (voir erreur champ)
Lisez le erreur champ pour plus de détails
Sous-erreurs du code 6
erreur valeur
Signification
exceeded_max_step
La réduction du prix spot est trop importante ; vérifiez le max_step champ
can_lower_every_600_seconds
Vous devez attendre avant de baisser à nouveau le prix spot ; vérifiez le time_to_lowering
Exemple de gestion des erreurs en Python
Exemple de gestion des erreurs en JavaScript
Images Docker disponibles
Clore.ai fournit des images préconfigurées optimisées pour les charges de travail GPU :
cloreai/ubuntu20.04-jupyter
Ubuntu 20.04 + JupyterLab
cloreai/ubuntu22.04-jupyter
Ubuntu 22.04 + JupyterLab
Vous pouvez également utiliser n'importe quelle image publique Docker Hub. Pour l'accès GPU, utilisez des images compatibles CUDA, par exemple :
Redirection de ports
Lors de la création d'une commande, spécifiez les ports à exposer :
"tcp"— Redirection TCP directe des ports (pour SSH, serveurs personnalisés)"http"— Proxy HTTPS (pour Jupyter, interfaces web). Un seul port HTTP autorisé parhttp_portchamp.
Après la création de la commande, les détails de connexion apparaissent dans my_orders:
Connexion via SSH :
Accédez à Jupyter via le navigateur : https://n1.c1.clorecloud.net (utilise le http_port)
Mis à jour
Ce contenu vous a-t-il été utile ?