code: def load_path(
      self,
      manifest_entry: ArtifactManifestEntry,
      local: bool = False,
  ) -> Union[URIStr, FilePathStr]:
      if not local:
          assert manifest_entry.ref is not None
          return manifest_entry.ref
  
      assert manifest_entry.ref is not None
  
      path, hit, cache_open = self._cache.check_etag_obj_path(
          URIStr(manifest_entry.ref),
          ETag(
              manifest_entry.digest
          ),  # TODO(spencerpearson): unsafe cast
          manifest_entry.size if manifest_entry.size is not None else 0,
      )
      if hit:
          return path
  
      response = self._session.get(
          manifest_entry.ref,
          stream=True,
          cookies=_thread_local_api_settings.cookies,
          headers=_thread_local_api_settings.headers,
      )
      response.raise_for_status()
  
      digest: Optional[Union[ETag, FilePathStr, URIStr]]
      digest, size, extra = self._entry_from_headers(response.headers)
      digest = digest or manifest_entry.ref
      if manifest_entry.digest != digest:
          raise ValueError(
              f"Digest mismatch for url {manifest_entry.ref}: expected {manifest_entry.digest} but found {digest}"
          )
  
      with cache_open(mode="wb") as file:
          for data in response.iter_content(chunk_size=16 * 1024):
              file.write(data)
      return path
  
file_path: wandb/wandb/sdk/artifacts/storage_handlers/http_handler.py
imports: import os
  from typing import TYPE_CHECKING, Dict, Optional, Sequence, Tuple, Union
  from urllib.parse import ParseResult
  from wandb.sdk.artifacts.artifact_file_cache import get_artifact_file_cache
  from wandb.sdk.artifacts.artifact_manifest_entry import ArtifactManifestEntry
  from wandb.sdk.artifacts.storage_handler import StorageHandler
  from wandb.sdk.internal.thread_local_settings import _thread_local_api_settings
  from wandb.sdk.lib.hashutil import ETag
  from wandb.sdk.lib.paths import FilePathStr, StrPath, URIStr
label_desc: Use image node_id 3 for calling the HTTPHandler obj's underlying member method code with example usage: obj.load_path(manifest_entry, local) and returns: path, manifest_entry, path