Accelerate documentation

Pelacak Eksperimen

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v1.15.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Pelacak Eksperimen

GeneralTracker

kelas accelerate.tracking.GeneralTracker

< >

( _blank = False )

Kelas dasar Tracker yang digunakan untuk semua implementasi integrasi logging.

Setiap fungsi harus menerima **kwargs yang akan otomatis diteruskan dari kamus dasar yang diberikan ke Accelerator.

Harus mengimplementasikan properti name, requires_logging_directory, dan tracker sedemikian rupa sehingga:

name (str): Representasi string dari nama kelas pelacak, seperti β€œTensorBoard” requires_logging_directory (bool): Apakah logger memerlukan direktori untuk menyimpan log mereka. tracker (object): Seharusnya mengembalikan mekanisme pelacakan internal yang digunakan oleh kelas pelacak (seperti run untuk wandb)

Implementasi juga dapat menyertakan atribut main_process_only (bool) untuk mengatur apakah logging, init, dan fungsi terkait lainnya harus terjadi pada proses utama atau di semua proses (secara default menggunakan True)

selesai

< >

( )

Harus menjalankan fungsi finalisasi apa pun di dalam API pelacakan. Jika API seharusnya tidak memiliki satu, cukup jangan menimpa metode tersebut.

log

< >

( values: dictstep: int | None = None**kwargs )

Parameter

  • values (Dictionary str ke str, float, atau int) β€” Nilai yang akan dicatat sebagai pasangan kunci-nilai. Nilai harus bertipe str, float, atau int.
  • step (int, opsional) β€” Langkah eksekusi. Jika disertakan, log akan dikaitkan dengan langkah ini.

Mencatat values ke run saat ini. Implementasi dasar log dari API pelacakan harus ditempatkan di sini, bersama dengan perilaku khusus untuk parameter `step`.

mulai

< >

( )

Inisialisasi lazy pelacak di dalam Accelerator untuk menghindari inisialisasi PartialState sebelum InitProcessGroupKwargs.

store_init_configuration

< >

( values: dict )

Parameter

  • values (Dictionary str ke bool, str, float atau int) β€” Nilai yang akan disimpan sebagai hiperparameter awal dalam bentuk pasangan kunci-nilai. Nilai tersebut harus bertipe bool, str, float, int, atau None.

Mencatat values sebagai hiperparameter untuk run. Implementasi harus menggunakan fungsionalitas konfigurasi eksperimen dari API pelacakan.

register_tracker_class

accelerate.tracking.register_tracker_class

< >

( tracker_class: type )

Parameter

  • tracker_class (subclass of GeneralTracker) β€” Kelas tracker yang akan didaftarkan. Kelas ini harus menjadi subclass dari GeneralTracker dan mendefinisikan atribut kelas name yang tidak kosong serta atribut kelas requires_logging_directory. Kelas ini diinstansiasi dengan project_name yang diteruskan ke Accelerator.init_trackers() sebagai argumen posisional pertama. Ketika requires_logging_directory bernilai True, direktori logging diteruskan sebagai argumen posisional kedua (sesuai dengan konvensi tracker bawaan). Argumen kata kunci spesifik tracker dari init_kwargs diteruskan sebagai **kwargs.

Mendaftarkan subkelas GeneralTracker kustom agar dapat dirujuk melalui name-nya pada argumen log_with dari Accelerator, dengan cara yang sama seperti pelacak bawaan.

Pelacak harus didaftarkan sebelum menginstansiasi Accelerator yang menggunakannya.

Contoh:

from accelerate import Accelerator
from accelerate.tracking import GeneralTracker, register_tracker_class


class MyTracker(GeneralTracker):
    name = "my_tracker"
    requires_logging_directory = False
    # ... implement the rest of the `GeneralTracker` interface


register_tracker_class(MyTracker)
accelerator = Accelerator(log_with="my_tracker")

TensorBoardTracker

kelas accelerate.tracking.TensorBoardTracker

< >

( run_name: strlogging_dir: str | os.PathLike**kwargs )

Parameter

  • run_name (str) β€” Nama dari run eksperimen
  • logging_dir (str, os.PathLike) β€” Lokasi untuk menyimpan log TensorBoard.
  • **kwargs (argumen kata kunci tambahan, opsional) β€” Argumen kata kunci tambahan yang diteruskan ke metode tensorboard.SummaryWriter.__init__.

Kelas Tracker yang mendukung tensorboard. Sebaiknya diinisialisasi di awal skrip Anda.

__init__

< >

( run_name: strlogging_dir: str | os.PathLike**kwargs )

WandBTracker

kelas accelerate.tracking.WandBTracker

< >

( run_name: str**kwargs )

Parameter

  • run_name (str) β€” Nama dari run eksperimen.
  • **kwargs (argumen kata kunci tambahan, opsional) β€” Argumen kata kunci tambahan yang diteruskan ke metode wandb.init.

Kelas Tracker yang mendukung wandb. Seharusnya diinisialisasi di awal skrip Anda.

__init__

< >

( run_name: str**kwargs )

Trackio

kelas accelerate.tracking.TrackioTracker

< >

( run_name: str**kwargs )

