NVIDIA AI Enterprise sur OCI Compute

NVIDIA AI Enterprise (NVAIE) sur OCI Compute offre une expérience d'IA transparente de niveau entreprise qui minimise les frictions de déploiement, accélère l'adoption et simplifie les licences et la facturation.

Les artefacts NVAIE nécessitent un ensemble spécifique de pilotes de GPU NVIDIA et de bibliothèques CUDA. Pour Oracle Linux, les images de plate-forme incluent des pilotes spécifiques NVAIE. Pour Ubuntu, suivez les étapes d'installation fournies dans la documentation relative aux images OCI Ubuntu. En outre, OCI fournit un ensemble organisé d'environ 90 conteneurs NVIDIA de haute priorité et des graphiques Helm pour les environnements Oracle. Ces artefacts incluent des modèles open source, des conteneurs NVIDIA NeMo pour les charges de travail RAG et agentic, et des modèles BioNeMo pour les soins de santé. Vous pouvez demander des artefacts supplémentaires si vos cas d'emploi ne figurent pas dans l'ensemble d'options en cours. OCI garantit la parité complète des versions, bien que les synchronisations régulières avec le NGC de NVIDIA (référentiel de conteneurs et d'artefacts de NVIDIA), y compris toutes les métadonnées, les résultats d'analyse et les détails d'artefact.

Utilisation des images NVAIE

NVIDIA AI Enterprise nécessite un ensemble spécifique de pilotes GPU pour exécuter ses conteneurs. OCI prend en charge les systèmes d'exploitation de GPU Ubuntu et Oracle Linux. Pilotes propres à NVAIE inclus dans les images de base pour Oracle Linux.

Conditions requises pour le pilote NVAIE

  • Pilote NVIDIA version 560 ou ultérieure.

    Si vous exécutez un GPU de centre de données, par exemple un NVidia A100, vous pouvez utiliser le pilote NVIDIA version 470.57 ou ultérieure, 535.86 ou ultérieure, ou 550.54 ou ultérieure.

  • NVIDIA Docker 23.0.1 ou version ultérieure.
  • CUDA 12.6.1 ou version ultérieure.

Création d'une instance NVAIE

Pour créer une instance, suivez les étapes décrites dans Création d'une instance.

Une fois que vous avez atteint la section Image et forme, suivez ces étapes.

  • Sélectionnez Modifier l'image.
  • Sélectionnez une image Oracle Linux ou Ubuntu. Choisissez Sélectionner une image.
  • Sous Forme, sélectionnez Modifier la forme.
  • Pour Type d'instance, sélectionnez Bare Metal.

    Toutes les formes de GPU NVidia disponibles sont affichées

  • Sélectionnez n'importe quelle forme NVidia disponible en fonction de vos besoins de déploiement. Sélectionnez Sélectionner une forme.
  • Pour activer NVidia AI Enterprise pour cette instance, sélectionnez Activer NVIDIA AI Enterprise.
  • Sélectionnez Suivant.
  • Passez aux étapes répertoriées pour Création d'une instance.
  • Sélectionnez Créer pour créer l'instance.

Création d'une configuration d'instance NVAIE

Créez une configuration d'instance pour définir un modèle d'instance que vous pouvez utiliser pour créer d'autres instances. Une configuration d'instance est requise pour créer un pool d'instances.

Pour créer une configuration d'instance, suivez les étapes décrites dans Création d'une configuration d'instance.

Une fois que vous avez atteint la section Image et forme, suivez ces étapes.

  • Sélectionnez Modifier l'image.
  • Sélectionnez une image Oracle Linux ou Ubuntu. Choisissez Sélectionner une image.
  • Sous Forme, sélectionnez Modifier la forme.
  • Pour Type d'instance, sélectionnez Bare Metal.

    Toutes les formes de GPU NVidia disponibles sont affichées

  • Sélectionnez n'importe quelle forme NVidia disponible en fonction de vos besoins de déploiement. Sélectionnez Sélectionner une forme.
  • Pour activer NVidia AI Enterprise pour cette instance, sélectionnez Activer NVIDIA AI Enterprise.
  • Sélectionnez Suivant.
  • Passez aux étapes répertoriées pour Création d'une configuration d'instance.
  • Sélectionnez Créer pour créer la configuration d'instance.

Création d'un pool d'instances NVAIE

Pour créer un pool d'instances, suivez les étapes décrites dans Création de pools d'instances.

Dans la section des détails de base, sélectionnez la configuration d'instance créée à l'aide d'une forme NVidia.

Continuez en suivant les étapes décrites dans Création de pools d'instances jusqu'à ce que le pool d'instances soit créé.

Utiliser les composants NVAIE de Marketplace

Vous pouvez importer des conteneurs NVAIE et des graphiques Helm à partir de Marketplace. Suivez ces étapes pour accéder à Marketplace.

  • Dans le menu principal, sélectionnez Marketplace.
  • Sous Marketplace, sélectionnez Toutes les applications. La page principale Marketplace s'affiche.
  • Utilisez le filtre Type pour sélectionner des images de conteneur ou des graphiques Helm.
  • Par exemple, pour identifier les graphiques Helm NVAIE, vous pouvez saisir une chaîne telle que Llama-3.1-8B-Instruct-NIM-microservice pour afficher les graphiques Llama 3.

Ajout de composants NVAIE à OCIR

