CLI - Utiliser vos données dans un notebook
Découvrez comment accéder à vos données depuis votre Object Storage dans votre AI Notebooks
Objectif
Ce guide montre comment accéder aux données de votre Object Storage depuis vos notebooks.
Prérequis
- une CLI
ovhaifonctionnelle (comment installer la CLI ovhai)
Envoyer des données vers votre Object Storage
Tout d'abord, nous devons envoyer des données vers l'Object Storage avant d'y accéder depuis le notebook.
En supposant qu'un fichier nommé my-dataset.zip existe dans votre répertoire de travail actuel, vous pouvez utiliser la commande suivante
pour créer un conteneur de données nommé my-dataset dans la région GRA qui contiendra votre fichier my-dataset.zip.
Ce fichier peut désormais être accédé depuis vos notebooks, avec des permissions en lecture seule ou en lecture-écriture.
Accéder avec des permissions en lecture seule
Pour accéder à votre dataset, vous pouvez utiliser l'option --volume.
Cette commande peut se lire comme "Charger le conteneur my-dataset depuis la région GRA, dans le répertoire /workspace/datasets,
avec des permissions ro (lecture seule)".
Attendez quelques secondes que le notebook démarre, puis vous devriez voir son URL dans la sortie, accessible depuis votre navigateur. Vous pouvez consulter la page Démarrer pour savoir comment trouver cette URL.
Vous devriez obtenir une page comme celle-ci, montrant votre dataset dans l'explorateur de fichiers :
Vous ne pourrez pas modifier le dataset depuis ce notebook car vous l'avez chargé avec des permissions en lecture seule.
Les permissions en lecture seule permettent de vous assurer que vous ne modifiez pas vos données par erreur. Si vous souhaitez modifier des données depuis vos notebooks, pour stocker un réseau de neurones entraîné par exemple, vous pouvez utiliser la permission en lecture-écriture à la place.
Accéder avec des permissions en lecture-écriture
De la même manière que le mode lecture seule, vous pouvez utiliser l'option --volume pour charger des données avec la permission en lecture-écriture.
La seule différence est que vous spécifiez rw au lieu de ro dans la commande :
Une fois que vous avez des données que vous souhaitez sauvegarder (un réseau de neurones entraîné dans cet exemple), vous pouvez simplement les écrire
dans le dossier /workspace/neural-networks.
Ce dossier sera envoyé vers votre Object Storage lorsque vous arrêterez votre notebook.
Tant que votre notebook est à l'état STOPPING, cela signifie que l'envoi est toujours en cours. Une fois que l'état
passe à STOPPED, cela signifie que toutes les données ont été envoyées vers votre Object Storage.
Avec la permission RW, vous pouvez ajouter ou modifier des données mais vous ne pouvez pas les supprimer définitivement de votre Object Storage.
Si vous souhaitez ajouter, modifier ou supprimer des données, connectez votre volume avec la permission lecture-écriture-suppression en spécifiant RWD au lieu de RW.
Attacher un dépôt Git public
Si du code Python, des notebooks ou d'autres fichiers sont disponibles sur un dépôt GitHub public, vous pouvez les attacher à votre notebook avec l'option --volume.
Pour pouvoir les éditer et les modifier facilement, utilisez la permission en lecture-écriture (raccourcie en : rw).
La commande est la suivante :
Pour que votre commande soit valide, n'oubliez pas d'ajouter .git à la fin de l'URL du dépôt GitHub.
Accéder à plusieurs volumes
Dans de nombreux cas, vous avez besoin d'au moins un volume pour votre dataset, et d'un autre pour stocker vos résultats. Vous pouvez charger autant
de volumes que vous le souhaitez en enchaînant les options --volume :
Dans ce cas, nous avons chargé my-dataset en lecture seule, et my-neural-networks ainsi que le dépôt GitHub en mode lecture-écriture.
Utiliser des volumes mis en cache
Lors du chargement de fichiers volumineux depuis l'Object Storage, le téléchargement vers vos notebooks peut prendre du temps. Dans ces cas, vous pouvez mettre les volumes en cache afin qu'ils n'aient pas besoin d'être téléchargés à nouveau lorsque vous démarrez de nouveaux notebooks utilisant les mêmes données.
Pour cela, vous pouvez ajouter :cache après les permissions lors de la spécification des volumes :
Les volumes mis en cache seront supprimés au moins 72 heures après l'arrêt du dernier notebook qui les utilisait. Notez que le cache est partagé entre tous les utilisateurs de votre projet. La principale conséquence à surveiller est que si quelqu'un d'autre modifie les données de votre volume mis en cache, vous verrez également les modifications de votre côté.
Mettre à jour la configuration d'un volume
Il est possible de mettre à jour la configuration des volumes d'un notebook avec la commande patch.
Cela peut être pratique si vous avez besoin ultérieurement d'un nouvel object storage et que vous ne souhaitez pas recréer tout le notebook.
Pour cela, utilisez la commande patch avec l'option --volume :
Il s'agit de la même option que pour la commande run ci-dessus. Vous pouvez choisir de monter le volume en lecture seule ou en lecture-écriture, et monter plusieurs volumes.
Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.
Nous voulons vos retours !
N’hésitez pas à nous faire part de vos questions, retours et suggestions pour améliorer le service :
- Sur le serveur Discord OVHcloud