Skip to main content

클래스 wandb.apis.public.Run

entity 및 프로젝트와 연결된 하나의 run.

인수

  • service_api: 이 run에 대해 W&B API 호출을 수행하는 wandb-core 서비스 인터페이스입니다.
  • entity: run과 연결된 entity.
  • project: run과 연결된 프로젝트.
  • run_id: run의 고유 식별자.
  • attrs: run의 속성.
  • include_sweeps: run에 스윕을 포함할지 여부.
  • lazy:
  • api_key:

속성

  • tags ([str]): run에 연결된 태그 목록
  • url (str): 이 run의 URL
  • id (str): run의 고유 식별자(기본적으로 8자)
  • name (str): run의 이름
  • state (str): 다음 중 하나: running, finished, crashed, killed, preempting, preempted
  • config (dict): run에 연결된 하이퍼파라미터 dict
  • created_at (str): run이 시작된 시점의 ISO 타임스탬프
  • system_metrics (dict): run에 대해 기록된 최신 시스템 메트릭
  • summary (dict): 현재 summary를 담고 있는 변경 가능한 dict 유사 속성입니다. update를 호출하면 변경 사항이 저장됩니다.
  • project (str): run에 연결된 프로젝트
  • entity (str): run에 연결된 entity의 이름
  • project_internal_id (int): 프로젝트의 내부 ID
  • user (str): run을 생성한 사용자의 이름
  • path (str): 고유 식별자 [entity]/[project]/[run_id]
  • notes (str): run에 대한 메모
  • read_only (boolean): run을 편집할 수 있는지 여부
  • history_keys (str): wandb.Run.log({"key": "value"})로 로깅된 이력 메트릭 키
  • metadata (str): wandb-metadata.json에 있는 run 관련 메타데이터

속성

속성 config

run 구성(config)을 가져옵니다. lazy 모드일 때 전체 데이터를 자동으로 불러옵니다.

속성 entity

run과 연관된 entity입니다.

속성 id

run의 고유 식별자입니다.

속성 lastHistoryStep

run 이력에 기록된 마지막 step을 반환합니다.

속성 metadata

wandb-metadata.json에서 가져온 run에 대한 메타데이터입니다. 메타데이터에는 run의 설명, 태그, 시작 시간, 메모리 사용량 등 다양한 정보가 포함됩니다.

속성 name

run의 이름입니다.

속성 path

run의 경로를 나타냅니다. 이 경로는 entity, 프로젝트, run_id로 구성된 리스트입니다.

속성 rawconfig

내부 키를 포함하는 원시 run config를 반환합니다. lazy 모드인 경우 전체 데이터를 자동으로 로드합니다.

속성 state

run의 상태입니다. 다음 표에서는 run이 가질 수 있는 상태를 설명합니다.

속성 storage_id

run의 고유 스토리지 식별자입니다.

속성 summary

run의 요약 메트릭을 가져옵니다. lazy 모드인 경우 전체 데이터를 자동으로 로드합니다.

속성 summary_metrics

run의 요약 메트릭을 가져옵니다. lazy 모드일 경우 전체 데이터를 자동으로 로드합니다.

속성 sweep

이 run에 연결된 스윕입니다. include_sweeps가 False로 설정된 경우 스윕 데이터를 로드합니다.

속성 sweep_name

스윕 이름을 가져옵니다. sweepName은 lightweight fragment에 포함되어 있기 때문에 항상 사용할 수 있습니다.

속성 system_metrics

run의 시스템 메트릭을 가져옵니다. lazy 모드인 경우 전체 데이터를 자동으로 로드합니다.

속성 url

run의 URL입니다. run URL은 entity, 프로젝트, 그리고 run_id로부터 생성됩니다. SaaS 사용자의 경우 https://wandb.ai/entity/project/run_id 형식입니다.

속성 username

이 API는 더 이상 사용되지 않습니다. 대신 entity를 사용하세요.

메서드

방법 Run.beta_scan_history()

인수
  • keys:
  • page_size:
  • min_step:
  • max_step:
  • use_cache:

방법 Run.create()

