> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.app/llms.txt
> Use this file to discover all available pages before exploring further.

# 아티팩트

export const GitHubLink = ({url}) => <a href={url} target="_blank" rel="noopener noreferrer" className="github-source-link">
    <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
      <path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z" />
    </svg>
    GitHub 소스 코드
  </a>;

<GitHubLink url="https://github.com/wandb/wandb/blob/main/wandb/sdk/artifacts/artifact.py" />

## <kbd>class</kbd> `Artifact`

데이터셋과 모델 버저닝을 위한 유연하고 가벼운 구성 요소입니다.

빈 W\&B 아티팩트를 생성합니다. `add`로 시작하는 메서드를 사용해 아티팩트의 내용을 채웁니다. 아티팩트에 포함할 파일을 모두 추가한 다음 `run.log_artifact()`를 호출해 기록합니다.

### <kbd>method</kbd> `Artifact.__init__`

```python  theme={null}
__init__(
    name: 'str',
    type: 'str',
    description: 'str | None' = None,
    metadata: 'dict[str, Any] | None' = None,
    incremental: 'bool' = False,
    use_as: 'str | None' = None,
    storage_region: 'str | None' = None
) → None
```

**Args:**

* `name` (str):  사람이 읽을 수 있는 아티팩트 이름입니다. 이 이름을 사용해 W\&B App UI 또는 프로그래밍 방식으로 특정 아티팩트를 식별합니다. `use_artifact` Public API를 사용해 인터랙티브하게 아티팩트를 참조할 수 있습니다. 이름에는 문자, 숫자, 밑줄, 하이픈, 점을 포함할 수 있습니다. 이름은 프로젝트 전체에서 고유해야 합니다.
* `type` (str):  아티팩트의 타입입니다. 아티팩트의 타입을 사용해 아티팩트를 구성하고 구분합니다. 문자, 숫자, 밑줄, 하이픈, 점을 포함하는 임의의 문자열을 사용할 수 있습니다. 일반적인 타입에는 `dataset` 또는 `model`이 있습니다. 아티팩트를 W\&B Model Registry에 연결하려면 타입 문자열에 `model`을 포함하십시오. 일부 타입은 내부 용도로 예약되어 있으며 사용자가 설정할 수 없습니다. 예를 들어 `job` 및 `wandb-`로 시작하는 타입이 해당됩니다.
* `description (str | None) = None`:  아티팩트에 대한 설명입니다. 모델 또는 데이터셋 아티팩트의 경우, 표준화된 팀 모델 또는 데이터셋 카드에 대한 문서를 추가하십시오. `Artifact.description` 속성을 통해 프로그래밍 방식으로, 또는 W\&B App UI를 통해 아티팩트의 설명을 확인할 수 있습니다. W\&B는 이 설명을 W\&B App에서 마크다운으로 렌더링합니다.
* `metadata (dict[str, Any] | None) = None`:  아티팩트에 대한 추가 정보입니다. 메타데이터는 키-값 쌍으로 구성된 딕셔너리로 지정합니다. 키는 총 100개를 초과할 수 없습니다.
* `incremental`:  기존 아티팩트를 수정하려면 대신 `Artifact.new_draft()` 메서드를 사용하십시오.
* `use_as`:  사용 중단(deprecated)되었습니다.

**Returns:**
`Artifact` 객체를 반환합니다.

***

### <kbd>property</kbd> Artifact.aliases

하나 이상의 의미를 잘 드러내는 참조 또는

아티팩트 버전에 할당된 식별용 "별칭" 목록입니다.

