_________ ____ ___ ___ / /__ __
/ ___/ __ / __ `__ / _ / __/ |/_/
/ /__/ /_/ / / / / / / __/ /__> <
___/____/_/ /_/ /_/___/__/_/|_|
Extensions open source pour le SDK Comet.
Ces extensions sont créées et prises en charge par la communauté et ne constituent pas un projet officiel de Comet ML. Nous apprécions les contributions !
pip install cometx
Pour utiliser ces fonctions de ligne de commande, vous devez définir votre clé API Comet de l'une des deux manières suivantes.
Soit de cette façon :
export COMET_API_KEY="YOUR-COMET-API-KEY"
ou de cette façon :
[comet]
api_key = YOUR-COMET-API-KEY
Si vous êtes un utilisateur Comet sur site, vous devrez également définir la variable d'environnement COMET_URL_OVERRIDE
ou l'ajouter à votre fichier ~/.comet.config
comme ci-dessous :
Soit de cette façon :
export COMET_API_KEY="YOUR-COMET-API-KEY"
export COMET_URL_OVERRIDE="https://your-companys-comet.com/clientlib/"
ou de cette façon :
[comet]
api_key = YOUR-COMET-API-KEY
url_override = https://your-companys-comet.com/clientlib/
cometx
est composé d'une série de sous-commandes utiles indépendamment et peuvent être utilisées ensemble pour créer des outils sophistiqués pour la gestion du ML.
Cette section examinera quelques utilisations courantes, suivie d'une exploration plus détaillée de chaque sous-commande.
Dans cette section, nous explorerons quelques scénarios courants.
Un idiome utile consiste à définir vos variables d'environnement Comet sur la ligne d'une sous-commande. De cette manière, vous pouvez définir COMET_URL_OVERRIDE
et COMET_API_KEY
pour différentes installations.
Bien entendu, vous n'avez pas besoin de définir les variables d'environnement si vous copiez des expériences sur la même installation Comet.
Voici comment télécharger les expériences dans WORKSPACE/PROJECT depuis http://comet.a.com :
COMET_URL_OVERRIDE=http://comet.a.com/clientlib
COMET_API_KEY=A-KEY
cometx download WORKSPACE/PROJECT
La sous-commande cometx download
télécharge toutes les données de l’expérience Comet dans des fichiers locaux. Notez que WORKSPACE/PROJECT fait référence à un espace de travail et à un projet sur http://comet.a.com.
On pourrait ensuite copier les données d'expérience téléchargées avec une commande similaire :
COMET_URL_OVERRIDE=http://comet.b.com/clientlib
COMET_API_KEY=B-KEY
cometx copy WORKSPACE/PROJECT NEW-WORKSPACE/NEW-PROJECT
Notez que WORKSPACE/PROJECT fait désormais référence à un répertoire et NEW-WORKSPACE/NEW-PROJECT fait désormais référence à un espace de travail et à un projet sur http://comet.b.com.
De même, on peut copier tous les projets en les téléchargeant au préalable :
COMET_URL_OVERRIDE=http://comet.a.com/clientlib
COMET_API_KEY=A-KEY
cometx download WORKSPACE
puis en les copiant :
COMET_URL_OVERRIDE=http://comet.b.com/clientlib
COMET_API_KEY=B-KEY
cometx copy WORKSPACE NEW-WORKSPACE
De même, on peut copier une seule expérience en la téléchargeant d’abord :
COMET_URL_OVERRIDE=http://comet.a.com/clientlib
COMET_API_KEY=A-KEY
cometx download WORKSPACE/PROJECT/EXPERIMENT-NAME-OR-ID
puis en le copiant :
COMET_URL_OVERRIDE=http://comet.b.com/clientlib
COMET_API_KEY=B-KEY
cometx copy WORKSPACE/PROJECT/EXPERIMENT-NAME-OR-ID NEW-WORKSPACE/NEW-PROJECT
Pour toutes les sous-commandes, utilisez l'indicateur --help
pour obtenir des informations supplémentaires.
Cette commande permet de :
Exemples de liste Cometx :
cometx list WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME
cometx list WORKSPACE/PROJECT
cometx list WORKSPACE
cometx list
--query
- à utiliser pour limiter le nombre d'expériences à télécharger (voir experience.api.query() pour plus d'informations)-u
, --use-name
- utilise les noms d'expériences pour les dossiers et les listes d'expériences Pour plus d'informations, cometx list --help
Cette commande permet de :
exemples de copie cometx :
cometx SOURCE DESTINATION
cometx --symlink SOURCE DESTINATION
où SOURCE est :
--symlink
, dossier "WORKSPACE/PROJECT/EXPERIMENT", "WORKSPACE/PROJECT/ " ou "WORKSPACE/ /*" (utilisez des guillemets)--symlink
, alors c'est un chemin Comet vers l'espace de travail ou l'espace de travail/projetoù DESTINATION est :
Toutes les combinaisons ne sont pas possibles :
Destination → Source ↓ | ESPACE DE TRAVAIL | ESPACE DE TRAVAIL/PROJET |
---|---|---|
WORKSPACE/*/* | Copie tous les projets | N / A |
WORKSPACE/PROJ/* | N / A | Copie toutes les expériences |
WORKSPACE/PROJ/EXP | N / A | Expérience de copies |
Pour plus d'informations, cometx copy --help
Cette commande permet de :
Exemples de téléchargement Cometx :
cometx download WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME [RESOURCE ...] [FLAGS ...]
cometx download WORKSPACE/PROJECT [RESOURCE ...] [FLAGS ...]
cometx download WORKSPACE [RESOURCE ...] [FLAGS ...]
cometx download [RESOURCE ...] [FLAGS ...]
Où [RESOURCE ...] représente zéro ou plusieurs des noms suivants :
Si aucune RESSOURCE n’est donnée, il les téléchargera toutes.
--query
- à utiliser pour limiter le nombre d'expériences à télécharger (voir experience.api.query() pour plus d'informations)--list
- à utiliser pour répertorier les espaces de travail, projets, expériences, artefacts ou modèles disponibles (identique à cometx list
)--output
- télécharge les ressources dans un dossier autre que celui actuel--flat
- n'utilise pas la hiérarchie normale pour les éléments téléchargés--use-name
- utilise les noms d'expériences pour les dossiers et les listes--ignore
- ne téléchargez pas les ressources suivantes (utilisez un ou plusieurs noms de RESSOURCES ci-dessus)--asset-type
- type d'actif à faire correspondre, ou laisser de côté pour correspondre à tous--filename
- le nom du fichier doit correspondre, ou laisser pour correspondre à tous--overwrite
- écrase tous les fichiers existants--force
- ne demandez pas de télécharger, faites-le--help
- ce messagePour télécharger des artefacts :
cometx download WORKSPACE/artifacts/NAME [FLAGS ...]
cometx download WORKSPACE/artifacts/NAME/VERSION-OR-ALIAS [FLAGS ...]
Pour télécharger des modèles à partir du registre de modèles :
cometx download WORKSPACE/model-registry/NAME [FLAGS ...]
cometx download WORKSPACE/model-registry/NAME/VERSION-OR-STAGE [FLAGS ...]
Pour plus d'informations, cometx download --help
Cette commande est utilisée pour enregistrer un fichier de ressources (métriques, paramètres, actifs, etc.) dans une ou plusieurs expériences spécifiques.
Exemple de journal cometx :
cometx log WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME [--type TYPE] FILENAME.EXT
où TYPE est le type d'actif du nom de fichier. TYPE n'est pas nécessaire si l'extension du nom de fichier (FILENAME.EXT) est connue.
Extensions connues :
Types connus :
Exemple pour définir une autre clé:valeur :
cometx log WORKSPACE/PROJECT --type other --set "key:value"
cometx log WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME --type other --set "key:value"
La première version définira l'autre clé:valeur dans toutes les expériences d'un projet, et la seconde définira l'autre clé:valeur dans l'expérience.
Exemple pour enregistrer tous les éléments :
cometx log WORKSPACE/PROJECT PATH-TO-DOWNLOAD --type all
cometx log WORKSPACE/PROJECT/EXPERIMENT-KEY-OR-NAME PATH-TO-DOWNLOAD --type all
La première version créera une expérience et la seconde enregistrera tout dans une expérience existante.
--query
- à utiliser pour limiter le nombre d'expériences à télécharger (voir experience.api.query() pour plus d'informations)--type
- le type d'élément à enregistrer--set
- la "clé:valeur" à enregistrer Pour plus d'informations, cometx log --help
Pour supprimer des éléments de tests :
cometx delete-assets WORKSPACE/PROJECT --type=image
cometx delete-assets WORKSPACE/PROJECT/EXPERIMENT --type=all
Le type peut être un type d'actif valide, notamment :
Pour plus d'informations, cometx delete-assets --help
cometx reproduce [-h] [--run] [--executable EXECUTABLE] COMET_PATH OUTPUT_DIR
Pour plus d'informations, cometx reproduce --help
AVERTISSEMENT : L'exécution des tests créera des expériences, des modèles, des ressources, etc. dans votre espace de travail par défaut, sauf indication contraire.
Pour exécuter les tests, vous pouvez soit exporter tous ces éléments dans l'environnement :
$ export COMET_USER= " "
$ export COMET_WORKSPACE= " "
$ export COMET_API_KEY= " "
$ pytest tests
Ou définissez workspace
et api_key
dans votre fichier ~/.comet.config :
$ export COMET_USER= " "
$ pytest tests