Skip to main content

class wandb.Settings

W&B SDK の Settings クラスです。 このクラスは W&B SDK の設定を管理し、 すべての設定でタイプ安全性と検証が確保されるようにします。Settings には属性としてアクセスでき、 プログラムから、環境変数 (WANDB_ プレフィックス) 、および設定ファイルを通じて初期化できます。 設定は次の 3 つのカテゴリに分類されます。
  1. Public settings: ユーザーが安全に変更でき、特定のニーズに合わせて W&B の動作をカスタマイズするための中核的な設定オプションです。
  2. Internal settings: ‘x_’ で始まる Settings で、SDK の低レベルな動作を扱います。 これらの設定は主に内部利用とデバッグ用です。変更は可能ですが、 Public API の一部とは見なされず、将来の バージョンで予告なく変更される場合があります。
  3. Computed settings: 他の設定または 環境から自動的に導出される読み取り専用の Settings です。
Settings は複数のソースから読み込まれます。同じ設定が 複数のソースから指定された場合は、 後に記載されたソースが優先されます。優先順位の低いものから高いものの順に示します。
  1. この Settings モデルで定義されているデフォルト値。
  2. 設定ファイル (~/.config/wandb/settings、または WANDB_CONFIG_DIR 環境変数で指定されたディレクトリ内の settings ファイル)。
  3. 環境変数 (WANDB_ で始まるもの。例: WANDB_MODE)。
  4. ホスト名、 実行中のプログラムまたはスクリプトのパス、Python 実行ファイル、Docker image、 Jupyter ノートブックの詳細など、実行時環境から検出される値。
  5. Amazon SageMaker 環境で実行している場合の SageMaker 設定。
  6. wandb.setup()settings パラメーター。
  7. wandb.init()settings パラメーター。
  8. 一部の wandb.init() パラメーター (たとえば、mode=mode 設定を上書きします)。

