當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python PyTorch EndOnDiskCacheHolder用法及代碼示例


本文簡要介紹python語言中 torchdata.datapipes.iter.EndOnDiskCacheHolder 的用法。

用法:

class torchdata.datapipes.iter.EndOnDiskCacheHolder(datapipe, mode='wb', filepath_fn=None, *, same_filepath_fn=False, skip_read=False)

參數

  • datapipe-IterDataPipe 圖中至少有一個OnDiskCacheHolder

  • mode-打開緩存文件以將數據寫入磁盤的模式。這需要與 datapipe 中的數據類型或文件句柄對齊。默認使用"wb"

  • filepath_fn-datapipe 的元數據中提取文件路徑的可選函數。默認情況下,它將直接使用元數據作為文件路徑。

  • same_filepath_fn-設置為 True 以使用與 OnDiskCacheHolder 相同的 filepath_fn

  • skip_read-跳過從 datapipe 讀取文件句柄的布爾值。默認情況下,啟用讀取並基於 mode 創建讀取函數。

指示何時將先前DataPipe的結果保存到filepath_fn指定的本地文件(函數名稱:end_caching)。此外,源DataPipe的結果需要是元數據和數據的元組,或者元數據和文件句柄的元組。

示例

>>> from torchdata.datapipes.iter import IterableWrapper, HttpReader
>>> url = IterableWrapper(["https://path/to/filename", ])
>>> def _filepath_fn(url):
>>>     temp_dir = tempfile.gettempdir()
>>>     return os.path.join(temp_dir, os.path.basename(url))
>>> hash_dict = {"expected_filepath": expected_MD5_hash}
>>> # You must call ``.on_disk_cache`` at some point before ``.end_caching``
>>> cache_dp = url.on_disk_cache(filepath_fn=_filepath_fn, hash_dict=_hash_dict, hash_type="md5")
>>> # You must call ``.end_caching`` at a later point to stop tracing and save the results to local files.
>>> cache_dp = HttpReader(cache_dp).end_caching(mode="wb". filepath_fn=_filepath_fn)

相關用法


注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torchdata.datapipes.iter.EndOnDiskCacheHolder。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。