class_docstr: Base Repo Manager class to create, initialize, download repos.
  
  Args:
      author (`str`):
          The author of the repo.
      repo (`str`):
          The name of the repo.
      root (`str`):
          The root url of the repo.
class_docstr_tok: ["Base","Repo","Manager","class","to","create",",","initialize",",","download","repos",".","Args",":","author","(","`","str","`",")",":","The","author","of","the","repo",".","repo","(","`","str","`",")",":","The","name","of","the","repo",".","root","(","`","str","`",")",":","The","root","url","of","the","repo","."]
docstr: Load the content from url and write into local files.
  
  Args:
      tag (`str`):
          The tag name.
      file_name (`str`):
          The hub file paths.
      lfs_files (`str):
          The file extensions being tracked by git-lfs.
      local_repo_path (`Union[str, Path]`):
          The local directory to download to.
  
  Raises:
      (`HTTPError`)
          Rasie error in request.
      (`OSError`)
          Raise error in writing file.
docstr_tok: ["Load","the","content","from","url","and","write","into","local","files",".","Args",":","tag","(","`","str","`",")",":","The","tag","name",".","file_name","(","`","str","`",")",":","The","hub","file","paths",".","lfs_files","(","`","str",")",":","The","file","extensions","being","tracked","by","git-lfs",".","local_repo_path","(","`","Union","[","str",",","Path","]","`",")",":","The","local","directory","to","download","to",".","Raises",":","(","`","HTTPError","`",")","Rasie","error","in","request",".","(","`","OSError","`",")","Raise","error","in","writing","file","."]
code: def download_executor(
      self,
      tag: str,
      file_name: str,
      lfs_files: Tuple[str],
      local_repo_path: Union[str, Path],
  ) -> None:
      """
      Load the content from url and write into local files.
  
      Args:
          tag (`str`):
              The tag name.
          file_name (`str`):
              The hub file paths.
          lfs_files (`str):
              The file extensions being tracked by git-lfs.
          local_repo_path (`Union[str, Path]`):
              The local directory to download to.
  
      Raises:
          (`HTTPError`)
              Rasie error in request.
          (`OSError`)
              Raise error in writing file.
      """
      file_path = Path(local_repo_path) / file_name
      if not file_path.parent.resolve().exists():
          try:
              file_path.parent.resolve().mkdir(parents=True)
          except FileExistsError:
              pass
          except OSError as e:
              raise e
  
      # Get content.
      for i in range(5):
          try:
              if file_name.endswith(lfs_files):
                  res = self.hub_utils.get_lfs(file_name, tag)
              else:
                  res = self.hub_utils.get_file(file_name, tag)
  
              if res.status_code == 200:
                  break
              elif res.status_code == 429 and i < 4:
                  time.sleep(2)
                  continue
              res.raise_for_status()
          except HTTPError as e:
              raise e
  
      # Create local files.
      file_size = int(res.headers.get("content-length", 0))
      chunk_size = 1024
      progress_bar = tqdm(
          total=file_size,
          unit="iB",
          unit_scale=True,
          desc=f"Downloading {file_name}",
      )
      with open(file_path, "wb") as local_file:
          for chunk in res.iter_content(chunk_size=chunk_size):
              local_file.write(chunk)
              progress_bar.update(len(chunk))
      progress_bar.close()
      if progress_bar.total > progress_bar.n:
          engine_log.error(
              "Error when downloading file: %s, will delete the local cache. Please check you network, or make sure you have "
              "install `git-lfs`.",
              file_name,
          )
          raise HTTPError(
              f"Error when downloading {file_name}, will delete the local cache. Please check you network, or make sure you have "
              f"install `git-lfs`."
          )
  
imports: import re
  import subprocess
  import sys
  import time
  from typing import Tuple, List, Union
  from shutil import rmtree
  from pathlib import Path
  from requests.exceptions import HTTPError
  from tqdm import tqdm
  from tempfile import TemporaryFile
  from concurrent.futures import ThreadPoolExecutor
  from towhee.utils.hub_utils import HubUtils
  from towhee.utils.log import engine_log
label_desc: Use image node_id 9 for calling the RepoManager obj's underlying member method code with example usage: obj.download_executor(tag, file_name, lfs_files, local_repo_path) without return types