Oracle Cloud Infrastructure Registry (OCIR), également connu sous le nom de Container Registry, est un registre géré par Oracle qui vous permet de stocker, de partager et de gérer facilement des images de conteneur (telles que des images Docker). Pour ajouter un conteneur de marché NVAIE à OCIR, procédez comme suit :

  • Dans le menu principal, sélectionnez Marketplace.
  • Sous Marketplace, sélectionnez Toutes les applications. La page principale Marketplace s'affiche.
  • Utilisez le filtre Type pour sélectionner des images de conteneur.
  • Sélectionner un conteneur.
  • Sélectionnez Exporter le package.
  • Renseignez les informations suivantes :
    • Compartiment : sélectionnez un compartiment.
    • Registre OCI : sélectionnez un registre existant ou créez-en un nouveau. Pour créer un registre, procédez comme suit :
    • Nom de registre : entrez le nom de votre registre.
    • Accès : sélectionnez Privé ou Public.
  • Acceptez les conditions générales pour le conteneur.
  • Sélectionnez Exporter. L'instance OCIR est créée et le composant NVAIE sélectionné est copié.

Déploiement d'une image NVAIE sur Docker

Une fois que vous avez créé une image de conteneur NVAIE, vous pouvez la déployer vers une instance. Les étapes suivantes fournissent un exemple.

  • Extrayez l'image du conteneur à partir d'OCIR :
    docker pull {region}.ocir.io/{your_ocir_repo}/nvaie-multi-llm-nim:1.14.0
  • Créez un cache local.
    Remarque

    Il s'agit d'une étape facultative, mais le résultat conserve les poids importants hors de la couche accessible en écriture.
    mkdir -p ~/.cache/nim
  • Exécutez le conteneur.
    docker run -d --gpus all -p 8000:8000 -v ~/.cache/nim:/opt/nim/.cache  {region}.ocir.io/{your_ocir_namespace}/nvaie-multi-llm-nim:1.14.0
  • Exécutez un test de fumée rapide.
    curl http://localhost:8000/v1/models

Accès aux modèles d'IA NVidia à partir de buckets S3 régionaux

Lors de l'exécution, le conteneur Multi-NIM nécessite un modèle pour son initialisation de rendu. Dans OCI, ces modèles sont stockés dans chaque région dans OC1 (le domaine commercial) dans des buckets S3. Le conteneur utilise les variables d'environnement suivantes :

        -e AWS_ACCESS_KEY_ID="$AWS_ACCESS_KEY_ID" \
        -e AWS_SECRET_ACCESS_KEY="$AWS_SECRET_ACCESS_KEY" \
        -e AWS_REGION="${region}" \
        -e AWS_ENDPOINT_URL="https://bmcinfraorch.compat.objectstorage.${region}.oraclecloud.com/" \
        -e NIM_MODEL_NAME="s3repo://nvaie/meta-llama/Llama-3.1-8B-Instruct"

Autorisation

Pour accéder au bucket NVIDIA AI dans chaque région, vous devez être autorisé à l'aide d'un ID de clé d'accès et d'une clé d'accès secrète. Ces clés doivent être configurées dans votre location en suivant ce guide : Création d'une clé secrète client. Stockez les clés et les clés secrètes dans un coffre sécurisé ou un service de clé secrète. Récupérez les clés si nécessaire.

Région

Les régions d'origine varient en fonction de la location. Pour des raisons de performances, en tant que meilleure pratique, extrayez des modèles de la même région dans laquelle le conteneur d'IA NVIDIA s'exécute. Pour ce faire, identifiez l'identificateur de région et définissez-le dans les paramètres d'environnement. Le guide suivant décrit les différentes régions et les identificateurs de région associés : Régions et identificateurs OCI.

URL de l'adresse

Après avoir identifié votre autorisation et votre région, dériver l'URL endpoint (AWS_ENDPOINT_URL). Suivez ce guide : Adresses dédiées Object Storage.

Les URL S3 suivent ce modèle pour la compatibilité S3 : <$namespace>.compat.objectstorage.<$region>.oraclecloud.com.

  • La valeur <$namespace> pour les modèles Nvidia AI est toujours bmcinfraorch.
  • La valeur <$region> est l'identificateur de région.

Pour accéder au bucket dans Ashburn avec l'identificateur us-ashburn-1, l'URL d'adresse est la suivante : https://bmcinfraorch.compat.objectstorage.us-ashburn-1.oraclecloud.com/

Il est recommandé de créer une variable de région similaire à l'exemple suivant : https://bmcinfraorch.compat.objectstorage.${region}.oraclecloud.com/"

Noms de modèle

Les modèles sont accessibles dans chaque région via des buckets s3. Chaque modèle est organisé sous un dossier racine nommé nvaie.

Par exemple : s3repo://nvaie/

Pour charger le LLM d'instruction Llama de Meta, la variable d'environnement est définie comme suit :
-e NIM_MODEL_NAME="s3repo://nvaie/meta-llama/Llama-3.1-8B-Instruct"

Résumé

L'exemple de script docker suivant charge le conteneur multi-nim version 1.14.0 et injecte le LLM Llama de Meta dans la région d'Ashburn.


image='iad.ocir.io/imagegen/nvaie-multi-llm-nim:1.14.0'
region='us-ashburn-1'
docker run \
        --gpus all \
        --ipc=host \
        --ulimit memlock=-1 \
        --ulimit stack=67108864 \
        -p 8000:8000  \
        -e AWS_ACCESS_KEY_ID="$AWS_ACCESS_KEY_ID" \
        -e AWS_SECRET_ACCESS_KEY="$AWS_SECRET_ACCESS_KEY" \
        -e AWS_REGION="${region}" \
        -e AWS_ENDPOINT_URL="https://bmcinfraorch.compat.objectstorage.${region}.oraclecloud.com/" \
        -e NIM_MODEL_NAME="s3repo://nvaie/meta-llama/Llama-3.1-8B-Instruct" \
        $image