En bref
- Installez Cosmos en 10 minutes avec
pip install nvidia-cosmosou via un conteneur NGC. - Générez des déploiements synthétiques pour le pré-entraînement des politiques en robotique avec
cosmos generate --model cosmos-70b --task rollout. - Validez la fidélité physique avec
cosmos validate --physics-checksavant le déploiement dans Isaac Lab. - Intégrez Cosmos → Isaac Lab → déploiement avec zéro modification de code via NVIDIA Omniverse.
- Les coûts commencent à 0,50 $/heure-GPU (forfait Pro) ou sont gratuits pour 100 heures-GPU/mois.
1. Qu’est-ce que Cosmos : Modèles de prédiction, transfert et raisonnement
NVIDIA Cosmos est un modèle de fondation mondial pour l’IA Physique, conçu pour :
- Prédire les états futurs d’environnements dynamiques (ex. : interactions robotiques, trajectoires de véhicules autonomes).
- Transférer les connaissances des données synthétiques vers le monde réel (ex. : structure → photorealisme).
- Raisonner sur les contraintes physiques (ex. : évitement de collisions, conservation de l’énergie).
Composants clés
| Type de modèle | Cas d’usage | Exemple de commande |
|---|---|---|
| Prédiction | Simuler des trajectoires de robots ou de véhicules autonomes. | cosmos predict --model cosmos-70b --input trajectoire.json --output etats_futurs/ |
| Transfert | Randomiser le domaine des données synthétiques pour correspondre aux distributions réelles. | cosmos transfer --source synthétique --target réel --model cosmos-70b |
| Raisonnement | Valider la plausibilité physique (ex. : « Ce mouvement de robot est-il réalisable ? »). | cosmos reason --check physics --input données_mouvement.npz |
Contexte de recherche : Cosmos 1.2 (juin 2026) introduit le support des GPU Blackwell et l’entraînement multi-nœuds pour des charges de travail IA Physique à grande échelle NVIDIA Cosmos Release Notes.
2. Accès et licence NVIDIA Open Model
Étape 1 : S’inscrire pour l’accès
-
Inscrivez-vous pour un forfait gratuit (100 heures-GPU/mois) ou un plan Pro/Entreprise :
# Accédez au portail NVIDIA Cosmos curl -X POST "https://api.nvidia.com/cosmos/v1/register" \ -H "Authorization: Bearer VOTRE_CLE_API_NVIDIA" \ -H "Content-Type: application/json" \ -d '{"email": "[email protected]", "plan": "gratuit"}'- Résultat : Retourne
{"status": "approuvé", "api_key": "abc123..."}.
- Résultat : Retourne
-
Installez l’interface en ligne de commande :
pip install nvidia-cosmos --extra-index-url https://pypi.nvidia.com
Étape 2 : Accepter la licence
Cosmos utilise la licence NVIDIA Open Model (similaire à Apache 2.0, mais avec des restrictions sur :
- Redistribution des modèles pré-entraînés.
- Utilisation commerciale sans un forfait payant.
- Modification des boucles d’entraînement principales.
Acceptez la licence :
cosmos license accept
Résultat attendu :
Licence acceptée pour l’utilisateur : [email protected]
Accès aux modèles accordé : cosmos-70b, cosmos-vision-1.2
3. Génération de déploiements synthétiques pour le pré-entraînement des politiques
Utilisez Cosmos pour générer des données synthétiques destinées au pré-entraînement des politiques en robotique (ex. : apprentissage par renforcement).
Étape 1 : Définir un environnement robotique
Créez un fichier robot_config.json :
{
"robot": {
"type": "ur5e",
"dof": 6,
"base_pose": [0, 0, 0.5, 0, 0, 0, 1]
},
"environment": {
"objects": [
{"type": "cube", "dimensions": [0.1, 0.1, 0.1], "pose": [0.2, 0.2, 0.1, 0, 0, 0, 1]},
{"type": "sphere", "radius": 0.05, "pose": [0.3, 0.1, 0.15, 0, 0, 0, 1]}
],
"gravity": [0, 0, -9.81]
}
}
Étape 2 : Générer des déploiements synthétiques
Exécutez Cosmos pour générer 10 000 trajectoires synthétiques :
cosmos generate \
--model cosmos-70b \
--task rollout \
--config robot_config.json \
--output déploiements_synthétiques/ \
--num_rollouts 10000 \
--duration 10.0 # secondes par déploiement
Résultat attendu :
Génération des déploiements... [======================================] 100%
10 000 déploiements sauvegardés dans déploiements_synthétiques/
Fichiers : déploiements_synthétiques/déploiement_0001.npz, ..., déploiement_10000.npz
Étape 3 : Valider les déploiements
Vérifiez la plausibilité physique (ex. : pas de chevauchements, limites articulaires valides) :
cosmos validate \
--input déploiements_synthétiques/ \
--physics-checks \
--output rapport_validation.json
Résultat attendu :
{
"déploiements_valides": 9987,
"raisons_invalides": [
{"type": "collision", "count": 12},
{"type": "limite_articulation", "count": 1}
]
}
4. Transfert Cosmos pour des données structurelles vers photorealistes
Utilisez Cosmos pour randomiser le domaine des données synthétiques afin qu’elles correspondent aux distributions réelles.
Étape 1 : Préparer les jeux de données source et cible
- Source : Données synthétiques (
déploiements_synthétiques/). - Cible : Données réelles (
déploiements_reels/).
Étape 2 : Exécuter le transfert
cosmos transfer \
--source déploiements_synthétiques/ \
--target déploiements_reels/ \
--model cosmos-70b \
--output données_transférées/ \
--iterations 5
Résultat attendu :
Transfert de domaine en cours... [======================] 100%
10 000 échantillons transférés sauvegardés dans données_transférées/
Étape 3 : Visualiser les résultats
Utilisez NVIDIA Omniverse pour visualiser les données transférées :
cosmos visualize \
--input données_transférées/déploiement_0001.npz \
--output visualisation.usd
Ouvrez dans Omniverse :
omniverse --scene visualisation.usd
5. Validation de la fidélité physique avant de lui faire confiance
Assurez-vous que les données synthétiques sont physiquement plausibles avant d’entraîner les politiques.
Étape 1 : Exécuter les vérifications physiques
cosmos validate \
--input déploiements_synthétiques/ \
--physics-checks \
--output rapport_physique.json
Vérifications clés :
- Détection de collisions : Aucun chevauchement entre les objets.
- Limites articulaires : Les articulations du robot restent dans les plages valides.
- Conservation de l’énergie : Pas de pics non physiques dans l’énergie cinétique/potentielle.
Étape 2 : Comparer avec les données réelles
cosmos compare \
--synthetic déploiements_synthétiques/ \
--real déploiements_reels/ \
--metrics fidélité_physique \
--output comparaison.json
Résultat attendu :
{
"fidélité_physique": 0.92,
"métriques": {
"taux_de_collision": {"synthétique": 0.001, "réel": 0.0012},
"violations_de_limites_articulaires": {"synthétique": 0.0005, "réel": 0.0003}
}
}
6. Pipeline : Cosmos → Isaac Lab → Déploiement
Étape 1 : Exporter les données Cosmos vers Isaac Lab
cosmos export \
--input déploiements_synthétiques/ \
--format isaac \
--output données_isaac/
Sortie : Fichiers compatibles Isaac Lab au format .json et .npz.
Étape 2 : Entraînement dans Isaac Lab
Utilisez l’entraînement par renforcement d’Isaac Lab avec les données exportées :
isaac lab train \
--policy politique_ur5e \
--data données_isaac/ \
--iterations 1000
Étape 3 : Déploiement sur le bord
Exportez la politique entraînée vers un Jetson Orin :
isaac lab export \
--policy politique_ur5e \
--target jetson \
--output politique_ur5e_jetson.tar
Transférez vers le Jetson :
scp politique_ur5e_jetson.tar utilisateur@ip-jetson:/home/utilisateur/
ssh utilisateur@ip-jetson "tar -xvf politique_ur5e_jetson.tar && ./exécuter_politique"
7. Coûts et considérations matérielles
Exigences matérielles
| Tâche | Recommandation GPU | Estimation de temps |
|---|---|---|
| Générer 10K déploiements | 1x A100/H100/Blackwell | 2–4 heures |
| Transfert de domaine | 4x A100 (multi-GPU) | 1–2 heures |
| Validation physique | 1x CPU (pas besoin de GPU) | <1 minute |
| Entraînement dans Isaac Lab | 8x A100 (distribué) | 6–12 heures |
Répartition des coûts (forfait Pro)
| Ressource | Coût (USD) |
|---|---|
| 1x A100 (1 heure) | $0.50 |
| 4x A100 (1 heure) | $2.00 |
| 8x A100 (12 heures) | $48.00 |
| Total pour le pipeline | ~50–100 $ (selon l’échelle) |
Astuce : Utilisez des instances spot pour l’entraînement afin de réduire les coûts de 30 à 50% Documentation NVIDIA Cloud.
Que faire ensuite ?
- Expérimentez avec Cosmos Vision : Essayez
cosmos generate --task visionpour la synthèse de scènes photorealistes. - Intégrez avec LangChain : Utilisez Cosmos comme un modèle de langage personnalisé pour le raisonnement en IA Physique :
from langchain import LLMChain from nvidia_cosmos import CosmosLLM llm = CosmosLLM(model="cosmos-70b") chain = LLMChain(llm=llm, prompt="Expliquez cette trajectoire de robot...") - Optimisez pour le bord : Déployez l’inférence Cosmos sur Jetson Orin en utilisant TensorRT :
cosmos export --model cosmos-70b --target jetson --output cosmos_jetson.tar
Pour des conseils en infrastructure d’IA Physique, incluant l’intégration, le déploiement et l’optimisation des coûts de Cosmos, consultez l’offre d’accompagnement en outils IA de Hyperion Consulting.
