在 GitHub 上编辑
Live.log_artifact()
使用 DVC 跟踪一个已存在的目录或文件。
def log_artifact(
path: Union[str, Path],
type: Optional[str] = None,
name: Optional[str] = None,
desc: Optional[str] = None,
labels: Optional[List[str]] = None,
meta: Optional[Dict[str, Any]] = None,
copy: Optional[bool] = False,
cache: Optional[bool] = True,
):
用法
from pathlib import Path
from dvclive import Live
# Create example file
Path("model.pt").write_text("weights")
with Live() as live:
live.log_artifact(
"model.pt",
type="model",
name="mymodel",
desc="Fine-tuned Resnet50",
labels=["resnet", "imagenet"],
)
描述
记录 path
,将其内容保存到 DVC 存储中。同时可附加任何提供的元数据字段(例如,供 模型注册表 或自动化场景使用)。
如果 cache=True
(默认值),则使用 dvc add
通过 DVC 跟踪 path
,将其保存至 DVC 缓存,并生成一个 {path}.dvc
文件作为缓存数据的指针。
若提供任何可选元数据字段(type
、name
、desc
、labels
、meta
),将向对应的 dvc.yaml
添加一个 制品 及所有传入的元数据(除非 dvcyaml=None
)。传入 type="model"
会将其加入 模型注册表。
参数
-
path
— 一个已存在的目录或文件。 -
type
— 制品的可选类型。常见类型为model
或dataset
。 -
name
— 制品的可选自定义名称。若未提供,则使用路径的基名(不带文件扩展名的路径最后一部分)作为制品名称。 -
desc
— 制品的可选描述。 -
labels
— 描述制品的可选标签。 -
meta
— 以key: value
格式提供的可选元信息。 -
copy
— 在跟踪前,将path
处的目录或文件复制到dvclive/artifacts
目录下(默认),并使用新路径跟踪制品。适用于你不希望在仓库中跟踪原始路径的情况(例如,原始路径位于仓库外部或被 Git 忽略的目录中)。 -
cache
— 使用 DVC 缓存 文件以 脱离 Git 进行跟踪。默认为True
;若仅需为制品注释元数据而不希望在 DVC 缓存中存储副本,请设为False
。若运行 DVC 流水线,
cache
将被忽略,应改为将制品作为流水线 输出 进行缓存。
异常
dvclive.error.InvalidDataTypeError
— 当提供的path
类型不受支持时抛出。