Prime Intellect CLI
Le CLI prime est l'interface en ligne de commande pour gérer les ressources de calcul Prime Intellect, les environnements RL, les sandboxes de code et les tunnels. Cette skill fournit la référence des commandes et les patterns de décision pour toutes les opérations de plateforme.
Prérequis
- Python 3.10+
- Installation :
uv tool install prime(préféré) oupip install prime - Auth :
prime login(interactif) ouprime config set-api-key(sans interface) - Clé SSH :
prime config set-ssh-key-path(pour l'accès aux pods) - Vérification :
prime config view
Référence des commandes
Configuration (prime config)
| Commande | Description | Défaut |
|---|---|---|
view |
Afficher la configuration actuelle | - |
set-api-key |
Définir la clé API | - |
set-team-id |
Définir l'ID de l'équipe pour la facturation d'équipe | - |
remove-team-id |
Revenir au compte personnel | - |
set-base-url |
Définir l'URL de base de l'API | https://api.primeintellect.ai |
set-ssh-key-path |
Définir le chemin de la clé privée SSH | ~/.ssh/id_rsa |
set-share-resources-with-team <bool> |
Partage automatique des nouvelles instances avec l'équipe | false |
reset |
Réinitialiser tous les paramètres (supprime la clé API) | - |
Disponibilité GPU (prime availability)
# Lister toutes les configurations GPU avec tarification
prime availability list
# Filtrer par type GPU, région, nombre, socket
prime availability list --gpu-type H100_80GB --regions united_states --gpu-count 2 --socket PCIe
# Trouver les GPUs compatibles avec les disques existants
prime availability list --disks disk-id-1 --disks disk-id-2
# Lister la disponibilité des disques
prime availability disks --regions united_states
Filtres : --gpu-type, --gpu-count, --regions, --socket (PCIe, SXM2, SXM3, SXM4, SXM5), --disks, --group-similar (défaut true).
Gestion des pods (prime pods)
# Créer de manière interactive
prime pods create
# Créer de manière non-interactive
prime pods create \
--gpu-type H100_80GB \
--gpu-count 1 \
--disk-size 100 \
--name my-pod
# Créer avec des disques persistants attachés
prime pods create --id 346663 --disks disk-id-1 --disks disk-id-2
# Créer avec un template personnalisé
prime pods create --image custom_template --custom-template-id "template_id"
# Lister les pods
prime pods list
# Se connecter à un pod via SSH
prime pods ssh <pod-id>
# Supprimer un pod
prime pods delete <pod-id>
Options de création de pods : --id, --cloud-id, --gpu-type, --gpu-count, --name, --disk-size, --vcpus, --memory, --image, --team-id, --env KEY=value, --disks, --share-with-team, --add-members.
Gestion des disques (prime disks)
# Vérifier la disponibilité
prime availability disks
# Créer un disque persistant
prime disks create --id c008ad --size 500 --name ml-training-data
# Lister les disques (avec pagination)
prime disks list --limit 50 --offset 0 --output json
# Supprimer un disque
prime disks delete <disk-id>
Les disques persistent indépendamment des pods et sont facturés continuellement jusqu'à leur suppression. Utilisez --yes pour ignorer la confirmation en automation.
Sandboxes (prime sandbox)
# Créer un sandbox
prime sandbox create python:3.11-slim \
--name analytics-lab \
--cpu-cores 2 --memory-gb 4 --disk-size-gb 20 \
--timeout-minutes 240 --idle-timeout-minutes 15 \
--env PROFILE=production \
--secret DB_PASSWORD=<value> \
--label experiment --label ml-pipeline
# Exécuter une commande à l'intérieur
prime sandbox run sbx_123 --working-dir /workspace "python -c 'print(42)'"
# Télécharger / téléverser (limite de 200 MB par fichier)
prime sandbox upload sbx_123 notebooks/analysis.ipynb /workspace/
prime sandbox download sbx_123 /workspace/report.csv reports/latest.csv
# Exposer des ports (plage 22-9000 ; 8080, 2222, 8081 exclus)
prime sandbox expose <sandbox-id> 8000 --name web-server
prime sandbox expose <sandbox-id> 9000 --name tcp-server --protocol TCP
prime sandbox list-ports <sandbox-id>
prime sandbox unexpose <sandbox-id> <exposure-id> --yes
# Se connecter à un sandbox via SSH
prime sandbox ssh <sandbox-id> --shell zsh
# Inspecter, logs, nettoyage
prime sandbox list --status RUNNING --output table
prime sandbox get sbx_123 --output json
prime sandbox logs sbx_123 > logs.txt
prime sandbox delete --label experiment --yes
Contraintes de délai d'inactivité :
- Désactivé par défaut ; activez avec
--idle-timeout-minutes. - Doit satisfaire
1 <= idle <= timeoutetidle <= 1440. - Non supporté pour les sandboxes basés sur VM (
--vm). - Les sessions SSH ne comptent pas comme une activité.
- Erreurs d'authentification de transfert de fichiers :
prime sandbox reset-cachepuis réessayez.
Entraînement RL hébergé (prime lab, prime train, prime eval)
# Configurer l'espace de travail
prime lab setup
# Installer un environnement
prime env install primeintellect/alphabet-sort
# Exécuter l'évaluation de base
prime eval run primeintellect/alphabet-sort \
-m Qwen/Qwen3-4B-Instruct-2507 -n 20 -r 1
prime eval tui
# Lancer l'entraînement
prime train run configs/rl/alphabet-sort.toml
# Surveiller
prime train logs <run-id> -f
prime train models # lister les modèles disponibles
Configuration d'entraînement (TOML) :
model = "Qwen/Qwen3-4B-Instruct-2507"
max_steps = 50
batch_size = 128
rollouts_per_example = 8
[sampling]
max_tokens = 512
[[env]]
id = "primeintellect/alphabet-sort"
# Intégration W&B optionnelle
[wandb]
project = "my-experiment"
name = "alphabet-sort-30b"
# Éval périodique optionnelle
[eval]
interval = 50
Directives de taille d'exécution :
| Taille | Modèle | max_steps | batch_size | rollouts_per_example |
|---|---|---|---|---|
| Validation | Qwen/Qwen3-4B-Instruct-2507 |
50 | 128 | 8 |
| Expérimentation | Qwen/Qwen3-30B-A3B-Instruct-2507 |
200 | 256 | 16 |
| Production | Qwen/Qwen3-235B-A22B-Instruct-2507 |
1000+ | 512+ | 16+ |
Hub d'environnements RL (prime env)
prime env list
prime env info owner/environment-name
prime env install owner/environment-name
prime env init my-new-environment
Prime Tunnel (prime tunnel)
# Exposer un service local
prime tunnel start --port 8000
# Avec authentification de base (mot de passe auto-généré, affiché une fois)
prime tunnel start --port 8000 --auth alice
Retourne une URL HTTPS publique comme https://t-0-abc123def456.tunnel.pinfra.io. Les évaluations hébergées peuvent utiliser les tunnels avec le drapeau --allow-tunnel-access.
Erreurs courantes
- Oublier de nettoyer les disques : les disques sont facturés continuellement jusqu'à leur suppression explicite, même après l'arrêt des pods. Utilisez toujours
prime disks deletequand vous avez terminé. - Utiliser
--envpour les secrets : les variables d'env sont en texte brut et visibles lors de l'inspection. Utilisez--secretpour les credentials. - Délai d'inactivité des sandboxes avec SSH : les sessions SSH ne comptent pas comme une activité. Un sandbox peut être supprimé alors que vous avez une session SSH active.
- Restrictions de ports : les ports 8080, 2222 et 8081 ne peuvent pas être exposés. La plage valide est 22-9000.
- Limite de 200 MB pour le transfert de fichiers : les téléversements/téléchargements de fichiers individuels sont limités à 200 MB. Utilisez plusieurs appels ou compressez d'abord.
- Ne pas définir le contexte d'équipe : si la facturation est à l'équipe, définissez
prime config set-team-idavant le provisioning, ou passez--team-idpar commande. - Compatibilité des templates personnalisés : assurez-vous que les templates sont compatibles avec la configuration GPU sélectionnée avant de créer des pods.