Spaces:
Runtime error
Runtime error
"""Download modles.""" | |
# pylint: disable=invalid-name, broad-exception-caught, line-too-long | |
from typing import Optional | |
import typer | |
from dl_hf_model import dl_hf_model | |
from loguru import logger | |
url = "https://huggingface.co/TheBloke/Upstage-Llama-2-70B-instruct-v2-GGML/blob/main/upstage-llama-2-70b-instruct-v2.ggmlv3.q3_K_S.bin" | |
__version__ = "0.0.1" | |
app = typer.Typer( | |
name="dl-mode", | |
add_completion=False, | |
help="donwload models from hf and save to a dir (default models)", | |
) | |
def _version_callback(value: bool) -> None: | |
if value: | |
typer.echo( | |
f"{app.info.name} v.{__version__} -- download models for given url(s)" | |
) | |
raise typer.Exit() | |
def main( | |
urls: str = typer.Argument( # pylint: disable=unused-argument | |
"", | |
help=f"one or more urls (default {url})", | |
show_default=False, | |
), | |
version: Optional[bool] = typer.Option( # pylint: disable=unused-argument | |
None, | |
"--version", | |
"-v", | |
"-V", | |
help="Show version info and exit.", | |
callback=_version_callback, | |
is_eager=True, | |
), | |
model_dir: Optional[str] = typer.Option( | |
None, | |
"--mode-dir", | |
help="dir to save downloaded models (default models)", | |
), | |
): | |
"""Download a model or model given url(s).""" | |
logger.trace(f"{urls}") | |
if model_dir is None: | |
model_dir = "models" | |
if isinstance(urls, str): | |
urls.split() | |
url_list = urls[:] | |
if not urls: | |
url_list = [url] | |
try: | |
for elm in url_list: | |
dl_hf_model(elm) | |
except Exception as exc: | |
logger.error(exc) | |
raise typer.Exit() | |
if __name__ == "__main__": | |
try: | |
app() | |
except Exception as exc_: | |
logger.error(exc_) | |