지정된 프로젝트에 대한 run을 생성합니다. 대부분의 경우에는 wandb.init()을 사용하십시오. wandb.init()은 run을 생성하고 업데이트하기 위한 더 견고한 로직을 제공합니다. wandb.apis.public.Run.create는 스케줄링되지 않을 수 있는 잡(예: GPU가 부족하거나 경쟁이 심한 Kubernetes 클러스터의 잡)에 대해 “pending” 상태의 run을 생성하는 등의 특정 시나리오를 위해 설계되었습니다. 이렇게 생성된 pending run은 나중에 재개하여 W&B로 추적할 수 있습니다. 이 메서드로 생성된 run은 기능이 제한적입니다. 이렇게 생성된 run에서 update()를 호출하면 예상과 다르게 동작할 수 있습니다.
인수
  • api: W&B API 인스턴스.
  • run_id: 선택적 run ID. 제공하지 않으면 무작위 ID가 생성됩니다.
  • project: 선택적 프로젝트 이름. API 설정의 프로젝트 또는 “uncategorized”가 기본값입니다.
  • entity: 선택적 entity(사용자 또는 팀) 이름.
  • state: run의 초기 상태. 나중에 재개할 run에는 “pending”을, 즉시 실행할 run에는 “running”을 사용하십시오.
예시
나중에 실행하기 위한 pending run 생성

방법 Run.delete()

wandb 백엔드에서 지정된 run을 삭제합니다.
인수
  • delete_artifacts: run과 연결된 아티팩트를 삭제할지 여부입니다.

방법 Run.download_history_exports()

run에 대한 모든 parquet 형식의 이력 파일을 지정한 디렉터리로 다운로드합니다.
인수
  • download_dir: 이력 파일을 다운로드할 디렉터리입니다.
  • require_complete_history: 전체 이력이 모두 다운로드되어야 하는지 여부입니다. true인 경우, run에 아직 parquet 파일로 내보내지 않은 데이터가 포함되어 있으면 IncompleteRunHistoryError가 발생합니다.
예외
  • IncompleteRunHistoryError: require_complete_history가 True이고 run에 아직 parquet 파일로 내보내지 않은 데이터가 포함되어 있는 경우 발생합니다.
  • WandbApiFailedError: 이력이 완전하지 않은 경우 이외의 이유로 API 요청이 실패한 경우 발생합니다.

방법 Run.file()

아티팩트에서 지정한 이름을 가진 파일의 경로를 반환합니다.
인수
  • name: 요청한 파일의 이름입니다.

방법 Run.files()

지정된 조건과 일치하는 run 내 모든 파일에 대한 Files 객체를 반환합니다. 정확히 일치시킬 파일 이름 목록을 지정하거나, 매칭에 사용할 패턴을 지정할 수 있습니다. 둘 다 제공된 경우 패턴은 무시됩니다.
인수
  • names: 요청된 파일의 이름 목록입니다. 비어 있으면 모든 파일을 반환합니다.
  • pattern: W&B에서 파일을 반환할 때 사용할 패턴입니다. 이 패턴은 mySQL의 LIKE 구문을 사용하므로, .json으로 끝나는 모든 파일을 매칭하려면 “%.json”을 사용합니다. namespattern이 모두 제공되면 ValueError가 발생합니다.
  • per_page: 페이지당 결과 개수입니다.

방법 Run.history()

run에 대해 샘플링된 이력 메트릭을 반환합니다. 이력 레코드가 샘플링되는 것이 괜찮다면, 이 방식이 더 단순하고 빠릅니다.
인수
  • samples: (int, optional) 반환할 샘플 개수
  • keys: (list, optional) 지정한 키에 대한 메트릭만 반환
  • x_axis: (str, optional) 이 메트릭을 x축으로 사용합니다. 기본값은 _step입니다.
  • pandas: (bool, optional) pandas DataFrame을 반환할지 여부
  • stream: (str, optional) 메트릭의 경우 “default”, 머신 메트릭의 경우 “system”

방법 Run.load()

lazy 모드 설정에 따라 적절한 프래그먼트를 사용해 run 데이터를 로드합니다.
인수
  • force: True로 설정하면 이미 로드되어 있더라도 서버에서 run 데이터를 다시 가져옵니다.
예외
  • RunNotFoundError: run을 찾을 수 없거나 run 데이터를 로드할 수 없는 경우 발생합니다.

방법 Run.load_full_data()

config, systemMetrics, summaryMetrics 같은 대용량 필드를 포함해 전체 run 데이터를 로드합니다. 이 메서드는 처음에 run 목록을 조회할 때 lazy=True를 사용했지만, 특정 run에 대해 전체 데이터에 접근해야 하는 경우에 유용합니다.
인수
  • force: 데이터가 이미 로드된 경우에도 강제로 다시 로드할지 여부

방법 Run.log_artifact()

run의 출력으로 사용할 아티팩트를 선언합니다.
인수
  • artifact: wandb.Api().artifact(name)에서 반환된 아티팩트입니다.
  • aliases: 이 아티팩트에 적용할 별칭 목록입니다.
  • tags: (list, optional) 이 아티팩트에 적용할 태그 목록입니다(있는 경우).

방법 Run.logged_artifacts()

