You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何利用DVC Python API管理缓存:检查、加载并获取缓存文件路径?

DVC API实现本地缓存复用方案

你需要的缓存检查、拉取及本地路径获取功能,可通过DVC的核心API实现,以下是两种可行方案:

方法1:自动复用缓存(最简实现)

dvc.api.open默认会优先使用本地缓存,缺失时自动从远程拉取,无需手动处理缓存逻辑,直接替换原有代码即可:

import pandas as pd
import dvc.api

with dvc.api.open("data/data.csv", rev="data-v1", mode="r") as f:
    data = pd.read_csv(f)

此方法会自动维护缓存,后续运行若缓存存在则直接读取本地文件,不再请求Azure存储。

方法2:手动控制缓存(获取本地路径)

若需明确获取缓存文件的本地路径,可直接操作DVC仓库对象:

import pandas as pd
from dvc.repo import Repo

# 初始化DVC仓库对象
repo = Repo()

# 获取目标文件的缓存路径
output = repo.find_outs_by_path("data/data.csv", rev="data-v1")[0]
cache_path = output.fspath

# 检查缓存是否存在,不存在则拉取
if not repo.cache.local.exists(output.checksum):
    repo.pull(output.path_info, rev="data-v1")

# 读取本地缓存文件
data = pd.read_csv(cache_path)

关键说明:

  • repo.find_outs_by_path:根据路径和版本找到对应的文件输出信息,包含缓存路径和校验值
  • repo.cache.local.exists:通过文件校验值检查缓存是否存在
  • repo.pull:从远程存储拉取数据到本地缓存

内容的提问来源于stack exchange,提问作者jan-seins

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 08:12:40