Copie d'un environnement conda vers une autre région

Dans ce tutoriel, vous allez installer un environnement conda dans une session de bloc-notes. Vous allez ensuite procéder aux étapes nécessaires pour installer le même environnement conda dans une deuxième session de bloc-notes hébergée dans une autre région.

Les principales tâches expliquent comment :

  • créer deux buckets dans deux régions différentes de votre location,
  • inscrire chaque bucket auprès d'une session de bloc-notes dans sa région,
  • installer un environnement conda dans la première session de bloc-notes,
  • publier l'environnement conda (faire en sorte que l'environnement conda soit prêt à être installé à partir de n'importe quelle session de bloc-notes ayant accès à l'environnement),
  • ajouter, à partir de la première session de bloc-notes, l'environnement conda publié à un bucket de la même région,
  • copier l'environnement conda publié d'un bucket vers un autre,
  • installer, dans une session de bloc-notes de la deuxième région, l'environnement conda à l'aide du deuxième bucket.

Pour plus d'informations, reportez-vous à :

Avant de commencer

Pour effectuer ce tutoriel, vous devez disposer des éléments suivants :

Exigences
  • Un compte Oracle Cloud Infrastructure (OCI) a payé ou un nouveau compte avec promotions Oracle Cloud. Reportez-vous à Demande et gestion des promotions Oracle Cloud gratuites.

  • Un ordinateur macOS, Linux ou Windows.
  • Un tutoriel Data Science :
    • Suivez toutes les étapes du guide Configuration manuelle d'une location Data Science et créez deux sessions d'un bloc-notes avec les propriétés suivantes :
      • Indiquez le nom du compartiment data-science-work pour votre travail.
      • Créez des sessions de bloc-notes dans deux régions :
        • Pour changer de région, dans la barre de navigation supérieure de la console, sélectionnez votre région, puis cliquez sur le nom d'une nouvelle région. Par exemple, passez de US West (Phoenix) à US East (Ashburn).
        • Nommez les projets et les sessions de bloc-notes :
          • Dans <region-1> : Initial Project et my-first-notebook-session
          • Dans <region-2> : Second Project et my-second-notebook-session

1. Création de buckets

Créez deux buckets pour stocker les environnements conda de my-first-notebook-session et de my-second-notebook-session.

Création de deux buckets

Créez un bucket dans <region-1> et un autre dans <region-2>.

  1. Ouvrez le menu de navigation et sélectionnez Stockage. Sous Object Storage et Archive Storage, cliquez sur Compartiments.
  2. Dans la navigation de gauche, sous Portée de la liste, sélectionnez le compartiment data-science-work.
  3. Dans la barre de navigation supérieure, sélectionnez <region-1>. Par exemple : US West (Phoenix).
  4. Sélectionnez Créer un bucket.
  5. Renseignez les informations suivantes :
    • Nom : bucket-1
    • Laissez la valeur par défaut dans les autres champs:
      • Niveau de stockage par défaut : Standard
      • Cryptage : crypter à l'aide des clés gérées par Oracle
  6. Sélectionnez Créer.
  7. Dans la liste des buckets, assurez-vous que bucket-1 a une visibilité privée :
    Les buckets sont privés, sauf si vous modifiez leur visibilité après les avoir créés.
  8. Dans la barre de navigation supérieure, sélectionnez <region-1>. Dans la liste des régions, sélectionnez <region-2>. Par exemple, passez à US East (Ashburn).
  9. Répétez les étapes précédentes pour créer bucket-2 dans <region-2>.
Vous avez créé deux buckets privés dans deux régions différentes.
Obtention de l'espace de noms de la location