이 run에서 로깅된 모든 아티팩트를 가져옵니다. run 동안 출력으로 로깅된 모든 아티팩트를 가져옵니다. 페이지네이션된 결과를 반환하며, 이 결과는 순회하거나 하나의 리스트로 모을 수 있습니다.
인수
  • per_page: API 요청당 가져올 아티팩트 개수입니다.
예시

방법 Run.save()

run 객체의 변경 내용을 W&B 백엔드에 반영합니다.

방법 Run.scan_history()

run의 모든 이력 레코드를 담은 이터러블 컬렉션을 반환합니다.
인수
  • keys: run의 이력에서 읽을 메트릭 목록입니다. keys를 지정하지 않으면 모든 메트릭이 반환됩니다.
  • page_size: 한 번에 읽을 이력 레코드 수입니다.
  • min_step: 이력을 읽기 시작할 최소 step(포함)입니다.
  • max_step: 이력을 읽을 최대 step(미포함)입니다.
  • use_cache: True로 설정하면 WANDB_CACHE_DIR에서 run 이력을 확인합니다. 캐시에서 run 이력을 찾을 수 없으면 서버에서 다운로드합니다. False로 설정하면 매번 run 이력을 서버에서 다운로드합니다.

방법 Run.stop()

이 run이 정상적으로 중지되도록 요청합니다. 그러면 W&B 백엔드에서 이 run의 중지 플래그가 설정되며, 이는 W&B App UI의 “Stop run” 버튼을 눌렀을 때 전송되는 신호와 동일합니다. run을 실행 중인 프로세스는 주기적인 하트비트를 통해 이 플래그를 감지하고 run을 정상적으로 종료하므로, 원격 run(예: Kubernetes 파드에서 실행 중인 run)을 종료할 때도 안전합니다. 중지는 비동기적으로 이루어집니다. 즉, 이 메서드는 백엔드가 run에 플래그를 설정하면 반환되며, run이 실제로 종료될 때까지 기다리지는 않습니다. 이를 다시 호출하거나 더 이상 실행 중이 아닌 run에 대해 호출해도 아무런 영향이 없습니다.
예외
  • wandb.Error: 요청이 실패하면 발생합니다.
예시

방법 Run.to_html()

이 run을 표시하는 iframe이 포함된 HTML을 생성합니다.
인수
  • height:
  • hidden:

방법 Run.update()

run 객체의 변경 내용을 wandb 백엔드에 저장합니다.

방법 Run.update_state()

run의 상태를 업데이트합니다. 지원되는 전환:
  • running, failed, crashed 또는 preempted에서 pending으로 (예: 종료되었거나 진행 중인 run을 다시 큐에 넣기 위해)
    • pending 또는 running에서 failed로 (예: 선점되었거나 손실된 run을 failed로 표시하기 위해)
스윕 Runs는 상태를 업데이트할 수 없습니다. 가능한 run 상태 목록은 Run.state를 참조하세요.
인수
  • state: 대상 run 상태입니다. "pending" 또는 "failed" 중 하나입니다.
예외
  • wandb.Error: 요청한 상태 전환이 허용되지 않거나, 서버가 이 작업을 지원하지 않는 경우 발생합니다.

방법 Run.upload_file()

로컬 파일을 현재 run과 연결하여 W&B에 업로드합니다.
인수
  • path: 업로드할 파일의 경로입니다. 절대 경로나 상대 경로 모두 사용할 수 있습니다.
  • root: 파일을 저장할 때 기준이 되는 루트 경로입니다. 예를 들어, run 내에서 파일이 “my_dir/file.txt”로 저장되기를 원하고 현재 디렉터리가 “my_dir”이라면, root를 ”../“로 설정하면 됩니다. 기본값은 현재 디렉터리(”.”)입니다.

방법 Run.use_artifact()

run의 입력으로 사용할 아티팩트를 선언합니다.
인수
  • artifact: wandb.Api().artifact(name)에서 반환된 아티팩트
  • use_as: 스크립트에서 아티팩트를 어떻게 사용하는지 식별하는 문자열입니다. 베타 기능인 wandb Launch의 아티팩트 스와핑 기능을 사용할 때 run에서 사용된 아티팩트를 쉽게 구분하는 데 사용됩니다.

방법 Run.used_artifacts()

이 run에서 명시적으로 사용된 아티팩트를 가져옵니다. 일반적으로 run.use_artifact()을 통해 run 동안 사용되었다고 명시적으로 선언된 입력 아티팩트만을 가져옵니다. 반복(iteration)하거나 단일 리스트로 수집할 수 있는 페이징된 결과를 반환합니다.
인수
  • per_page: API 요청당 가져올 아티팩트 개수입니다.
예시

방법 Run.wait_until_finished()

run이 완료될 때까지 해당 run의 상태를 확인합니다.