Parameter

  • run_name (str) β€” Nama dari run eksperimen. Akan digunakan sebagai nama project saat menginstansiasi trackio.
  • **kwargs (argumen kata kunci tambahan, opsional) β€” Argumen kata kunci tambahan yang diteruskan ke metode trackio.init. Lihat init ini untuk melihat semua argumen kata kunci yang didukung.

Kelas Tracker yang mendukung trackio. Sebaiknya diinisialisasi di awal skrip Anda.

__init__

< >

( run_name: str**kwargs )

CometMLTracker

kelas accelerate.tracking.CometMLTracker

< >

( run_name: str**kwargs )

Parameter

Kelas Tracker yang mendukung comet_ml. Sebaiknya diinisialisasi di awal skrip Anda.

Kunci API harus disimpan dalam file konfigurasi Comet.

Catatan: Untuk versi comet_ml < 3.41.0, argumen kata kunci tambahan diteruskan ke comet_ml.Experiment sebagai gantinya: https://www.comet.com/docs/v2/api-and-sdk/python-sdk/reference/Experiment/#comet_ml.Experiment.__init__

__init__

< >

( run_name: str**kwargs )

AimTracker

kelas accelerate.tracking.AimTracker

< >

( run_name: strlogging_dir: str | os.PathLike | None = '.'**kwargs )

Parameter

  • run_name (str) β€” Nama dari run eksperimen.
  • **kwargs (argumen kata kunci tambahan, opsional) β€” Argumen kata kunci tambahan yang diteruskan ke metode Run.__init__.

Kelas Tracker yang mendukung aim. Sebaiknya diinisialisasi di awal skrip Anda.

__init__

< >

( run_name: strlogging_dir: str | os.PathLike | None = '.'**kwargs )

MLflowTracker

kelas accelerate.tracking.MLflowTracker

< >

( experiment_name: str | None = Nonelogging_dir: str | os.PathLike | None = Nonerun_id: str | None = Nonetags: dict[str, typing.Any] | str | None = Nonenested_run: bool | None = Falserun_name: str | None = Nonedescription: str | None = None )

Parameter

  • experiment_name (str, opsional) β€” Nama eksperimen. Variabel lingkungan MLFLOW_EXPERIMENT_NAME memiliki prioritas lebih tinggi daripada argumen ini.
  • logging_dir (str atau os.PathLike, default ".") β€” Lokasi penyimpanan log mlflow.
  • run_id (str, opsional) β€” Jika ditentukan, ambil run dengan UUID yang ditentukan dan catat parameter serta metrik di bawah run tersebut. Waktu akhir run tidak diset dan statusnya diset ke running, tetapi atribut lain dari run (source_version, source_type, dll.) tidak diubah. Variabel lingkungan MLFLOW_RUN_ID memiliki prioritas di atas argumen ini.
  • tags (Dict[str, str], opsional) β€” dict opsional berisi kunci dan nilai str, atau dump str dari dict, untuk ditetapkan sebagai tag pada run. Jika run sedang dilanjutkan, tag ini ditetapkan pada run yang dilanjutkan. Jika run baru sedang dibuat, tag ini ditetapkan pada run baru. Variabel lingkungan MLFLOW_TAGS memiliki prioritas lebih tinggi daripada argumen ini.
  • nested_run (bool, opsional, defaultnya False) β€” Mengontrol apakah run bersarang di dalam run induk. True membuat run bersarang. Variabel lingkungan MLFLOW_NESTED_RUN memiliki prioritas lebih tinggi daripada argumen ini.
  • run_name (str, opsional) β€” Nama run baru (disimpan sebagai tag mlflow.runName). Hanya digunakan ketika run_id tidak ditentukan.
  • description (str, opsional) β€” String opsional yang mengisi kotak deskripsi dari run. Jika run sedang dilanjutkan, deskripsi akan diset pada run yang dilanjutkan. Jika run baru sedang dibuat, deskripsi akan diset pada run baru tersebut.

Kelas Tracker yang mendukung mlflow. Sebaiknya diinisialisasi di awal skrip Anda.

__init__

< >

( experiment_name: str | None = Nonelogging_dir: str | os.PathLike | None = Nonerun_id: str | None = Nonetags: dict[str, typing.Any] | str | None = Nonenested_run: bool | None = Falserun_name: str | None = Nonedescription: str | None = None )

ClearMLTracker

kelas accelerate.tracking.ClearMLTracker

< >

( run_name: str | None = None**kwargs )

Parameter

  • run_name (str, opsional) β€” Nama eksperimen. Variabel lingkungan CLEARML_PROJECT dan CLEARML_TASK memiliki prioritas lebih tinggi daripada argumen ini.
  • **kwargs (argumen kata kunci tambahan, opsional) β€” Kwargs yang diteruskan ke metode Task.__init__.

Kelas Tracker yang mendukung clearml. Sebaiknya diinisialisasi di awal skrip Anda.

__init__

< >

( run_name: str | None = None**kwargs )

SwanLabTracker

kelas accelerate.tracking.SwanLabTracker

< >

( run_name: str**kwargs )

Parameter

  • run_name (str) β€” Nama dari run eksperimen.
  • **kwargs (argumen kata kunci tambahan, opsional) β€” Argumen kata kunci tambahan yang diteruskan ke metode swanlab.init.

Kelas Tracker yang mendukung swanlab. Sebaiknya diinisialisasi di awal skrip Anda.

__init__

< >

( run_name: str**kwargs )

Update on GitHub