code: def download_directory_cached(url):
      """Given a blob storage path, caches the contents locally.
      WARNING: only use this function if contents under the path won't change!
      """
      cache_dir = "/tmp/bf-dir-cache"
      scheme, bucket_or_account, path = parse_url(url)
      local_path = os.path.join(
          cache_dir, scheme, bucket_or_account, path
      )
  
      os.makedirs(local_path, exist_ok=True)
      with FileLock(os.path.join(local_path, ".LOCKFILE")):
          downloaded_marker = os.path.join(local_path, ".DOWNLOADED")
          if not os.path.exists(downloaded_marker):
              parallel_copy_recursive(url, local_path)
              with open(downloaded_marker, "w"):
                  pass
  
      return local_path
  
file_path: summarize-from-feedback/summarize_from_feedback/utils/blobs.py
imports: import concurrent.futures
  import os
  import warnings
  from contextlib import contextmanager
  from urllib.parse import urlparse, unquote
  import blobfile
  from filelock import FileLock
label_desc: Use image node_id 4 for calling a global function with example usage: download_directory_cached(url) and returns: local_path