class Settings
Paramètres du SDK W&B.
Cette classe gère les paramètres de configuration du SDK W&B,
en garantissant la sécurité de type et la validation de tous les paramètres. Les paramètres sont accessibles
sous forme d’attributs et peuvent être initialisés par programmation, via des variables
d’environnement (WANDB_ prefix) et à l’aide de fichiers de configuration.
Les paramètres sont organisés en trois catégories :
- Paramètres publics : options de configuration principales que les utilisateurs peuvent modifier en toute sécurité pour personnaliser le comportement de W&B en fonction de leurs besoins spécifiques.
- Paramètres internes : paramètres préfixés par ‘x_’ qui gèrent le comportement de bas niveau du SDK. Ces paramètres sont principalement destinés à un usage interne et au débogage. Bien qu’ils puissent être modifiés, ils ne sont pas considérés comme faisant partie de l’API publique et peuvent changer sans préavis dans de futures versions.
- Paramètres calculés : paramètres en lecture seule automatiquement dérivés d’autres paramètres ou de l’environnement.
méthode Settings.__init__
-
allow_offline_artifacts(bool) : option permettant de synchroniser les artifacts de tableau en mode hors ligne. Pour revenir à l’ancien comportement, définissez cette valeur sur False. -
allow_val_change(bool): Indicateur autorisant la modification des valeurs deConfigune fois qu’elles ont été définies. -
anonymous(objet) : Obsolète et sera supprimé. -
api_key(Optional[str]) : La clé API W&B. -
azure_account_url_to_access_key(Optional[Dict[str, str]]): Association entre les URL de comptes Azure et leurs clés d’accès correspondantes pour l’intégration Azure. -
app_url_override(facultatif[str]) : remplace l’URL ‘app’ de l’interface W&B.app_urlest normalement calculée à partir debase_url, mais vous pouvez l’utiliser pour la définir explicitement. WANDB_APP_URL est la variable d’environnement correspondante. -
base_url(str): L’URL du backend W&B pour la synchronisation des données. -
code_dir(Optional[str]) : Répertoire contenant le code à suivre par W&B. -
config_paths(Optional[Sequence]) : chemins des fichiers à partir desquels charger la configuration dans l’objetConfig. -
console(Literal[‘auto’, ‘off’, ‘wrap’, ‘redirect’, ‘wrap_raw’, ‘wrap_emu’]) : Le type de capture de la console à utiliser. Les valeurs possibles sont :- “auto” - Sélectionne automatiquement la méthode de capture de la console en fonction de l’environnement système et des paramètres.
- “off” - Désactive la capture de la console.
- “redirect” - Redirige les descripteurs de fichier de bas niveau pour capturer la sortie.
- “wrap” - Remplace les méthodes d’écriture de sys.stdout/sys.stderr. Sera converti en “wrap_raw” ou “wrap_emu” selon l’état du système.
- “wrap_raw” - Identique à “wrap”, mais capture directement la sortie brute au lieu de
passer par un émulateur. Dérivé du paramètre
wrap, il ne doit pas être défini manuellement. - “wrap_emu” - Identique à “wrap”, mais capture la sortie via un émulateur.
Dérivé du paramètre
wrap, il ne doit pas être défini manuellement.
-
console_multipart(bool) : Active la journalisation multipart de la console. Lorsque la valeur est True, le SDK écrit la sortie de la console dans des fichiers horodatés dans le répertoirelogs/au lieu d’un seul fichieroutput.log. Chaque partie est téléversée dès sa fermeture, ce qui permet aux utilisateurs d’accéder aux journaux en temps réel pendant que le run est actif. La cadence de rotation est contrôlée parconsole_chunk_max_byteset/ouconsole_chunk_max_seconds. Si les deux limites sont0, tous les journaux sont téléversés à la fin du run. Remarque : les segments téléversés sont immuables ; les séquences de contrôle du terminal qui modifient les lignes précédentes (par ex., les barres de progression utilisant des retours chariot) n’affectent que le segment en cours. -
console_chunk_max_bytes(int): Seuil de basculement en fonction de la taille pour les journaux de console en plusieurs parties, en octets. Démarre un nouveau fichier de journal de console lorsque la partie en cours atteint cette taille. N’a d’effet que lorsqueconsole_multipartvautTrue. Peut être combiné avecconsole_chunk_max_seconds; la première limite atteinte déclenche le basculement. Une valeur de0désactive la limite fondée sur la taille. -
console_chunk_max_seconds(int) : Seuil de basculement temporel pour les journaux de console en plusieurs parties, en secondes. Démarre un nouveau fichier journal de console après l’écoulement de ce nombre de secondes depuis le début de la partie en cours. Nécessite queconsole_multipartsoitTrue. Peut être utilisé avecconsole_chunk_max_bytes; la première limite atteinte ferme la partie. Une valeur de0désactive la limite temporelle. -
credentials_file(str): Chemin du fichier dans lequel écrire des jetons d’accès temporaires. -
disable_code(bool) : indique s’il faut désactiver la capture du code. -
disable_git(bool) : indique s’il faut désactiver la capture de l’état Git. -
disable_job_creation(bool): Indique si la création d’un artifact de job pour W&B Launch doit être désactivée. -
docker(Optional[str]) : L’image Docker utilisée pour exécuter le script. -
email(Optional[str]): L’adresse e-mail de l’utilisateur. -
entity(Optional[str]) : L’entité W&B, telle qu’un utilisateur ou une équipe. -
organization(Optional[str]): L’organisation W&B. -
force(bool): Indique s’il faut passer le paramètreforceàwandb.login(). -
fork_from(Optional[RunMoment]) : spécifie un point dans une exécution précédente d’un run à partir duquel bifurquer. Ce point est défini par le run ID, une métrique et sa valeur. Actuellement, seule la métrique ‘_step’ est prise en charge. -
git_commit(Facultatif[str]) : le hachage du commit Git à associer au run. -
git_remote(str) : Le dépôt distant Git à associer au run. -
git_remote_url(Optional[str]) : L’URL du dépôt Git distant. -
git_root(Optional[str]) : Répertoire racine du dépôt Git. -
host(Optional[str]) : Nom d’hôte de la machine exécutant le script. -
http_proxy(Facultatif[str]) : serveurs proxy personnalisés pour les requêtes HTTP vers W&B. -
https_proxy(Optional[str]) : serveurs proxy personnalisés pour les requêtes HTTPS adressées à W&B. -
identity_token_file(Facultatif[str]) : Chemin du fichier contenant un jeton d’identité (JWT) utilisé pour l’authentification. -
ignore_globs(Sequence): motifs glob Unix relatifs àfiles_dir, qui indiquent les fichiers à exclure de l’upload. -
init_timeout(float) : durée, en secondes, pendant laquelle attendre que l’appel àwandb.initse termine avant l’expiration du délai. -
insecure_disable_ssl(bool): Indique si la vérification SSL doit être désactivée de manière non sécurisée. -
job_name(facultatif[str]) : nom du job Launch qui exécute le script. -
job_source(Optional[Literal[‘repo’, ‘artifact’, ‘image’]]): Type de source pour Launch. -
label_disable(bool): Permet de désactiver les fonctionnalités d’étiquetage automatique. -
launch_config_path(Optional[str]): Chemin du fichier de configuration de Launch. -
login_timeout(Optional[float]) : délai d’attente en secondes avant expiration des opérations de connexion. -
mode(Literal[‘online’, ‘offline’, ‘shared’, ‘disabled’, ‘dryrun’, ‘run’]): Le mode de fonctionnement de la journalisation et de la synchronisation W&B. -
notebook_name(Optional[str]) : Nom du notebook si l’exécution s’effectue dans un environnement de type Jupyter. -
program(Optional[str]) : Chemin du script ayant créé le run, s’il est disponible. -
program_abspath(Optional[str]) : chemin absolu entre le répertoire racine du dépôt et le script qui a créé le run. Le répertoire racine du dépôt est défini comme le répertoire contenant le répertoire .git, s’il existe. Sinon, il s’agit du répertoire de travail courant. -
program_relpath(Optional[str]) : Le chemin relatif du script ayant créé le run. -
project(Optional[str]) : l’ID du projet W&B. -
quiet(bool): Indicateur permettant de supprimer les messages non essentiels. -
reinit(Union[Literal[‘default’, ‘return_previous’, ‘finish_previous’, ‘create_new’], bool]) : Comportement à adopter lorsquewandb.init()est appelé alors qu’un run est actif. Options :- “default”: Utilisez “finish_previous” dans les notebooks et “return_previous” dans les autres cas.
- “return_previous”: Renvoie le run créé le plus récemment
qui n’est pas encore terminé. Cela ne met pas à jour
wandb.run; voir l’option “create_new”. - “finish_previous”: Termine tous les runs actifs, puis renvoie un nouveau run.
- “create_new”: Crée un nouveau run sans modifier les autres runs actifs.
Ne met pas à jour
wandb.runni les fonctions de niveau supérieur commewandb.log. Par conséquent, certaines intégrations plus anciennes qui s’appuient sur le run global ne fonctionneront pas. Peut également être une valeur booléenne, mais cet usage est obsolète. False équivaut à “return_previous”, et True équivaut à “finish_previous”.
-
relogin(bool): Option permettant de forcer une nouvelle tentative de connexion. -
resume(Optional[Literal[‘allow’, ‘must’, ‘never’, ‘auto’]]): Définit le comportement de reprise du run. Options :- “must”: Reprend un run existant avec le même ID. Si aucun run correspondant n’existe, l’opération échoue.
- “allow”: Tente de reprendre un run existant avec le même ID. Si aucun n’est trouvé, un nouveau run est créé.
- “never”: Démarre toujours un nouveau run. Si un run avec le même ID existe déjà, l’opération échoue.
- “auto”: Reprend automatiquement le run en échec le plus récent sur la même machine.
-
resume_from(Optional[RunMoment]) : indique un point d’une exécution précédente d’un run à partir duquel reprendre. Ce point est défini par le run ID, une métrique et sa valeur. Actuellement, seule la métrique ‘_step’ est prise en charge. -
root_dir(str) : le répertoire racine à utiliser comme base pour tous les chemins associés aux runs. Il sert notamment à déterminer le répertoire wandb et le répertoire du run. -
run_group(facultatif[str]) : identifiant de groupe pour les runs associés. Utilisé pour regrouper les runs dans l’interface utilisateur. -
run_id(Optional[str]): L’ID du run. -
run_job_type(Optional[str]) : Type de job exécuté (par exemple, entraînement, évaluation). -
run_name(Optional[str]) : Nom du run en clair. -
run_notes(Optional[str]): Notes complémentaires ou description du run. -
run_tags(Optional[Tuple[str, Ellipsis]]): tags à associer au run pour l’organisation et le filtrage. -
sagemaker_disable(bool): Indicateur permettant de désactiver les fonctionnalités spécifiques à SageMaker. -
save_code(Optional[bool]) : indique s’il faut enregistrer le code associé au run. -
settings_system(Optional[str]): Chemin d’accès au fichier de paramètres global du système. -
max_end_of_run_history_metrics(int) : Nombre maximal de mini-graphiques de l’historique à afficher en fin de run. -
max_end_of_run_summary_metrics(int) : nombre maximal de métriques de synthèse à afficher à la fin d’un run. -
show_errors(bool): Indique si les messages d’erreur doivent être affichés. -
show_info(bool): Indique si les messages d’information doivent être affichés. -
show_warnings(bool): Indique s’il faut afficher les avertissements. -
silent(bool): Indicateur permettant de supprimer toute sortie. -
strict(Optional[bool]) : Permet d’activer le mode strict pour la validation et la vérification des erreurs. -
summary_timeout(int): Délai d’attente, en secondes, avant expiration pour les opérations de summary. -
sweep_id(Optional[str]) : identifiant du balayage auquel ce run appartient. -
sweep_param_path(Facultatif[str]) : Chemin d’accès à la configuration des paramètres du balayage. -
symlink(bool) : Indique s’il faut utiliser des liens symboliques (Truepar défaut, sauf sous Windows). -
sync_tensorboard(Optional[bool]) : indique s’il faut synchroniser les journaux de TensorBoard avec W&B. -
table_raise_on_max_row_limit_exceeded(bool): Indique s’il faut lever une exception lorsque les limites du nombre de lignes du tableau sont dépassées. -
use_dot_wandb(Optional[bool]) : détermine s’il faut utiliser le répertoire caché.wandbou le répertoire visiblewandbpour les données de run. Si True, le SDK utilise.wandb. Si False,wandb. Si cette valeur n’est pas définie,.wandbest utilisé par défaut s’il existe déjà, sinonwandb. -
username(Optional[str]) : Nom d’utilisateur. -
x_disable_meta(bool) : indicateur permettant de désactiver la collection des métadonnées système. -
x_disable_stats(bool) : indicateur permettant de désactiver la collecte des métriques système. -
x_extra_http_headers(Optional[Dict[str, str]]): En-têtes HTTP supplémentaires à ajouter à toutes les requêtes HTTP sortantes. -
x_label(Optional[str]) : libellé à attribuer aux métriques système et aux journaux de console collectés pour le run. Il sert à regrouper les données dans l’interface utilisateur et peut être utilisé pour distinguer les données issues de différents processus dans une tâche d’entraînement distribuée. -
x_primary(bool) : Indique s’il faut enregistrer les fichiers internes et les métadonnées de wandb. Dans un environnement distribué, cela permet d’éviter l’écrasement de fichiers par des processus secondaires lorsque seules les métriques système et les journaux sont nécessaires, car le processus principal prend en charge la journalisation principale. -
x_save_requirements(bool) : Indicateur permettant d’enregistrer le fichier requirements. -
x_server_side_derived_summary(bool) : indicateur permettant de déléguer au serveur le calcul automatique du summary à partir de l’historique. Cela ne désactive pas les mises à jour du summary effectuées par l’utilisateur. -
x_service_wait(float): Temps d’attente, en secondes, avant le démarrage du service interne wandb-core. -
x_skip_transaction_log(bool) : Indique s’il faut ignorer l’enregistrement des événements du run dans le journal de transactions. Ceci n’est pertinent que pour les runs en ligne. Peut être utilisé pour réduire la quantité de données écrites sur le disque. À utiliser avec prudence, car cela supprime les garanties de récupération. -
x_stats_sampling_interval(float) : Intervalle d’échantillonnage du moniteur système, en secondes. -
x_stats_dcgm_exporter(Optional[str]) : endpoint d’où extraire les métriques NVIDIA DCGM. Options :- Extraire les métriques liées à DCGM à partir d’une requête vers l’endpoint Prometheus
/api/v1/query. Il est courant d’agréger les métriques renvoyées par les instances de DCGM Exporter exécutées sur différents nœuds d’un cluster à l’aide de Prometheus. - TODO : Analyser les métriques directement depuis l’endpoint
/metricsde DCGM Exporter. Exemples : http://localhost:9400/api/v1/query?query=DCGM_FI_DEV_GPU_TEMP{node="l1337", cluster="globular"}.
- Extraire les métriques liées à DCGM à partir d’une requête vers l’endpoint Prometheus
-
x_stats_open_metrics_endpoints(Optional[Dict[str, str]]): endpoints OpenMetrics/metricsà surveiller pour les métriques système. -
x_stats_open_metrics_filters(Union[Dict[str, Dict[str, str]], Sequence, None]) : Filtre à appliquer aux métriques collectées depuis les endpoints OpenMetrics/metrics. Prend en charge deux formats :{"motif regex de métrique, y compris le nom d'endpoint comme préfixe": {"label": "motif regex de valeur de label"}}("motif regex de métrique 1", "motif regex de métrique 2", ...)
-
x_stats_open_metrics_http_headers(Optional[Dict[str, str]]): les en-têtes HTTP à ajouter aux requêtes OpenMetrics. -
x_stats_disk_paths(Optional[Sequence]) : chemins système à surveiller pour l’utilisation du disque. -
x_stats_cpu_count(Optional[int]) : Nombre de CPU du système. Si cette valeur est définie, elle remplace la valeur détectée automatiquement dans les métadonnées du run. -
x_stats_cpu_logical_count(Facultatif[int]) : Nombre de processeurs logiques. S’il est défini, remplace la valeur détectée automatiquement dans les métadonnées du run. -
x_stats_gpu_count(Optional[int]) : nombre de GPU. Si cette valeur est définie, elle remplace la valeur détectée automatiquement dans les métadonnées du run. -
x_stats_gpu_type(Optional[str]) : Type de GPU. S’il est défini, remplace la valeur détectée automatiquement dans les métadonnées du run. -
x_stats_gpu_device_ids(Optional[Sequence]) : indices des périphériques GPU à surveiller. Si ce paramètre n’est pas défini, le moniteur système collecte les métriques de tous les GPU. Repose sur une indexation à partir de 0 correspondant à l’énumération des périphériques CUDA/ROCm. -
x_stats_track_process_tree(bool) : Surveille l’ensemble de l’arborescence des processus pour suivre l’utilisation des ressources, à partir dex_stats_pid. LorsqueTrue, le moniteur système agrège le RSS, le pourcentage d’utilisation du CPU et le nombre de threads du processus ayant le PIDx_stats_pid, ainsi que de tous ses descendants. Cela peut avoir un impact sur les performances et est désactivé par défaut. -
x_sync_dir_suffix(str): Suffixe à ajouter au nom du répertoire du run (sync_dir). Ce paramètre est défini dans wandb.init() pour éviter les conflits de noms. S’il est défini, il est ajouté au nom par défaut avec un tiret. -
x_update_finish_state(bool): Indique si ce processus peut mettre à jour l’état final du run sur le serveur. Définissez cette valeur sur False dans le cadre d’un entraînement distribué, lorsque seul le processus principal doit déterminer l’état final.
Settings.
propriété Settings.app_url
L’URL de l’interface W&B, généralement https://wandb.ai.
Elle se distingue de base_url (par exemple https://api.wandb.ai), qui
sert à accéder aux API W&B par programmation.
Retourne :
str: La valeur de la propriété app_url.
propriété Settings.colab_url
L’URL du notebook Colab, si l’exécution a lieu dans Colab.
Retourne :
Optional[str]: La valeur de la propriété colab_url.
propriété Settings.deployment
propriété Settings.files_dir
Chemin absolu du répertoire local où sont stockés les fichiers du run.
Retourne :
str: La valeur de la propriétéfiles_dir.
propriété Settings.is_local
propriété Settings.log_dir
Le répertoire où sont stockés les fichiers journal.
Retourne :
str: La valeur de la propriétélog_dir.
propriété Settings.log_internal
Le chemin du fichier à utiliser pour les journaux internes.
Retourne :
str: La valeur de la propriétélog_internal.
propriété Settings.log_symlink_internal
Le chemin vers le lien symbolique du fichier journal interne de l’exécution la plus récente.
Retourne :
str: La valeur de propriétélog_symlink_internal.
propriété Settings.log_symlink_user
Le chemin d’accès vers le lien symbolique du fichier journal du processus utilisateur de l’exécution la plus récente.
Retourne :
str: La valeur de la propriétélog_symlink_user.
propriété Settings.log_user
Le chemin d’accès au fichier utilisé pour les journaux du processus utilisateur.
Retourne :
str: La valeur de la propriétélog_user.
propriété Settings.project_url
L’URL W&B permettant de consulter le projet.
Retourne :
str: La valeur de la propriétéproject_url.
propriété Settings.resume_fname
Le chemin du fichier de reprise.
Retourne :
str: La valeur de la propriétéresume_fname.
propriété Settings.run_mode
Le mode du run. Peut être « run » ou « offline-run ».
Retourne :
Literal['run', 'offline-run']: La valeur de la propriétérun_mode.
propriété Settings.run_url
L’URL W&B où le run peut être affiché.
Retourne :
str: La valeur de la propriété run_url.
propriété Settings.settings_workspace
Le chemin vers le fichier de paramètres du Workspace.
Retourne :
str: La valeur de la propriétésettings_workspace.
propriété Settings.sweep_url
L’URL W&B où le balayage est consultable.
Retourne :
str: La valeur de la propriétésweep_url.
propriété Settings.sync_dir
Le répertoire où sont stockés les fichiers du run.
Retourne :
str: La valeur de la propriété sync_dir.
propriété Settings.sync_file
Chemin vers le fichier binaire de journal des transactions en ajout uniquement.
Retourne :
str: La valeur de la propriété sync_file.
propriété Settings.sync_symlink_latest
Chemin d’accès vers le lien symbolique pointant vers le fichier de journal des transactions de l’exécution la plus récente.
Retourne :
str: La valeur de la propriétésync_symlink_latest.
propriété Settings.timespec
La spécification de temps du run.
Retourne :
str: La valeur de la propriété timespec.
propriété Settings.wandb_dir
Chemin complet vers le répertoire wandb.
Retourne :
str: La valeur de la propriété wandb_dir.