引数

  • allow_media_symlink: メディアファイルを run ディレクトリにシンボリックリンクするかどうか。 true の場合、メディアファイルはコピーされず、run ディレクトリにシンボリックリンクまたはハードリンクされます。これにより、ログが高速になり、ディスク使用量を削減できる場合があります。ただし、W&B サーバーにアップロードする前に元のファイルを削除または変更すると、その変更内容がアップロードされたデータに反映されます。
  • allow_offline_artifacts: オフラインモードでテーブルアーティファクトを同期できるようにするフラグ。 以前の動作に戻すには、これを False に設定します。
  • allow_val_change: Config の値を設定後に変更できるようにするフラグ。
  • anonymous: 非推奨であり、削除される予定です。
  • api_key: W&B の APIキー。
  • azure_account_url_to_access_key: Azure インテグレーション用の、Azure アカウント URL と対応するアクセスキーのマッピング。
  • app_url_override: W&B UI の app URL のオーバーライド。 app_url は通常 base_url に基づいて計算されますが、これを使用して明示的に設定できます。 WANDB_APP_URL は対応する環境変数です。
  • base_url: データ同期に使用する W&B バックエンドの URL。
  • code_dir: W&B でトラッキングするコードを含むディレクトリ。
  • config_paths: Config オブジェクトに読み込む設定ファイルのパス。
  • console: 適用するコンソールの取得タイプ。 指定可能な値は次のとおりです。
    • “auto” - システムの環境と設定に応じて、コンソールの取得方法を自動的に選択します。
    • “off” - コンソールの取得を無効にします。
    • “redirect” - 出力を取得するために、低レベルのファイルディスクリプタをリダイレクトします。
    • “wrap” - sys.stdout/sys.stderr の write メソッドをオーバーライドします。システムの状態に応じて、“wrap_raw” または “wrap_emu” のいずれかにマップされます。
    • “wrap_raw” - “wrap” と同じですが、エミュレーターを介さずに生の出力を直接取得します。wrap 設定から派生するため、手動で設定しないでください。
    • “wrap_emu” - “wrap” と同じですが、エミュレーターを介して出力を取得します。 wrap 設定から派生するため、手動で設定しないでください。
  • console_multipart: マルチパートのコンソールログを有効にします。 True の場合、SDK はコンソール出力を単一の output.log ではなく、 logs/ ディレクトリ配下のタイムスタンプ付きファイルに書き込みます。 各パートは閉じられるとすぐにアップロードされるため、run の実行中でも ユーザーはログにリアルタイムでアクセスできます。ロールオーバーの頻度は console_chunk_max_bytes および/または console_chunk_max_seconds で 制御されます。両方の制限が 0 の場合、すべてのログは run の終了時に まとめてアップロードされます。 注: アップロードされたチャンクは不変です。以前の行を変更する ターミナル制御シーケンス (例: キャリッジリターンを使用するプログレスバー) は、 現在のチャンクにのみ影響します。
  • console_chunk_max_bytes: マルチパートのコンソールログに対する、バイト単位のサイズベースのロールオーバーしきい値。 現在のパートがこのサイズに達すると、新しいコンソールログ file を開始します。 効果があるのは console_multipartTrue の場合のみです。 console_chunk_max_seconds と組み合わせて使用できます。先に到達した 制限によりロールオーバーがトリガーされます。値を 0 にすると、 サイズベースの制限は無効になります。
  • console_chunk_max_seconds: マルチパートのコンソールログに対する、秒単位の時間ベースのロールオーバーしきい値。 現在のパートの開始からこの秒数が経過すると、新しいコンソールログ file を 開始します。console_multipartTrue である必要があります。 console_chunk_max_bytes と併用できます。先に到達した制限によって パートが閉じられます。値を 0 にすると、時間ベースの制限は 無効になります。
  • capture_loggers: run の Logs タブに取得する Python logger の名。 ロガー名から最小ログレベルへのマッピングです。設定すると、wandb は 各指定ロガーに logging.Handler を追加し、 run の終了時にそれを削除します。 それらのロガーから出力されたログレコードは、コンソール出力として run に公開され、stdout/stderr の取得と同様に扱われます。 ログレコードは logging.basicConfig() と同じ形式で出力され、たとえば INFO:my_module:Some message. のようになります。現在、これはカスタマイズできません。 すべてのログを取得するには、ルートロガー名 (‘root’) を渡します。 これは console の設定とは独立しており、両方を同時に有効にできます。 例:
  • credentials_file: 一時的なアクセストークンを書き込むファイルのパス。
  • disable_code: コードのキャプチャを無効にするかどうか。
  • disable_git: Git の状態のキャプチャを無効にするかどうか。
  • disable_git_fork_point: リモートブランチから fork point を推定する処理を無効にするかどうか True に設定すると、upstream ブランチが設定されている場合、SDK はそのブランチの最新コミットを使用します。それ以外の場合は、差分 patch を生成しません。 False に設定すると、upstream ブランチが設定されている場合、SDK はそのブランチの最新コミットを使用しようとします。 それ以外の場合は、すべてのリモートブランチから最も近いコミットを検索します。 upstream ブランチが多いリポジトリでは、パフォーマンスに影響する可能性があります。
  • disable_job_creation: W&B Launch 用のジョブ artifact の作成を無効にするかどうか。
  • docker: スクリプトの実行に使用する Docker image。
  • email: ユーザーのメールアドレス。
  • entity: ユーザーやチームなどの W&B entity。
  • organization: W&B 組織。
  • force: wandb.login()force フラグを渡すかどうか。
  • fork_from: fork 元にする以前の run の実行時点を指定します。 この時点は、Run ID、メトリクス、およびその値で定義されます。 現在サポートされるメトリクスは ‘_step’ のみです。
  • git_commit: run に関連付ける Git コミットハッシュ。
  • git_remote: run に関連付ける Git リモート。
  • git_remote_url: Git リモートリポジトリの URL。
  • git_root: Git リポジトリのルートディレクトリ。
  • host: スクリプトを実行しているマシンのホスト名。
  • http_proxy: W&B への HTTP リクエスト用のカスタムプロキシサーバー。
  • https_proxy: W&B への HTTPS リクエスト用のカスタムプロキシサーバー。
  • identity_token_file: 認証用のアイデンティティトークン (JWT) を含むファイルのパス。
  • ignore_globs: files_dir からの相対パスで指定する、upload から除外するファイルの Unix glob パターン。
  • init_timeout: タイムアウトするまで wandb.init 呼び出しの完了を待機する秒数。
  • finish_timeout: run の終了時にデータの upload 完了を待機する秒数。 これを設定すると、run の終了時に W&B への upload が遅いことで発生するコストを抑えられますが、その代わり run は crashed としてマークされ、一部のデータが欠落する可能性があります。デフォルトでは、run.finish() はすべてのデータの upload が完了するまでブロックします。 これが 0 より大きい数値に設定されている場合、W&B は run の終了時にこの秒数が経過すると run のデータの upload をあきらめ、スクリプトのブロックを解除します。しばらくすると、run は UI 上で Crashed または Failed になります。upload されなかったデータは引き続きディスクに保存され、wandb sync で upload できます。 finish_timeout_raises 設定を使用すると、警告メッセージの出力に加えてエラーを発生させることができます。 wandb.teardown() によって終了される Runs (スクリプトの終了時に atexit hook で自動的に実行されます) も、この設定に従います。
  • finish_timeout_raises: finish_timeout の制限時間を超えた場合に TimeoutError を発生させるかどうか。 これを finish_timeout 設定と一緒に使用すると、run.finish() は、メッセージを出力するだけでなく、タイムアウト後に TimeoutError を発生させます。 コンテキストマネージャーとして Run を使用する場合、run.finish() は暗黙的に呼び出されることに注意してください: with wandb.init() as run: … # with ブロックの最後で run.finish() が実行されます これによって wandb.teardown() がエラーを発生させることはありません (いずれにしてもスクリプトの終了時に実行されるためです) 。
  • insecure_disable_ssl: 安全ではない形で SSL 検証を無効にするかどうか。
  • job_name: スクリプトを実行している Launch ジョブの名前。
  • job_source: Launch のソースタイプ。
  • label_disable: 自動ラベル付け機能を無効にするかどうか。
  • launch_config_path: Launch 設定fileへのパス。
  • login_timeout: ログイン操作がタイムアウトするまで待機する時間 (秒) 。
  • mode: W&B のログ記録と同期の動作モード。
  • notebook_name: Jupyter のような環境で実行している場合のノートブック名。
  • program: 使用可能な場合に、run を作成したスクリプトへのパス。
  • program_abspath: リポジトリのルートディレクトリから、run を作成したスクリプトまでの絶対パス。 リポジトリのルートディレクトリは、.git ディレクトリが存在する場合は、それを含むディレクトリとして定義されます。存在しない場合は、現在の作業ディレクトリです。
  • program_relpath: run を作成したスクリプトへの相対パス。
  • project: W&B の project ID。
  • quiet: 必須ではない出力を抑制するためのフラグ。
  • reinit: run がアクティブな状態で wandb.init() が呼び出された場合の動作。 オプション:
    • “default”: ノートブックでは “finish_previous” を使用し、それ以外では “return_previous” を使用します。
    • “return_previous”: まだ終了していない、直近で作成された run を返します。 これは wandb.run を更新しません。“create_new” オプションを 参照してください。
    • “finish_previous”: アクティブなすべての run を終了してから、新しい run を返します。
    • “create_new”: 他のアクティブな run を変更せずに、新しい run を作成します。 wandb.runwandb.log などのトップレベル関数は更新しません。 そのため、グローバル run に依存する一部の古いインテグレーションは 動作しません。
    ブール値も指定できますが、これは非推奨です。False は “return_previous” と同じ意味で、True は “finish_previous” と同じ意味です。
  • relogin: 新たにログインを試行するよう強制するフラグです。
  • resume: run の再開動作を指定します。 オプション:
    • “must”: 同じ ID の既存の run から再開します。該当する run が存在しない場合は、 エラーになります。
    • “allow”: 同じ ID の既存の run からの再開を試みます。見つからない場合は、 新しい run が作成されます。
    • “never”: 常に新しい run を開始します。同じ ID の run がすでに存在する場合は、 エラーになります。
    • “auto”: 同じマシン上で直近に失敗した run から自動的に再開します。
  • resume_from: 以前の run の実行で、再開元とする時点を指定します。 その時点は、run ID、メトリクス、およびその値で定義されます。 現在サポートされているメトリクスは ‘_step’ のみです。
  • root_dir: すべての run 関連パスの基準として使用するルート ディレクトリです。 特に、wandb ディレクトリと run ディレクトリの導出に使用されます。
  • run_group: 関連する Runs のグループ識別子です。 UI で Runs をグループ化するために使用されます。
  • run_id: run の ID です。
  • run_job_type: 実行するジョブのタイプです (例: トレーニング、評価) 。
  • run_name: run の人が読みやすい名前です。
  • run_notes: run に関する追加のメモまたは説明です。
  • run_tags: run の整理やフィルターに使用するタグです。
  • sagemaker_disable: SageMaker 固有の機能を無効にするフラグです。
  • save_code: run に関連付けられているコードを保存するかどうかです。
  • settings_system: システム全体の設定ファイルへのパスです。
  • stop_fn: run を停止するために実行するコールバックです。 run は、web UI から、または致命的なエラーの発生後に (設定で構成されている場合) 停止できます。 デフォルトでは、run を停止するために W&B はメイン スレッドに SIGINT を送信します。 別のシグナルを使用したり、中断する前に別のアクションを実行したりする場合は、 このコールバックを設定してこの動作をオーバーライドします。 このコールバックは別のスレッドで実行されます。停止が要求された後すぐに 実行されますが、即時ではありません。
  • max_end_of_run_history_metrics: run の終了時に表示する履歴スパークラインの最大数です。
  • max_end_of_run_summary_metrics: run の終了時に表示するサマリー メトリクスの最大数です。
  • show_errors: エラー メッセージを表示するかどうかです。
  • show_info: 情報メッセージを表示するかどうかです。
  • show_warnings: 警告メッセージを表示するかどうかです。
  • silent: すべての出力を抑制するフラグです。
  • stop_on_fatal_error: 致命的なエラーの後に run を停止するかどうかです。 W&B がデータのアップロード中に回復不能なエラーに遭遇すると、 メッセージを表示してアップロードを停止しますが、 それ以降もデータをログできます。 通常、これは望ましい動作です。トレーニング メトリクスはディスクに保存されるため、 アップロードされなくても wandb sync を使用して復旧できます。 ただし、トレーニング後にファイルが削除される場合は、これは有用ではありません。 その場合、これを True に設定すると、web UI で停止ボタンが押された場合と同様に、 致命的なエラーの後に run が停止します。
  • strict: 検証とエラー チェックのために strict モードを有効にするかどうかです。
  • summary_timeout: サマリー処理がタイムアウトするまで待機する時間 (秒) です。
  • sweep_id: この run が属する sweep の識別子です。
  • sweep_param_path: sweep パラメーター設定へのパスです。
  • symlink: シンボリック リンクを使用するかどうかです (Windows を除き、デフォルトは True) 。
  • sync_tensorboard: TensorBoard のログを W&B と同期するかどうかです。
  • table_raise_on_max_row_limit_exceeded: 表の行数制限を超えた場合に例外を発生させるかどうか。
  • use_dot_wandb: run データに、非表示の .wandb ディレクトリと表示される wandb ディレクトリのどちらを使用するか。 True の場合、SDK は .wandb を使用します。False の場合は wandb を使用します。 設定されていない場合、すでに存在していればデフォルトで .wandb、そうでなければ wandb を使用します。
  • username: ユーザー名。
  • x_disable_meta: システムメタデータの収集を無効にするフラグ。
  • x_disable_stats: システムメトリクスの収集を無効にするフラグ。
  • x_extra_http_headers: 送信するすべての HTTP リクエストに追加するヘッダー。
  • x_label: run 用に収集されるシステムメトリクスとコンソールログに割り当てるラベル。 これはフロントエンドでデータをグループ化するために使用され、 分散トレーニングジョブ内の異なるプロセスからのデータを区別するためにも使用できます。
  • x_primary: 内部 wandb ファイルとメタデータを保存するかどうかを決定します。 分散環境では、システムメトリクスとログだけが必要な場合に、 プライマリプロセスがメインのログ記録を処理するため、セカンダリプロセスによる ファイルの上書きを避けるのに役立ちます。
  • x_save_requirements: requirements ファイルを保存するフラグ。
  • x_server_side_derived_summary: history からの summary の自動計算をサーバーに委譲するフラグ。 これによって、ユーザーが指定した summary の更新が無効になることはありません。
  • x_service_wait: wandb-core の内部サービスの起動を待機する秒数。
  • x_skip_transaction_log: run イベントのトランザクションログへの保存をスキップするかどうか。 これはオンライン run にのみ関係します。ディスクへの 書き込みデータ量を減らすために使用できます。 復旧可能性に関する保証が失われるため、 使用には注意が必要です。
  • x_stats_sampling_interval: システムモニターのサンプリング間隔 (秒) 。
  • x_stats_open_metrics_endpoints: システムメトリクスの監視対象とする OpenMetrics /metrics エンドポイント。
  • x_stats_open_metrics_filters: OpenMetrics の /metrics エンドポイントから収集されるメトリクスに適用するフィルター。 次の 2 つの形式をサポートします:
    • {"エンドポイント名を接頭辞として含むメトリクスの正規表現パターン": {"label": "ラベル値の正規表現パターン"}}
    • ("メトリクスの正規表現パターン 1", "メトリクスの正規表現パターン 2", ...)
  • x_stats_open_metrics_http_headers: OpenMetrics リクエストに追加する HTTP ヘッダー。
  • x_stats_disk_paths: ディスク使用量を監視するシステムパス。
  • x_stats_cpu_count: システム CPU 数。 設定すると、run メタデータで自動検出された値を上書きします。
  • x_stats_cpu_logical_count: 論理 CPU 数。 設定すると、run メタデータで自動検出された値を上書きします。
  • x_stats_gpu_count: GPU デバイス数。 設定すると、run メタデータで自動検出された値を上書きします。
  • x_stats_gpu_type: GPU デバイスタイプ。 設定すると、run メタデータで自動検出された値を上書きします。
  • x_stats_gpu_device_ids: 監視する GPU デバイスのインデックス。 設定しない場合、システムモニターはすべての GPU のメトリクスを取得します。 CUDA/ROCm のデバイス列挙に対応する 0 ベースのインデックスを前提とします。
  • x_stats_track_process_tree: x_stats_pid を起点として、プロセスツリー全体のリソース使用量を監視します。 True の場合、システムモニターは PID x_stats_pid のプロセスとそのすべての子孫プロセスの RSS、CPU%、スレッド数を集計します。 これによりパフォーマンスオーバーヘッドが発生する可能性があり、デフォルトで無効です。
  • x_stats_no_cgroup: システムメトリクスのパーセンテージ計算で、cgroup v2 の CPU およびメモリ制限を無効にします。
  • x_sync_dir_suffix: run のディレクトリ名 (sync_dir) に追加する接尾辞。 これは wandb.init() で設定し、名前の競合を回避します。 設定すると、デフォルト名にダッシュ区切りで連結されます。
  • x_update_finish_state: このプロセスがサーバー上の run の最終状態を更新できるかどうかを示すフラグ。 分散トレーニングでは、最終状態を決定するのがメインプロセスのみであるべき場合に False に設定します。