Chaque location possède un nom d'espace de noms Object Storage non mutable et unique généré par le système. Ce nom d'espace de noms est identique dans toutes les régions. Cette étape consiste à copier le nom d'espace de noms et à l'utiliser ultérieurement pour inscrire vos buckets auprès de vos sessions de bloc-notes.

  1. Ouvrez le menu de navigation et sélectionnez Stockage. Sous Object Storage et Archive Storage, cliquez sur Compartiments.
  2. Dans la navigation de gauche, sous Portée de la liste, sélectionnez le compartiment data-science-work.
  3. Dans la barre de navigation supérieure, sélectionnez <region-2>. Par exemple : US East (Ashburn).
  4. Dans la liste des buckets, sélectionnez bucket-2.
  5. Copiez l'espace de noms dans un bloc-notes : <tenancy-namespace>.
    Remarque

    Les noms d'espace de noms sont uniques au sein d'une location. Si bucket-1 et bucket-2 se trouvent dans des locations différentes, copiez les noms d'espace de noms pour les deux buckets.

2. Publication d'un environnement conda dans la région 1

Installez un environnement conda dans la session de bloc-notes. Ensuite, à partir de la session de bloc-notes, publiez l'environnement conda vers un bucket.

Inscrire le bucket-1

Inscrivez bucket-1 auprès de my-first-notebook-session.

  1. Dans la barre de navigation supérieure de la console, sélectionnez <region-1>.
  2. Dans la navigation de gauche, sous Portée de la liste, sélectionnez le compartiment data-science-work.
  3. Ouvrez le menu de navigation et sélectionnez Analytics et IA. Sous Machine Learning, sélectionnez Data Science.
  4. Sous la liste des projets, sélectionnez Initial Project.
  5. Sélectionnez my-first-notebook-session, puis cliquez sur Ouvrir.
  6. Entrez vos informations d'identification pour accéder au bloc-notes interactif JupyterLab.
  7. Dans l'interface utilisateur, si vous ne disposez pas d'un onglet nommé Lanceur, cliquez sur Fichier, puis sur Nouveau Lanceur.
  8. Dans le lanceur, sous Autre, sélectionnez l'icône Terminal pour démarrer une nouvelle session de terminal.
  9. Dans le terminal, entrez la commande suivante.

    Remplacez <tenancy-namespace> par les informations collectées dans la section Création de buckets.

    odsc conda init -b bucket-1 -n <tenancy-namespace>
                                    
  10. Accédez à Fichier, puis sélectionnez Ouvrir à partir du chemin.... Dans le champ Chemin d'ouverture, entrez /conda.
  11. Pour vérifier que la commande précédente a inscrit le bucket auprès du bloc-notes, sous le dossier conda, cliquez sur config.yaml et recherchez bucket-1 et votre espace de noms dans le bloc de code suivant :
    auth_mode: resource_principal
    bucket_info:
      name: bucket-1
      namespace: <tenancy-namespace>
    pack_prefix: conda_environments
Installation d'un environnement conda

