在 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 文件作为缓存数据的指针。

若提供任何可选元数据字段(typenamedesclabelsmeta),将向对应的 dvc.yaml 添加一个 制品 及所有传入的元数据(除非 dvcyaml=None)。传入 type="model" 会将其加入 模型注册表

参数

  • path — 一个已存在的目录或文件。

  • type — 制品的可选类型。常见类型为 modeldataset

  • name — 制品的可选自定义名称。若未提供,则使用路径的基名(不带文件扩展名的路径最后一部分)作为制品名称。

  • desc — 制品的可选描述。

  • labels — 描述制品的可选标签。

  • meta — 以 key: value 格式提供的可选元信息。

  • copy — 在跟踪前,将 path 处的目录或文件复制到 dvclive/artifacts 目录下(默认),并使用新路径跟踪制品。适用于你不希望在仓库中跟踪原始路径的情况(例如,原始路径位于仓库外部或被 Git 忽略的目录中)。

  • cache — 使用 DVC 缓存 文件以 脱离 Git 进行跟踪。默认为 True;若仅需为制品注释元数据而不希望在 DVC 缓存中存储副本,请设为 False

    若运行 DVC 流水线cache 将被忽略,应改为将制品作为流水线 输出 进行缓存。

异常

  • dvclive.error.InvalidDataTypeError — 当提供的 path 类型不受支持时抛出。
内容

🐛 发现问题?告诉我们!或者修复它:

在 GitHub 上编辑

有疑问?加入我们的聊天,我们会为您提供帮助:

Discord 聊天