별칭은 코드에서 사용할 수 있는 변경 가능한 참조입니다. W\&B App UI 또는 프로그램적으로 아티팩트의 별칭을 변경할 수 있습니다. 자세한 내용은 [새 아티팩트 버전 생성](https://docs.wandb.ai/guides/artifacts/create-a-new-artifact-version)을 참고하세요.

**반환 값:**

* `list[str]`: aliases 프로퍼티 값.

***

### <kbd>property</kbd> Artifact.collection

이 아티팩트를 가져온 컬렉션입니다.

컬렉션은 아티팩트 버전들의 순서가 있는 그룹입니다. 이 아티팩트가 연결(link)된 컬렉션에서 가져온 것이라면, 해당 컬렉션을 반환합니다. 그렇지 않으면, 이 아티팩트 버전이 처음 생성된 컬렉션을 반환합니다.

아티팩트가 처음 생성된 컬렉션을 소스 시퀀스(source sequence)라고 합니다.

**반환값:**

* `ArtifactCollection`: collection 속성 값.

***

### <kbd>property</kbd> Artifact.commit\_hash

이 아티팩트가 커밋되었을 때 반환된 해시입니다.

**반환값:**

* `str`: commit\_hash 프로퍼티의 값.

***

### <kbd>property</kbd> Artifact.created\_at

아티팩트가 생성된 시점의 타임스탬프입니다.

**반환값:**

* `str`: created\_at 속성 값입니다.

***

### <kbd>property</kbd> Artifact.description

아티팩트에 대한 설명입니다.

**반환값:**

* `str | None`: description 속성의 값.

### <kbd>property</kbd> Artifact.digest

아티팩트의 논리 다이제스트입니다.

다이제스트는 아티팩트 내용의 체크섬입니다. 아티팩트의 다이제스트가 현재 `latest` 버전과 동일하면 `log_artifact`는 아무 동작도 수행하지 않습니다.

**반환값:**

* `str`: 다이제스트 속성 값.

***

### <kbd>property</kbd> Artifact.entity

아티팩트 컬렉션이 속한 엔터티의 이름입니다.

아티팩트가 링크인 경우, 이 값은 연결된 아티팩트의 엔터티입니다.

**Returns:**

* `str`: 엔터티 속성 값입니다.

***

### <kbd>property</kbd> Artifact.file\_count

파일 개수(참조 포함)입니다.

**반환값:**

* `int`: file\_count 속성 값.

### <kbd>property</kbd> Artifact.history\_step

이 아티팩트의 소스 실행에서 히스토리 메트릭이 기록된 가장 가까운 스텝(단계)입니다.

**예시:**

```python  theme={null}
run = artifact.logged_by()
if run and (artifact.history_step is not None):
     history = run.sample_history(
         min_step=artifact.history_step,
         max_step=artifact.history_step + 1,
         keys=["my_metric"],
     )
```

**반환값:**

* `int | None`: history\_step 속성의 값입니다.

***

### <kbd>property</kbd> Artifact.id

아티팩트의 ID입니다.

**반환값:**

* `str | None`: ID 속성 값입니다.

***

### <kbd>property</kbd> Artifact.is\_link

아티팩트가 링크 아티팩트인지 여부를 나타내는 불리언 플래그입니다.

True: 이 아티팩트는 소스 아티팩트에 대한 링크 아티팩트입니다. False: 이 아티팩트는 소스 아티팩트입니다.

**Returns:**

* `bool`: is\_link 속성 값.

***

### <kbd>property</kbd> Artifact.linked\_artifacts

소스 아티팩트에 연결된 모든 아티팩트의 목록을 반환합니다.

이 아티팩트가 링크 아티팩트(`artifact.is_link == True`)인 경우 빈 리스트를 반환합니다.

결과는 최대 500개로 제한됩니다.

**반환값:**

* `list[Artifact]`: linked\_artifacts 프로퍼티의 값.

### <kbd>property</kbd> Artifact.manifest

아티팩트의 매니페스트입니다.

매니페스트에는 아티팩트의 모든 내용이 나열되며, 아티팩트가 로그된 이후에는 변경할 수 없습니다.

**반환값:**

* `ArtifactManifest`: manifest 속성 값입니다.

***

### <kbd>property</kbd> Artifact.metadata

사용자가 정의한 아티팩트 메타데이터입니다.

아티팩트에 연결된 구조화된 데이터입니다.

**반환 값:**

* `dict`: metadata 속성 값입니다.

### <kbd>property</kbd> Artifact.name

아티팩트의 이름과 버전입니다.

`{collection}:{alias}` 형식의 문자열입니다. 아티팩트가 로그되거나 저장되기 전에 가져오면 이름에는 `alias`가 포함되지 않습니다. 아티팩트가 링크인 경우 이름은 링크된 아티팩트의 이름이 됩니다.

**Returns:**

* `str`: `name` 프로퍼티의 값.

***

### <kbd>property</kbd> Artifact.project

아티팩트 컬렉션이 속한 프로젝트의 이름입니다.

아티팩트가 링크인 경우, 이 프로젝트는 연결된 아티팩트의 프로젝트가 됩니다.

**Returns:**

* `str`: project 속성 값.

***

### <kbd>property</kbd> Artifact.qualified\_name

아티팩트의 entity/project/name을 나타냅니다.

아티팩트가 링크인 경우, qualified\_name은 연결된 아티팩트 경로의 qualified\_name입니다.

**반환값:**

* `str`: qualified\_name 속성 값.

***

### <kbd>property</kbd> Artifact.size

아티팩트의 총 크기(바이트 단위)입니다.

이 아티팩트에서 추적하는 모든 참조를 포함합니다.

**반환 값:**

* `int`: size 속성 값.

***

### <kbd>property</kbd> Artifact.source\_artifact

소스 아티팩트(처음으로 로깅된 원본 아티팩트)를 반환합니다.

이 아티팩트가 소스 아티팩트인 경우(`artifact.is_link == False`), 자기 자신을 반환합니다.

**반환값:**

* `Artifact`: source\_artifact 프로퍼티 값.

***

### <kbd>property</kbd> Artifact.source\_collection

아티팩트의 소스 컬렉션입니다.

소스 컬렉션은 해당 아티팩트가 로깅된 컬렉션입니다.

**반환값:**

* `ArtifactCollection`: `source_collection` 속성 값입니다.

***

### <kbd>property</kbd> Artifact.source\_entity

소스 아티팩트의 엔터티 이름입니다.

**반환:**

* `str`: source\_entity 프로퍼티의 값.

***

### <kbd>property</kbd> Artifact.source\_name

소스 아티팩트의 이름과 버전입니다.

`{source_collection}:{alias}` 형식의 문자열입니다. 아티팩트가 저장되기 전에는 버전을 아직 알 수 없으므로 이름만 포함합니다.

**반환:**

* `str`: source\_name 속성 값.

***

### <kbd>property</kbd> Artifact.source\_project

소스 아티팩트가 속한 프로젝트의 이름입니다.

**반환값:**

* `str`: source\_project 속성 값입니다.

***

### <kbd>property</kbd> Artifact.source\_qualified\_name

소스 아티팩트의 source\_entity/source\_project/source\_name을 나타냅니다.

**반환값:**

* `str`: source\_qualified\_name 속성의 값입니다.

***

### <kbd>property</kbd> Artifact.source\_version

소스 아티팩트의 버전입니다.

`v{number}` 형식의 문자열입니다.

**반환:**

* `str`: `source_version` 프로퍼티의 값입니다.

### <kbd>property</kbd> Artifact.state

아티팩트의 상태입니다. `"PENDING"`, `"COMMITTED"`, `"DELETED"` 중 하나입니다.

**반환값:**

* `str`: `state` 속성 값.

### <kbd>property</kbd> Artifact.tags

이 아티팩트 버전에 할당된 태그들의 목록입니다.

**반환값:**

* `list[str]`: tags 속성 값입니다.

***

### <kbd>property</kbd> Artifact.ttl

아티팩트의 time-to-live(TTL) 정책입니다.

TTL 정책에서 지정한 기간이 지나면 아티팩트는 곧 삭제됩니다. `None` 으로 설정하면 아티팩트는 TTL 정책을 비활성화하며, 팀 기본 TTL이 있더라도 삭제 예약 대상이 되지 않습니다. 팀 관리자가 기본 TTL을 정의했고 아티팩트에 사용자 지정 정책이 설정되어 있지 않은 경우, 아티팩트는 팀 기본값에서 TTL 정책을 상속받습니다.

**오류:**

* `ArtifactNotLoggedError`:  아티팩트가 로그되거나 저장되지 않은 경우 상속된 TTL을 가져올 수 없습니다.

**반환값:**

* `timedelta | None`: ttl 속성의 값입니다.

***

### <kbd>property</kbd> Artifact.type

아티팩트의 유형입니다. 일반적인 유형으로는 `dataset` 또는 `model`이 있습니다.

**반환값:**

* `str`: type 속성 값.

### <kbd>property</kbd> Artifact.updated\_at

아티팩트가 마지막으로 업데이트된 시각입니다.

**반환값:**

* `str`: updated\_at 속성 값입니다.

***

### <kbd>property</kbd> Artifact.url

아티팩트의 URL을 생성합니다.

**반환값:**

* `str`:  아티팩트의 URL입니다.

**반환값:**

* `str`: url 속성 값입니다.

***

### <kbd>property</kbd> Artifact.use\_as

사용 중단됨.

**반환값:**

* `str | None`: use\_as 속성 값.

***

### <kbd>property</kbd> Artifact.version

아티팩트의 버전입니다.

`v{number}` 형식의 문자열입니다. 링크 아티팩트인 경우, 버전은 연결된 컬렉션의 버전입니다.

**반환값:**

* `str`: version 프로퍼티 값.

***

### <kbd>메서드</kbd> `Artifact.add`

```python  theme={null}
add(
    obj: 'WBValue',
    name: 'StrPath',
    overwrite: 'bool' = False
) → ArtifactManifestEntry
```

아티팩트에 wandb.WBValue `obj`를 추가합니다.

**인자:**

* `obj`:  추가할 객체입니다. 현재 Bokeh, JoinedTable, PartitionedTable, Table, Classes, ImageMask, BoundingBoxes2D, Audio, Image, Video, Html, Object3D 중 하나만 지원합니다.
* `name`:  객체를 추가할 아티팩트 내부 경로입니다.
* `overwrite`:  True인 경우, 해당되는 경우 동일한 파일 경로를 가진 기존 객체를 덮어씁니다.

**반환값:**
추가된 매니페스트 엔트리

**예외:**

* `ArtifactFinalizedError`:  현재 아티팩트 버전은 최종 확정되어 변경할 수 없습니다. 대신 새 아티팩트 버전을 로그하세요.

***

### <kbd>메서드</kbd> `Artifact.add_dir`

```python  theme={null}
add_dir(
    local_path: 'str',
    name: 'str | None' = None,
    skip_cache: 'bool | None' = False,
    policy: "Literal['mutable', 'immutable'] | None" = 'mutable',
    merge: 'bool' = False
) → None
```

로컬 디렉터리를 아티팩트에 추가합니다.

**인자:**

* `local_path`:  로컬 디렉터리의 경로.
* `name`:  아티팩트 내 서브디렉터리 이름. 지정한 이름은 W\&B 앱 UI에서 아티팩트의 `type`에 따라 중첩되어 표시됩니다. 기본값은 아티팩트의 루트입니다.
* `skip_cache`:  `True`로 설정하면 업로드하는 동안 W\&B가 파일을 캐시에 복사/이동하지 않습니다.
* `policy`:  기본값은 "mutable"입니다.
  * mutable: 업로드 중 손상을 방지하기 위해 파일의 임시 복사본을 생성합니다.
  * immutable: 보호를 비활성화하고, 사용자가 파일을 삭제하거나 변경하지 않는다는 가정에 의존합니다.
* `merge`:  `False`(기본값)인 경우, 이전 `add_dir` 호출에서 이미 추가된 파일의 내용이 변경되었다면 `ValueError`를 발생시킵니다. `True`인 경우, 변경된 내용으로 기존 파일을 덮어씁니다. 항상 새 파일은 추가하며, 기존 파일은 제거하지 않습니다. 전체 디렉터리를 교체하려면 `add_dir(local_path, name=my_prefix)`를 사용해 디렉터리를 추가할 때 `name`을 전달한 뒤, `remove(my_prefix)`를 호출해 디렉터리를 제거하고 다시 추가하십시오.

**예외:**

* `ArtifactFinalizedError`:  현재 아티팩트 버전이 최종 확정된 상태이므로 변경할 수 없습니다. 대신 새 아티팩트 버전을 로깅하십시오.
* `ValueError`:  `policy`는 "mutable" 또는 "immutable"이어야 합니다.

***

### <kbd>메서드</kbd> `Artifact.add_file`

```python  theme={null}
add_file(
    local_path: 'str',
    name: 'str | None' = None,
    is_tmp: 'bool | None' = False,
    skip_cache: 'bool | None' = False,
    policy: "Literal['mutable', 'immutable'] | None" = 'mutable',
    overwrite: 'bool' = False
) → ArtifactManifestEntry
```

로컬 파일을 아티팩트에 추가합니다.

**인자:**

* `local_path`:  추가할 파일의 경로.
* `name`:  추가할 파일에 대해 아티팩트 내에서 사용할 경로. 기본값은 파일의 기본 이름(베이스 이름)입니다.
* `is_tmp`:  `True`이면 충돌을 피하기 위해 항상 동일한 규칙으로 파일 이름을 변경합니다.
* `skip_cache`:  `True`이면 업로드 후 캐시에 파일을 복사하지 않습니다.
* `policy`:  기본값은 "mutable"입니다. "mutable"로 설정하면 업로드 중 손상을 방지하기 위해 파일의 임시 복사본을 생성합니다. "immutable"로 설정하면 보호를 비활성화하고, 사용자가 파일을 삭제하거나 변경하지 않는다는 가정에 의존합니다.
* `overwrite`:  `True`이면 파일이 이미 존재하는 경우 덮어씁니다.

**반환값:**
추가된 매니페스트 항목.

**예외:**

* `ArtifactFinalizedError`:  현재 아티팩트 버전이 최종 확정되었기 때문에 변경할 수 없습니다. 대신 새로운 아티팩트 버전을 기록하십시오.
* `ValueError`:  `policy`는 "mutable" 또는 "immutable"이어야 합니다.

***

### <kbd>메서드</kbd> `Artifact.add_reference`

```python  theme={null}
add_reference(
    uri: 'ArtifactManifestEntry | str',
    name: 'StrPath | None' = None,
    checksum: 'bool' = True,
    max_objects: 'int | None' = None
) → Sequence[ArtifactManifestEntry]
```

아티팩트에 URI로 지정된 참조를 추가합니다.

아티팩트에 추가하는 파일이나 디렉터리와 달리, 참조는 W\&B로 업로드되지 않습니다. 자세한 내용은 [외부 파일 추적](https://docs.wandb.ai/guides/artifacts/track-external-files)을 참조하세요.

기본적으로 다음 스킴을 지원합니다:

* http(s): 파일의 크기와 다이제스트는 서버가 반환하는 `Content-Length` 및 `ETag` 응답 헤더로부터 추론됩니다.
* s3: 체크섬과 크기는 오브젝트 메타데이터에서 가져옵니다. 버킷 버저닝이 활성화되어 있다면 버전 ID도 함께 추적됩니다.
* gs: 체크섬과 크기는 오브젝트 메타데이터에서 가져옵니다. 버킷 버저닝이 활성화되어 있다면 버전 ID도 함께 추적됩니다.
* https, 도메인이 `*.blob.core.windows.net`와 일치하는 경우
* Azure: 체크섬과 크기는 blob 메타데이터에서 가져옵니다. 스토리지 계정 버저닝이 활성화되어 있다면 버전 ID도 함께 추적됩니다.
* file: 체크섬과 크기는 파일 시스템에서 가져옵니다. 이 스킴은 NFS 공유나 기타 외부 마운트 볼륨에, 업로드는 하지 않고 추적만 하고 싶은 파일이 있는 경우에 유용합니다.

그 외 스킴의 경우, 다이제스트는 URI의 해시만 사용하고 크기는 비워 둡니다.

**Args:**

* `uri`:  추가할 참조의 URI 경로입니다. URI 경로는 다른 아티팩트의 엔트리에 대한 참조를 저장하기 위해 `Artifact.get_entry`가 반환하는 객체가 될 수 있습니다.
* `name`:  이 참조의 내용을 배치할 아티팩트 내부 경로입니다.
* `checksum`:  참조 URI에 위치한 리소스에 대해 체크섬을 수행할지 여부입니다. 체크섬을 권장하며, 이를 통해 자동 무결성 검증이 가능해집니다. 체크섬을 비활성화하면 아티팩트 생성 속도는 빨라지지만 참조 디렉터리를 순회하지 않으므로 디렉터리의 객체들이 아티팩트에 저장되지 않습니다. 참조 객체를 추가할 때는 `checksum=False`로 설정할 것을 권장하며, 이 경우 참조 URI가 변경될 때만 새 버전이 생성됩니다.
* `max_objects`:  디렉터리 또는 버킷 스토어 프리픽스를 가리키는 참조를 추가할 때 고려할 최대 객체 수입니다. 기본적으로 Amazon S3, GCS, Azure, 로컬 파일에 대해 허용되는 최대 객체 수는 10,000,000개입니다. 다른 URI 스킴에는 최대값이 없습니다.

**Returns:**
추가된 매니페스트 엔트리입니다.

**Raises:**

* `ArtifactFinalizedError`:  현재 아티팩트 버전이 최종 확정(finalized) 상태이므로 변경할 수 없습니다. 대신 새 아티팩트 버전을 기록하세요.

***

### <kbd>메서드</kbd> `Artifact.checkout`

```python  theme={null}
checkout(root: 'str | None' = None) → str
```

지정된 루트 디렉터리를 아티팩트의 내용으로 교체합니다.

경고: 아티팩트에 포함되지 않은 `root` 내의 모든 파일은 삭제됩니다.

**인자:**

* `root`:  이 아티팩트의 파일로 교체할 디렉터리.

**반환값:**
체크아웃된 내용의 경로.

**예외:**

* `ArtifactNotLoggedError`:  아티팩트가 로그되지 않은 경우.

***

### <kbd>메서드</kbd> `Artifact.delete`

```python  theme={null}
delete(delete_aliases: 'bool' = False) → None
```

아티팩트와 해당 파일을 삭제합니다.

링크된 아티팩트에서 호출된 경우, 링크만 삭제되고 원본 아티팩트는 영향을 받지 않습니다.

소스 아티팩트와 컬렉션 간의 링크를 제거하려면 `Artifact.delete()` 대신 `Artifact.unlink()`을 사용하십시오.

**Args:**

* `delete_aliases`:  `True`로 설정하면 아티팩트와 연결된 모든 별칭을 삭제합니다. `False`인 경우, 아티팩트에 기존 별칭이 있으면 예외를 발생시킵니다. 이 파라미터는 아티팩트가 연결된 컬렉션에서 가져온 경우에는 무시됩니다.

**Raises:**

* `ArtifactNotLoggedError`:  아티팩트가 로깅되지 않은 경우.

***

### <kbd>method</kbd> `Artifact.download`

```python  theme={null}
download(
    root: 'StrPath | None' = None,
    allow_missing_references: 'bool' = False,
    skip_cache: 'bool | None' = None,
    path_prefix: 'StrPath | None' = None,
    multipart: 'bool | None' = None
) → FilePathStr
```

지정된 루트 디렉터리로 아티팩트의 내용을 다운로드합니다.

`root` 내에 존재하는 기존 파일은 수정되지 않습니다. `root`의 내용이 아티팩트와 정확히 일치하도록 하려면 `download`를 호출하기 전에 `root`를 명시적으로 삭제하십시오.

**Args:**

* `root`:  W\&B가 아티팩트의 파일을 저장하는 디렉터리입니다.
* `allow_missing_references`:  `True`로 설정하면, 잘못된 참조 경로는 참조된 파일을 다운로드하는 동안 무시됩니다.
* `skip_cache`:  `True`로 설정하면, 아티팩트 캐시를 건너뛰고 다운로드 시 각 파일을 기본 루트 또는 지정된 다운로드 디렉터리로 직접 다운로드합니다.
* `path_prefix`:  지정된 경우, 주어진 접두사로 시작하는 경로를 가진 파일만 다운로드합니다. 유닉스 형식(순방향 슬래시 `/` 사용)을 따릅니다.
* `multipart`:  `None`(기본값)으로 설정하면, 개별 파일 크기가 2GB보다 큰 경우 multipart 다운로드를 사용해 병렬로 아티팩트를 다운로드합니다. `True` 또는 `False`로 설정하면, 파일 크기에 상관없이 각각 병렬 또는 직렬로 아티팩트를 다운로드합니다.

**Returns:**
다운로드된 콘텐츠의 경로입니다.

**Raises:**

* `ArtifactNotLoggedError`:  아티팩트가 로그되지 않은 경우 발생합니다.

***

### <kbd>method</kbd> `Artifact.file`

```python  theme={null}
file(root: 'str | None' = None) → StrPath
```

`root`로 지정한 디렉터리에 단일 파일로 구성된 아티팩트를 다운로드합니다.

**인자(Args):**

* `root`:  파일을 저장할 루트 디렉터리입니다. 기본값은 `./artifacts/self.name/`입니다.

**반환(Returns):**
다운로드된 파일의 전체 경로입니다.

**예외(Raises):**

* `ArtifactNotLoggedError`:  아티팩트가 로깅되지 않은 경우.
* `ValueError`:  아티팩트에 파일이 둘 이상 포함된 경우.

***

### <kbd>method</kbd> `Artifact.files`

```python  theme={null}
files(names: 'list[str] | None' = None, per_page: 'int' = 50) → ArtifactFiles
```

이 아티팩트에 저장된 모든 파일을 순회(iterate)합니다.

**인자(Args):**

* `names`:  나열하려는, 아티팩트 루트를 기준으로 한 파일 경로입니다.
* `per_page`:  요청당 반환할 파일 개수입니다.

**반환(Returns):**
`File` 객체를 포함하는 이터레이터입니다.

**예외(Raises):**

* `ArtifactNotLoggedError`:  아티팩트가 로그로 기록되지 않은 경우 발생합니다.

***

### <kbd>메서드</kbd> `Artifact.finalize`

```python  theme={null}
finalize() → None
```

아티팩트 버전을 최종 확정합니다.

아티팩트는 특정 아티팩트 버전으로 로깅되므로, 한 번 최종 확정된 아티팩트 버전은 수정할 수 없습니다. 아티팩트에 더 많은 데이터를 로깅하려면 새 아티팩트 버전을 생성하십시오. 아티팩트는 `log_artifact`로 아티팩트를 로깅할 때 자동으로 최종 확정됩니다.

***

### <kbd>method</kbd> `Artifact.get`

```python  theme={null}
get(name: 'str') → WBValue | None
```

아티팩트 내에서 상대 이름이 `name`인 WBValue 객체를 가져옵니다.

**인자:**

* `name`:  가져올 아티팩트 상대 이름입니다.

**반환값:**
`run.log()`으로 로깅하고 W\&B UI에서 시각화할 수 있는 W\&B 객체입니다.

**예외:**

* `ArtifactNotLoggedError`:  아티팩트가 로깅되지 않았거나 실행이 오프라인인 경우.

### <kbd>메서드</kbd> `Artifact.get_added_local_path_name`

```python  theme={null}
get_added_local_path_name(local_path: 'str') → str | None
```

로컬 파일 시스템 경로를 통해 추가된 파일의 아티팩트 상대 이름을 가져옵니다.

**Args:**

* `local_path`:  아티팩트 상대 이름으로 변환할 로컬 경로입니다.

**Returns:**
아티팩트 상대 이름입니다.

***

### <kbd>메서드</kbd> `Artifact.get_entry`

```python  theme={null}
get_entry(name: 'StrPath') → ArtifactManifestEntry
```

지정된 이름의 항목을 가져옵니다.

**인자:**

* `name`:  가져올 아티팩트 내 상대 이름

**반환값:**
`W&B` 객체.

**예외:**

* `ArtifactNotLoggedError`:  아티팩트가 기록되지 않았거나 실행이 오프라인인 경우.
* `KeyError`:  아티팩트에 지정된 이름을 가진 항목이 없는 경우.

***

### <kbd>메서드</kbd> `Artifact.get_path`

```python  theme={null}
get_path(name: 'StrPath') → ArtifactManifestEntry
```

더 이상 사용되지 않습니다. `get_entry(name)`를 사용하세요.

***

### <kbd>메서드</kbd> `Artifact.is_draft`

```python  theme={null}
is_draft() → bool
```

아티팩트가 저장되지 않은 상태인지 확인합니다.

**반환값:**
Boolean. 아티팩트가 저장된 경우 `False`, 아티팩트가 저장되지 않은 경우 `True`.

***

### <kbd>method</kbd> `Artifact.json_encode`

```python  theme={null}
json_encode() → dict[str, Any]
```

아티팩트를 JSON 형식으로 인코딩한 값을 반환합니다.

**Returns:**
아티팩트의 속성을 나타내는 `string` 키를 가진 `dict`.

***

### <kbd>method</kbd> `Artifact.link`

```python  theme={null}
link(target_path: 'str', aliases: 'Iterable[str] | None' = None) → Artifact
```

이 아티팩트를 컬렉션에 연결합니다.

**Args:**

* `target_path`:  컬렉션의 경로입니다. 경로는 접두사 "wandb-registry-"와 레지스트리 이름, 컬렉션 이름으로 구성됩니다. 형식: `wandb-registry-{REGISTRY_NAME}/{COLLECTION_NAME}`.
* `aliases`:  연결된 아티팩트에 하나 이상의 별칭을 추가합니다. 가장 최근에 연결한 아티팩트에는 자동으로 "latest" 별칭이 적용됩니다.

**Raises:**

* `ArtifactNotLoggedError`:  아티팩트가 로그되지 않은 경우 발생합니다.

**Returns:**
연결된 아티팩트를 반환합니다.

***

### <kbd>method</kbd> `Artifact.logged_by`

```python  theme={null}
logged_by() → Run | None
```

처음 해당 아티팩트를 로깅한 W\&B 실행을 가져옵니다.

**Returns:**
처음 해당 아티팩트를 로깅한 W\&B 실행의 이름.

**Raises:**

* `ArtifactNotLoggedError`:  아티팩트가 로깅되지 않은 경우.

***

### <kbd>method</kbd> `Artifact.new_draft`

```python  theme={null}
new_draft() → Artifact
```

이 커밋된 아티팩트와 동일한 내용을 가진 새로운 초안 아티팩트를 생성합니다.

기존 아티팩트를 수정하면 "증분 아티팩트(incremental artifact)"라고 불리는 새로운 아티팩트 버전이 생성됩니다. 반환된 아티팩트는 확장하거나 수정한 뒤 새 버전으로 로그로 기록할 수 있습니다.

**반환값:**
`Artifact` 객체.

**예외:**

* `ArtifactNotLoggedError`:  아티팩트가 로그되지 않았을 때 발생합니다.

***

### <kbd>메서드</kbd> `Artifact.new_file`

```python  theme={null}
new_file(
    name: 'str',
    mode: 'str' = 'x',
    encoding: 'str | None' = None
) → Iterator[IO]
```

새 임시 파일을 열어 아티팩트에 추가합니다.

**Args:**

* `name`:  아티팩트에 추가할 새 파일의 이름.
* `mode`:  새 파일을 열 때 사용할 파일 접근 모드.
* `encoding`:  새 파일을 열 때 사용할 인코딩.

**Returns:**
쓰기 가능한 새 파일 객체입니다. 파일을 닫으면 자동으로 아티팩트에 추가됩니다.

**Raises:**

* `ArtifactFinalizedError`:  현재 아티팩트 버전이 최종 확정되었기 때문에 변경할 수 없습니다. 대신 새 아티팩트 버전을 로그하세요.

***

### <kbd>메서드</kbd> `Artifact.remove`

```python  theme={null}
remove(item: 'StrPath | ArtifactManifestEntry') → None
```

아티팩트에서 항목을 제거합니다.

**인수:**

* `item`:  제거할 항목입니다. 특정 매니페스트 엔트리이거나 아티팩트 기준 상대 경로 이름일 수 있습니다. 항목이 디렉터리인 경우 해당 디렉터리의 모든 항목이 제거됩니다.

**예외:**

* `ArtifactFinalizedError`:  현재 아티팩트 버전이 이미 최종 확정되어 변경할 수 없습니다. 대신 새 아티팩트 버전을 로그하세요.
* `FileNotFoundError`:  항목을 아티팩트에서 찾을 수 없는 경우.

***

### <kbd>메서드</kbd> `Artifact.save`

```python  theme={null}
save(
    project: 'str | None' = None,
    settings: 'wandb.Settings | None' = None
) → None
```

아티팩트에 가한 모든 변경 사항을 영구적으로 저장합니다.

현재 실행이 있는 경우 해당 실행이 이 아티팩트를 기록합니다. 현재 실행이 없는 경우 이 아티팩트를 추적하기 위해 타입이 "auto"인 실행이 생성됩니다.

**Args:**

* `project`:  실행이 컨텍스트에 이미 존재하지 않는 경우, 이 아티팩트에 사용할 프로젝트.
* `settings`:  자동 실행을 초기화할 때 사용할 settings 객체. 주로 테스트 하니스에서 사용됩니다.

***

### <kbd>메서드</kbd> `Artifact.unlink`

```python  theme={null}
unlink() → None
```

이 아티팩트가 아티팩트 컬렉션에 연결된 멤버인 경우, 이 아티팩트의 연결을 해제합니다.

**예외:**

* `ArtifactNotLoggedError`:  아티팩트가 로깅되지 않은 경우.
* `ValueError`:  아티팩트가 어느 컬렉션에도 연결되어 있지 않은 경우.

***

### <kbd>메서드</kbd> `Artifact.used_by`

```python  theme={null}
used_by() → list[Run]
```

이 아티팩트와 이와 연결된 아티팩트를 사용한 실행들의 목록을 가져옵니다.

**반환값:**
`Run` 객체 목록입니다.

**발생 가능한 예외:**

* `ArtifactNotLoggedError`:  아티팩트가 로깅되지 않은 경우.

***

### <kbd>메서드</kbd> `Artifact.verify`

```python  theme={null}
verify(root: 'str | None' = None) → None
```

아티팩트의 내용이 매니페스트와 일치하는지 확인합니다.

디렉터리의 모든 파일에 대해 체크섬을 계산한 뒤, 해당 체크섬을 아티팩트의 매니페스트와 대조합니다. 참조(reference)는 검증하지 않습니다.

**인자:**

* `root`:  검증할 디렉터리입니다. None인 경우 아티팩트가 './artifacts/self.name/' 위치로 다운로드됩니다.

**예외:**

* `ArtifactNotLoggedError`:  아티팩트가 로그되지 않은 경우.
* `ValueError`:  검증에 실패한 경우.

***

### <kbd>메서드</kbd> `Artifact.wait`

```python  theme={null}
wait(timeout: 'int | None' = None) → Artifact
```

필요한 경우 이 아티팩트의 로깅이 완료될 때까지 기다립니다.

**Args:**

* `timeout`:  대기할 시간(초)입니다.

**Returns:**
`Artifact` 객체를 반환합니다.


Built with [Mintlify](https://mintlify.com).