Installez un environnement conda Data Science prédéfini dans votre session de bloc-notes.

  1. Dans my-first-notebook-session, cliquez sur Fichier, puis sur Nouveau lanceur.
  2. Dans le lanceur, sous Extensions, sélectionnez l'icône Explorateur d'environnement.
  3. Dans la liste des environnements conda, développez ONNX 1.10 pour l'UC sur Python 3.9.
  4. Copiez la commande pour installer ONNX 1.10 for CPU on Python 3.9 et collez-la dans un terminal :
    odsc conda install -s onnx110_p39_cpu_v1 
    • Pour le numéro de version, conservez la valeur affichée par défaut, par exemple 1.0.
    • Exemple de sortie :
      Version number [1.0]? 
      Environment slug: onnx110_p39_cpu_v1
      INFO:ODSC:Verifying that /home/datascience/conda/onnx110_p39_cpu_v1 exists.
      INFO:ODSC:Downloading conda pack onnx110_p39_cpu_v1...
      INFO:ODSC:Writing to /home/datascience/.onnx110_p39_cpu_v1.tar.gz
      Downloading pack onnx110_p39_cpu_v1: 100% ...INFO:ODSC:download complete
      INFO:ODSC:Extracting conda pack /home/datascience/.onnx110_p39_cpu_v1.tar.gz...
      INFO:ODSC:Downloading Notebooks for the pack: ONNX 1.10 for CPU on Python 3.9
      INFO:ODSC:Checking for notebooks with prefix notebooks/onnx110_p39_cpu_v1/
      Saving Notebooks:   0%|                                                                                       | 0/1 [00:00<?, ?it/s]INFO:ODSC:Notebook location /home/datascience/conda/notebooks/onnx110_p39_cpu_v1/getting-started.ipynb...
      Saving Notebooks: 100%| 1/1 [00:00<00:00,  8.28it/s]
      INFO:ODSC:Start to update the kernel name...
      INFO:ODSC:Conda environment setup complete.
      The environment setup is complete. 
      To activate it for use in the terminal run `conda activate /home/datascience/conda/onnx110_p39_cpu_v1`. 
      It may take a few seconds for the kernel to appear in the JupyterLab launcher. 
      To change the description of the environment, update /home/datascience/conda/onnx110_p39_cpu_v1/*_manifest.yaml. 
  5. Vérifiez que le package est installé :
    odsc conda list -l

    Exemple de sortie :

    packages:
      local_ONNX_1.10_for_CPU_on_Python_3.9_1.0:
      - arch_type: CPU
        conda_name: onnx110_p39_cpu_v1
        description: 'This environment is designed to provided to test and execute your
          ONNX model artifacts. ONNX is an open source, open model format which allows
          you to save a model from different machine learning (ML) libraries into a single,
          portable format that is independent of the training library. ONNX models can
          be deployed through Oracle Cloud Infrastruture Data Science Model Deployment
          service. Use this conda environment to convert models from most ML libraries
          into ONNX format. Then use the ONNX runtime to perform inferencing. Review the
          processing steps that your model makes by having ONNX generate a graph of the
          model workflow.
    
          To get started with the ONNX environment, review the getting-started notebook.
    
          '
        libraries:
        - onnx (v1.10.2)
        - onnxconverter-common (v1.9.0)
        - onnxmltools (v1.10.0)
        - onnxruntime (v1.10.0)
        - oracle-ads (v2.6.1)
        logo: onnx
        manifest_version: '1.0'
        name: ONNX 1.10 for CPU on Python 3.9
        notebooks:
        - notebooks/onnx110_p39_cpu_v1/
        pack_path: oci://service-conda-packs@id19sfcrra6z/service_pack/cpu/ONNX_1.10_for_CPU_on_Python_3.9/1.0/onnx110_p39_cpu_v1
        python: '3.9'
        slug: onnx110_p39_cpu_v1
        type: local
        version: '1.0'
  6. Dans l'explorateur d'environnement, sélectionnez l'icône d'actualisation.
  7. Sélectionnez le lien Environnements conda installés.
  8. Sous la liste des environnements conda, vérifiez que ONNX 1.10 pour CPU sur Python 3.9 est répertorié.
  9. A présent, sélectionnez Fichier puis Nouveau lanceur. Dans la section Noyaux, recherchez votre environnement conda publié, ONNX 1.10 for CPU on Python 3.9, répertorié en tant qu'icône.
Vous avez installé un environnement conda dans votre session de bloc-notes dans <region-1>.
Publication de l'environnement conda

Publiez l'environnement conda dans un bucket inscrit auprès de la session de bloc-notes.

  1. Dans my-first-notebook-session, dans l'explorateur d'environnement, sélectionnez Environnements conda installés.
  2. Développez ONNX 1.10 for CPU on Python 3.9.
  3. Copiez la commande pour publier ONNX 1.10 for CPU on Python 3.9 :
  4. Copiez la commande pour publier ONNX 1.10 for CPU on Python 3.9 et collez la commande de publication dans un terminal dans votre session de bloc-notes, puis appuyez sur Entrée.
    odsc conda publish -s onnx110_p39_cpu_v1

    Exemple de sortie :

    INFO:ODSC:Saving onnx110_p39_cpu_v1
    INFO:ODSC:Loading environment information from /home/datascience/conda/onnx110_p39_cpu_v1/ONNX_1.10_for_CPU_on_Python_3.9_manifest.yaml.
    INFO:ODSC:Overwriting manifest file at /home/datascience/conda/onnx110_p39_cpu_v1/ONNX_1.10_for_CPU_on_Python_3.9_manifest.yaml with latest dependency information
    /opt/conda/lib/python3.8/site-packages/conda_pack/core.py:56:
    ...
    INFO:ODSC:Saving conda environment to object storage: {'name': 'bucket-1', 'namespace': '<tenancy-namespace>'}
    INFO:ODSC:The upload id is <some-id>.
    ...
    INFO:ODSC:/home/datascience/conda/tmp/onnx110_p39_cpu_v1.tar.gz uploaded successfuly..
    INFO:ODSC:Conda env saved...
  5. Dans l'explorateur d'environnement, sélectionnez Actualiser.
  6. Sélectionnez le lien Environnements conda publiés.
  7. Sous la liste des environnements conda, vérifiez que ONNX 1.10 pour CPU sur Python 3.9 est répertorié.
Vous avez publié un environnement conda vers un bucket dans <region-1>.

3. Copie du bucket vers la région 2

Copiez votre environnement conda publié à partir de bucket-1 vers bucket-2.

Copie du contenu du bucket

Votre environnement conda publié est stocké en tant qu'objet dans bucket-1. Copiez cet objet vers bucket-2.

  1. Ouvrez le menu de navigation et sélectionnez Stockage. Sous Object Storage et Archive Storage, cliquez sur Compartiments.
  2. Dans la navigation de gauche, sous Portée de la liste, sélectionnez le compartiment data-science-work.
  3. Dans la barre de navigation supérieure, sélectionnez <region-1>. Par exemple : US West (Phoenix).
  4. Sélectionnez bucket-1.
  5. Sous Objets, développez conda_environments, cpu, ONNX 1.10 for CPU on Python 3.9 et 1.0 pour accéder à onnx110_p39_cpu_v1.
  6. Sélectionnez le menu Actions (trois points) de onnx110_p39_cpu_v1, puis cliquez sur Copier.
  7. Renseignez les informations suivantes :
    • Espace de noms de destination : <tenancy-namespace>
    • Région de destination : <region-2>, par exemple, US East (Ashburn).
    • bucket de destination : bucket-2
    • Nom de l'objet de destination : pour conserver la structure de répertoires, gardez la chaîne par défaut.
    • Laissez la valeur par défaut dans les autres champs:
      • Niveau de stockage de destination : (laissez vide)
      • Règle d'écrasement : Ecraser l'objet de destination
  8. Sélectionnez Copier l'objet.
  9. Si vous obtenez une section d'avertissement indiquant que les instructions de stratégie IAM ne sont pas correctes, sélectionnez Essayer d'ajouter des instructions.
    Allow service objectstorage-<region-1> to manage object-family in compartment data-science-work

    Si vous n'avez pas reçu ce message d'avertissement, ignorez les trois étapes suivantes.

  10. Dans le panneau Ajouter une stratégie IAM, conservez les valeurs par défaut.
    • Nom : console-iam-policy-<timestamp>
    • Description : instructions de stratégie IAM créées par la console sur <timestamp>
    • Ajouter une instruction de stratégie au compartiment racine : non sélectionné
    • Instructions de stratégie:
      Allow service objectstorage-<region-1> to manage object-family in compartment data-science-work
  11. (Facultatif) Pour autoriser la copie d'objets d'autres régions vers votre compartiment, vous pouvez ajouter la stratégie suivante à la section Instructions de stratégie du panneau Ajouter une stratégie IAM
    Remarque

    Afin d'autoriser la copie d'objets d'autres régions vers votre compartiment, pour chaque région, sur une nouvelle ligne, ajoutez la stratégie suivante à la section Instructions de stratégie du panneau Ajouter une stratégie IAM :
    allow service objectstorage-<region_name> to manage object-family in compartment data-science-work
    Pour la variable <region_name>, voici quelques exemples de valeurs :
    • objectstorage-us-phoenix-1
    • objectstorage-us-ashburn-1
    • objectstorage-eu-frankfurt-1
    • objectstorage-uk-london-1
    • objectstorage-ap-tokyo-1

    object-storage-<region_name> contient le bucket source et effectue l'opération de copie.

    Pour obtenir la liste complète des noms de région, reportez-vous au tableau de la page Régions et domaines de disponibilité.

    Pour plus de détails sur la copie d'objets vers d'autres régions, reportez-vous à Droits d'accès de service.

  12. Sélectionnez Créer.
  13. Attendez d'obtenir le message suivant : Stratégies ajoutées.
  14. Sélectionnez Copier l'objet.
  15. Dans la boîte de dialogue Détails de la demande de travail, vérifiez que le statut indique Terminé, avec un pourcentage d'avancement de 100 %. Ensuite, Fermez la boîte de dialogue.
Vérification du contenu dans le deuxième bucket

Vérifiez que l'environnement conda publié est stocké en tant qu'objet dans bucket-2.

  1. Dans la barre de navigation supérieure, sélectionnez <region-2>. Par exemple : US East (Ashburn).
  2. Sélectionnez bucket-2.
  3. Sous Objets, développez conda_environments, cpu, ONNX 1.10 for CPU on Python 3.9 et 1.0 pour accéder à onnx110_p39_cpu_v1.
Vous avez copié un environnement conda publié de bucket-1 vers bucket-2.

4. Installation de l'environnement conda dans la région 2

Inscrivez bucket-2 auprès d'une session de bloc-notes de la deuxième région. Ensuite, installez et affichez l'environnement conda dans la session de bloc-notes.

Inscrire le bucket-2

Inscrivez bucket-2 auprès de my-second-notebook-session dans <region-2>.

  1. Dans la barre de navigation supérieure de la console, sélectionnez region-2.
  2. Ouvrez le menu de navigation et sélectionnez Analytics et IA. Sous Machine Learning, sélectionnez Data Science.
  3. Dans la navigation de gauche, sous Portée de la liste, sélectionnez le compartiment data-science-work.
  4. Sous la liste des projets, sélectionnez Second Project.
  5. Sélectionnez my-second-notebook-session, puis cliquez sur Ouvrir.
  6. Entrez vos informations d'identification pour accéder à l'interface utilisateur JupyterLab.
  7. Si vous ne disposez pas d'un onglet nommé Lanceur, cliquez sur Fichier, puis sur Nouveau lanceur.
  8. Dans le lanceur, sélectionnez Terminal.
  9. Dans le terminal, entrez la commande suivante.

    Remplacez <tenancy-namespace> par les informations collectées dans la section Création de buckets.

    odsc conda init -b bucket-2 -n <tenancy-namespace>
                                    
  10. Vérifiez que votre bucket est inscrit auprès de votre bloc-notes :

    Dans la section de l'explorateur de fichiers, sous le dossier conda, sélectionnez config.yaml et examinez le fichier pour vérifier le code suivant :

    auth_mode: resource_principal
    bucket_info:
      name: bucket-2
      namespace: <tenancy-namespace>
    pack_prefix: conda_environments
Installation de l'environnement conda publié

Affichez l'environnement conda copié dans votre deuxième session de bloc-notes.

  1. Dans my-second-notebook-session, cliquez sur Fichier, puis sur Nouveau lanceur.
  2. Dans le lanceur, sous Noyaux, sélectionnez l'icône Explorateur d'environnement.
  3. Cliquez sur le lien Environnements conda publiés.
  4. Dans la liste des environnements conda, développez ONNX 1.10 pour l'UC sur Python 3.9.
    Remarque

    La présence d'un environnement conda publié dans votre session de bloc-notes implique ce qui suit :
    • L'environnement conda peut être installé dans votre session de bloc-notes.
    • L'environnement conda publié n'a peut-être pas encore été installé.
    • Pour utiliser l'environnement conda, vous pouvez l'installer à partir de cet emplacement.
    • L'environnement conda publié reste dans la liste des environnements conda publiés après son installation.
  5. Copiez la commande pour installer ONNX 1.10 for CPU on Python 3.9 et collez-la dans un terminal :
    odsc conda install -s onnx110_p39_cpu_v1 
    • Pour le numéro de version, conservez la valeur affichée par défaut, par exemple 1.0.
    • Exemple de sortie :
      Version number [1.0]? 
      Environment slug: onnx110_p39_cpu_v1
      INFO:ODSC:Verifying that /home/datascience/conda/onnx110_p39_cpu_v1 exists.
      INFO:ODSC:Downloading conda pack onnx110_p39_cpu_v1...
      INFO:ODSC:Writing to /home/datascience/.onnx110_p39_cpu_v1.tar.gz
      Downloading pack onnx110_p39_cpu_v1: 100% ...INFO:ODSC:download complete
      INFO:ODSC:Extracting conda pack /home/datascience/.onnx110_p39_cpu_v1.tar.gz...
      INFO:ODSC:Downloading Notebooks for the pack: ONNX 1.10 for CPU on Python 3.9
      INFO:ODSC:Checking for notebooks with prefix notebooks/onnx110_p39_cpu_v1/
      Saving Notebooks:   0%|                                                                                       | 0/1 [00:00<?, ?it/s]INFO:ODSC:Notebook location /home/datascience/conda/notebooks/onnx110_p39_cpu_v1/getting-started.ipynb...
      Saving Notebooks: 100%| 1/1 [00:00<00:00,  8.28it/s]
      INFO:ODSC:Start to update the kernel name...
      INFO:ODSC:Conda environment setup complete.
      The environment setup is complete. 
      To activate it for use in the terminal run `conda activate /home/datascience/conda/onnx110_p39_cpu_v1`. 
      It may take a few seconds for the kernel to appear in the JupyterLab launcher. 
      To change the description of the environment, update /home/datascience/conda/onnx110_p39_cpu_v1/*_manifest.yaml. 
  6. Dans un terminal, vérifiez que le package est installé :
    odsc conda list -l

    Exemple de sortie :

    packages:
      local_ONNX_1.10_for_CPU_on_Python_3.9_1.0:
      - arch_type: CPU
        conda_name: onnx110_p39_cpu_v1
        description: 'This environment is designed to provided to test and execute your
          ONNX model artifacts. ONNX is an open source, open model format which allows
          you to save a model from different machine learning (ML) libraries into a single,
          portable format that is independent of the training library. ONNX models can
          be deployed through Oracle Cloud Infrastruture Data Science Model Deployment
          service. Use this conda environment to convert models from most ML libraries
          into ONNX format. Then use the ONNX runtime to perform inferencing. Review the
          processing steps that your model makes by having ONNX generate a graph of the
          model workflow.
    
          To get started with the ONNX environment, review the getting-started notebook.
    
          '
        libraries:
        - onnx (v1.10.2)
        - onnxconverter-common (v1.9.0)
        - onnxmltools (v1.10.0)
        - onnxruntime (v1.10.0)
        - oracle-ads (v2.6.1)
        logo: onnx
        manifest_version: '1.0'
        name: ONNX 1.10 for CPU on Python 3.9
        notebooks:
        - notebooks/onnx110_p39_cpu_v1/
        pack_path: oci://bucket-2@<tenancy-namespace>/conda_environments/cpu/ONNX 1.10 for CPU on
          Python 3.9/1.0/onnx110_p39_cpu_v1
        python: '3.9'
        slug: onnx110_p39_cpu_v1
        type: local
        version: '1.0'
  7. Dans l'explorateur d'environnement, sélectionnez Actualiser.
  8. Sélectionnez le lien Environnements conda installés.
  9. Sous la liste des environnements conda, vérifiez que ONNX 1.10 pour CPU sur Python 3.9 est répertorié.
Vous avez installé un environnement conda à partir d'une copie publiée dans bucket-2 dans votre session de bloc-notes.

Etapes suivantes

Vous avez copié un environnement conda d'une région vers une autre et vous l'avez utilisé dans une session de bloc-notes de la deuxième région.

Pour en savoir plus sur les environnements conda, dans votre session de bloc-notes, effectuez les opérations suivantes :

  • Dans le lanceur, sous Extensions, sélectionnez l'icône Explorateur de blocs-notes. Sélectionnez ONNX Integration with the Accelerated Data Science (ADS) SDK, Ouvrir et explorez les exemples.
  • Accédez à l'explorateur d'environnement et installez d'autres environnements conda Data Science prédéfinis, non mentionnés dans ce tutoriel.