プロパティ

プロパティ app_url

W&B UI の URL です。通常は https://wandb.ai です。 これは、プログラムから W&B API にアクセスするために使用する base_url (https://api.wandb.ai など) とは異なります。

プロパティ colab_url

Colab で実行している場合の Colab ノートブックの URL です。

プロパティ deployment

プロパティ files_dir

run のファイルが保存されているローカルディレクトリの絶対パスです。

プロパティ is_local

プロパティ log_dir

ログファイルを保存するディレクトリです。

プロパティ log_internal

内部ログ用のファイルのパスです。 最新の run の内部ログファイルへのシンボリックリンクのパスです。 最新の run におけるユーザープロセスのログファイルへのシンボリックリンクのパスです。

プロパティ log_user

ユーザープロセスのログを出力するファイルのパスです。

プロパティ project_url

project を表示できる W&B の URL です。

プロパティ resume_fname

resume ファイルのパスです。

プロパティ run_mode

run のモードを示します。“run” または “offline-run” のいずれかです。

プロパティ run_url

run を表示できる W&B の URL です。

プロパティ settings_workspace

Workspace settings ファイルのパスです。

プロパティ sweep_url

sweep を表示できる W&B の URL です。

プロパティ sync_dir

run ファイルを保存するディレクトリです。

プロパティ sync_file

追記専用のバイナリトランザクションログファイルへのパスです。 最新の run のトランザクションログファイルを指すシンボリックリンクのパスです。

プロパティ timespec

run の時刻指定を表します。

プロパティ wandb_dir

wandb ディレクトリのフルパスです。

メソッド

method Settings.validate_anonymous()

引数
  • value:

method Settings.validate_x_extra_http_headers()

引数
  • value:

method Settings.validate_x_stats_coreweave_metadata_base_url()

引数
  • value: