class_docstr: Abstract artifact repo that defines how to upload (log) and download potentially large
  artifacts from different storage backends.
class_docstr_tok: ["Abstract","artifact","repo","that","defines","how","to","upload","(","log",")","and","download","potentially","large","artifacts","from","different","storage","backends","."]
docstr: Return all the artifacts for this run_id directly under path. If path is a file, returns
  an empty list. Will error if path is neither a file nor directory.
  
  :param path: Relative source path that contains desired artifacts
  
  :return: List of artifacts as FileInfo listed directly under path.
docstr_tok: ["Return","all","the","artifacts","for","this","run_id","directly","under","path",".","If","path","is","a","file",",","returns","an","empty","list",".","Will","error","if","path","is","neither","a","file","nor","directory",".",":","param","path",":","Relative","source","path","that","contains","desired","artifacts",":","return",":","List","of","artifacts","as","FileInfo","listed","directly","under","path","."]
code: def list_artifacts(self, path):
      """
      Return all the artifacts for this run_id directly under path. If path is a file, returns
      an empty list. Will error if path is neither a file nor directory.
  
      :param path: Relative source path that contains desired artifacts
  
      :return: List of artifacts as FileInfo listed directly under path.
      """
      pass
  
imports: import logging
  import os
  import posixpath
  from abc import ABC, ABCMeta, abstractmethod
  from concurrent.futures import ThreadPoolExecutor, as_completed
  from typing import List, Optional
  from mlflow.entities.file_info import FileInfo
  from mlflow.entities.multipart_upload import CreateMultipartUploadResponse, MultipartUploadPart
  from mlflow.environment_variables import MLFLOW_ENABLE_ARTIFACTS_PROGRESS_BAR
  from mlflow.exceptions import MlflowException
  from mlflow.protos.databricks_pb2 import INVALID_PARAMETER_VALUE, RESOURCE_DOES_NOT_EXIST
  from mlflow.utils.annotations import developer_stable
  from mlflow.utils.file_utils import ArtifactProgressBar, create_tmp_dir
  from mlflow.utils.validation import bad_path_message, path_not_unique
label_desc: Use image node_id 5 for calling the ArtifactRepository obj's underlying member method code with example usage: obj.list_artifacts(path) without return types