wan2video 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 Yunfeng Wang
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,101 @@
1
+ Metadata-Version: 2.4
2
+ Name: wan2video
3
+ Version: 0.1.0
4
+ Summary: Generate videos using Wan2.2 TI2V model with GGUF quantization and GPU acceleration
5
+ Author-email: Yunfeng Wang <wyf.brz@gmail.com>
6
+ License-Expression: MIT
7
+ License-File: LICENSE
8
+ Keywords: ai,gguf,stable-diffusion-cpp,video-generation,wan2
9
+ Classifier: Development Status :: 3 - Alpha
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: License :: OSI Approved :: MIT License
12
+ Classifier: Programming Language :: Python :: 3
13
+ Classifier: Topic :: Multimedia :: Video
14
+ Requires-Python: >=3.9
15
+ Requires-Dist: click>=8.0
16
+ Requires-Dist: huggingface-hub>=0.20.0
17
+ Requires-Dist: rich>=13.0
18
+ Description-Content-Type: text/markdown
19
+
20
+ # wan2video
21
+
22
+ Generate videos using Wan2.2 TI2V (Text+Image to Video) 5B model with GGUF quantization and GPU acceleration.
23
+
24
+ ## Quick Start
25
+
26
+ ```bash
27
+ # Install and run (requires sd-cli in PATH)
28
+ uvx wan2video "a cat walking on the grass, sunny day"
29
+
30
+ # Or install first
31
+ pip install wan2video
32
+ wan2video "a beautiful sunset over the ocean"
33
+ ```
34
+
35
+ ## Prerequisites
36
+
37
+ - NVIDIA GPU with CUDA support (12GB+ VRAM recommended)
38
+ - [stable-diffusion.cpp](https://github.com/leejet/stable-diffusion.cpp) compiled with CUDA (`sd-cli` in PATH)
39
+ - ffmpeg (for mp4 output)
40
+
41
+ ## Setup sd-cli
42
+
43
+ ```bash
44
+ wan2video setup
45
+ ```
46
+
47
+ Or compile manually:
48
+ ```bash
49
+ git clone --recurse-submodules https://github.com/leejet/stable-diffusion.cpp
50
+ cd stable-diffusion.cpp && mkdir build && cd build
51
+ cmake .. -DSD_CUBLAS=ON -DGGML_CUDA=ON
52
+ make -j
53
+ # Add build/bin/sd-cli to your PATH
54
+ ```
55
+
56
+ ## Usage
57
+
58
+ ```bash
59
+ # Text to video (480x320, 2 seconds)
60
+ wan2video "your prompt here"
61
+
62
+ # 720p video
63
+ wan2video "prompt" -W 1280 -H 720
64
+
65
+ # 1080p video
66
+ wan2video "prompt" -W 1920 -H 1080
67
+
68
+ # Image to video
69
+ wan2video "prompt describing motion" -i input.jpg
70
+
71
+ # More frames (5 seconds)
72
+ wan2video "prompt" -f 81
73
+
74
+ # Custom output
75
+ wan2video "prompt" -o my_video.mp4 --steps 30 --seed -1
76
+ ```
77
+
78
+ ## Options
79
+
80
+ | Option | Default | Description |
81
+ |--------|---------|-------------|
82
+ | `-W/--width` | 480 | Video width |
83
+ | `-H/--height` | 320 | Video height |
84
+ | `-f/--frames` | 33 | Frames (33≈2s, 81≈5s) |
85
+ | `-s/--steps` | 20 | Sampling steps |
86
+ | `--cfg-scale` | 7.0 | CFG guidance scale |
87
+ | `--seed` | 42 | Random seed (-1 for random) |
88
+ | `-i/--image` | None | Input image for I2V |
89
+ | `-o/--output` | output.mp4 | Output file path |
90
+
91
+ ## Performance (RTX 4070 Ti 12GB)
92
+
93
+ | Resolution | Frames | Time |
94
+ |-----------|--------|------|
95
+ | 480x320 | 33 | ~16s |
96
+ | 1280x720 | 33 | ~2.5min |
97
+ | 1920x1080 | 33 | ~9min |
98
+
99
+ ## License
100
+
101
+ MIT
@@ -0,0 +1,82 @@
1
+ # wan2video
2
+
3
+ Generate videos using Wan2.2 TI2V (Text+Image to Video) 5B model with GGUF quantization and GPU acceleration.
4
+
5
+ ## Quick Start
6
+
7
+ ```bash
8
+ # Install and run (requires sd-cli in PATH)
9
+ uvx wan2video "a cat walking on the grass, sunny day"
10
+
11
+ # Or install first
12
+ pip install wan2video
13
+ wan2video "a beautiful sunset over the ocean"
14
+ ```
15
+
16
+ ## Prerequisites
17
+
18
+ - NVIDIA GPU with CUDA support (12GB+ VRAM recommended)
19
+ - [stable-diffusion.cpp](https://github.com/leejet/stable-diffusion.cpp) compiled with CUDA (`sd-cli` in PATH)
20
+ - ffmpeg (for mp4 output)
21
+
22
+ ## Setup sd-cli
23
+
24
+ ```bash
25
+ wan2video setup
26
+ ```
27
+
28
+ Or compile manually:
29
+ ```bash
30
+ git clone --recurse-submodules https://github.com/leejet/stable-diffusion.cpp
31
+ cd stable-diffusion.cpp && mkdir build && cd build
32
+ cmake .. -DSD_CUBLAS=ON -DGGML_CUDA=ON
33
+ make -j
34
+ # Add build/bin/sd-cli to your PATH
35
+ ```
36
+
37
+ ## Usage
38
+
39
+ ```bash
40
+ # Text to video (480x320, 2 seconds)
41
+ wan2video "your prompt here"
42
+
43
+ # 720p video
44
+ wan2video "prompt" -W 1280 -H 720
45
+
46
+ # 1080p video
47
+ wan2video "prompt" -W 1920 -H 1080
48
+
49
+ # Image to video
50
+ wan2video "prompt describing motion" -i input.jpg
51
+
52
+ # More frames (5 seconds)
53
+ wan2video "prompt" -f 81
54
+
55
+ # Custom output
56
+ wan2video "prompt" -o my_video.mp4 --steps 30 --seed -1
57
+ ```
58
+
59
+ ## Options
60
+
61
+ | Option | Default | Description |
62
+ |--------|---------|-------------|
63
+ | `-W/--width` | 480 | Video width |
64
+ | `-H/--height` | 320 | Video height |
65
+ | `-f/--frames` | 33 | Frames (33≈2s, 81≈5s) |
66
+ | `-s/--steps` | 20 | Sampling steps |
67
+ | `--cfg-scale` | 7.0 | CFG guidance scale |
68
+ | `--seed` | 42 | Random seed (-1 for random) |
69
+ | `-i/--image` | None | Input image for I2V |
70
+ | `-o/--output` | output.mp4 | Output file path |
71
+
72
+ ## Performance (RTX 4070 Ti 12GB)
73
+
74
+ | Resolution | Frames | Time |
75
+ |-----------|--------|------|
76
+ | 480x320 | 33 | ~16s |
77
+ | 1280x720 | 33 | ~2.5min |
78
+ | 1920x1080 | 33 | ~9min |
79
+
80
+ ## License
81
+
82
+ MIT
@@ -0,0 +1,31 @@
1
+ [project]
2
+ name = "wan2video"
3
+ version = "0.1.0"
4
+ description = "Generate videos using Wan2.2 TI2V model with GGUF quantization and GPU acceleration"
5
+ readme = "README.md"
6
+ license = "MIT"
7
+ requires-python = ">=3.9"
8
+ authors = [{ name = "Yunfeng Wang", email = "wyf.brz@gmail.com" }]
9
+ keywords = ["video-generation", "wan2", "ai", "gguf", "stable-diffusion-cpp"]
10
+ classifiers = [
11
+ "Development Status :: 3 - Alpha",
12
+ "Intended Audience :: Developers",
13
+ "Topic :: Multimedia :: Video",
14
+ "License :: OSI Approved :: MIT License",
15
+ "Programming Language :: Python :: 3",
16
+ ]
17
+ dependencies = [
18
+ "click>=8.0",
19
+ "huggingface-hub>=0.20.0",
20
+ "rich>=13.0",
21
+ ]
22
+
23
+ [project.scripts]
24
+ wan2video = "wan2video.cli:main"
25
+
26
+ [build-system]
27
+ requires = ["hatchling"]
28
+ build-backend = "hatchling.build"
29
+
30
+ [tool.hatch.build.targets.wheel]
31
+ packages = ["src/wan2video"]
@@ -0,0 +1,3 @@
1
+ """wan2video - Generate videos using Wan2.2 TI2V GGUF model."""
2
+
3
+ __version__ = "0.1.0"
@@ -0,0 +1,115 @@
1
+ import random
2
+ import subprocess
3
+ import sys
4
+ from pathlib import Path
5
+
6
+ import click
7
+ from rich.console import Console
8
+
9
+ from .config import SDCPP_DIR, SDCLI_BIN
10
+
11
+ console = Console()
12
+
13
+
14
+ @click.group(invoke_without_command=True)
15
+ @click.pass_context
16
+ @click.option("-p", "--prompt", default=None, help="Text prompt for video generation")
17
+ @click.option("-i", "--image", default=None, help="Input image for image-to-video")
18
+ @click.option("-o", "--output", default="output.mp4", help="Output path (.mp4/.webm)")
19
+ @click.option("-W", "--width", default=480, help="Video width")
20
+ @click.option("-H", "--height", default=320, help="Video height")
21
+ @click.option("-f", "--frames", default=33, help="Video frames (33≈2s, 81≈5s at 16fps)")
22
+ @click.option("-s", "--steps", default=20, help="Sampling steps")
23
+ @click.option("--cfg-scale", default=7.0, help="CFG scale")
24
+ @click.option("--seed", default=42, help="Random seed (-1 for random)")
25
+ @click.option("--no-offload", is_flag=True, help="Don't offload to CPU")
26
+ @click.option("--vae-tile-size", default=None, help="VAE tile size (e.g. 24x24)")
27
+ def main(ctx, prompt, image, output, width, height, frames, steps, cfg_scale, seed, no_offload, vae_tile_size):
28
+ """wan2video - Generate videos with Wan2.2 TI2V model.
29
+
30
+ \b
31
+ Usage:
32
+ wan2video -p "a cat walking on the grass"
33
+ wan2video -p "prompt" -W 1280 -H 720
34
+ wan2video setup
35
+ wan2video download
36
+ """
37
+ if ctx.invoked_subcommand is not None:
38
+ return
39
+
40
+ if not prompt:
41
+ click.echo(ctx.get_help())
42
+ return
43
+
44
+ from .generate import generate_video
45
+
46
+ if seed == -1:
47
+ seed = random.randint(0, 2**32 - 1)
48
+
49
+ console.print(f"[bold green]wan2video[/] generating {width}x{height}, {frames} frames, {steps} steps")
50
+ console.print(f"[dim]Prompt:[/] {prompt}")
51
+ console.print()
52
+
53
+ success = generate_video(
54
+ prompt=prompt,
55
+ image_path=image,
56
+ output_path=output,
57
+ width=width,
58
+ height=height,
59
+ video_frames=frames,
60
+ steps=steps,
61
+ cfg_scale=cfg_scale,
62
+ seed=seed,
63
+ offload=not no_offload,
64
+ vae_tile_size=vae_tile_size,
65
+ )
66
+
67
+ if success:
68
+ console.print(f"\n[bold green]✓[/] Video saved: {output}")
69
+ else:
70
+ console.print(f"\n[bold red]✗[/] Generation failed")
71
+ sys.exit(1)
72
+
73
+
74
+ @main.command()
75
+ def setup():
76
+ """Compile sd-cli from source (requires cmake, gcc, CUDA toolkit)."""
77
+ if SDCLI_BIN.exists():
78
+ console.print(f"[green]sd-cli already exists at {SDCLI_BIN}[/]")
79
+ return
80
+
81
+ console.print("[bold]Compiling stable-diffusion.cpp with CUDA support...[/]")
82
+ SDCPP_DIR.mkdir(parents=True, exist_ok=True)
83
+
84
+ subprocess.run(
85
+ ["git", "clone", "--depth", "1", "--recurse-submodules",
86
+ "https://github.com/leejet/stable-diffusion.cpp.git", str(SDCPP_DIR)],
87
+ check=True,
88
+ )
89
+
90
+ build_dir = SDCPP_DIR / "build"
91
+ build_dir.mkdir(exist_ok=True)
92
+
93
+ subprocess.run(
94
+ ["cmake", "..", "-DSD_CUBLAS=ON", "-DGGML_CUDA=ON"],
95
+ cwd=str(build_dir), check=True,
96
+ )
97
+ subprocess.run(["make", "-j"], cwd=str(build_dir), check=True)
98
+
99
+ if SDCLI_BIN.exists():
100
+ console.print(f"[bold green]✓[/] sd-cli compiled: {SDCLI_BIN}")
101
+ else:
102
+ console.print("[bold red]✗[/] Compilation failed")
103
+ sys.exit(1)
104
+
105
+
106
+ @main.command()
107
+ def download():
108
+ """Download model files from HuggingFace."""
109
+ from .download import ensure_models
110
+
111
+ console.print("[bold]Downloading models...[/]")
112
+ paths = ensure_models()
113
+ for key, path in paths.items():
114
+ console.print(f" [green]✓[/] {key}: {path}")
115
+ console.print("[bold green]Done![/]")
@@ -0,0 +1,14 @@
1
+ from pathlib import Path
2
+
3
+ HF_REPO = "yunfengwang/wan2video-models"
4
+ CACHE_DIR = Path.home() / ".cache" / "wan2video"
5
+ MODELS_DIR = CACHE_DIR / "models"
6
+ SDCPP_DIR = CACHE_DIR / "sd-cpp"
7
+ SDCLI_BIN = SDCPP_DIR / "build" / "bin" / "sd-cli"
8
+
9
+ MODEL_FILES = {
10
+ "diffusion_model": "Wan2.2-TI2V-5B-Q8_0.gguf",
11
+ "t5xxl": "umt5-xxl-encoder-Q5_K_S.gguf",
12
+ "clip_vision": "clip_vision_h.safetensors",
13
+ "vae": "Wan2.2_VAE.safetensors",
14
+ }
@@ -0,0 +1,38 @@
1
+ from huggingface_hub import hf_hub_download
2
+ from rich.progress import Progress, SpinnerColumn, TextColumn
3
+
4
+ from .config import HF_REPO, MODELS_DIR, MODEL_FILES
5
+
6
+
7
+ def ensure_models() -> dict[str, str]:
8
+ """Download models if not present, return dict of model paths."""
9
+ MODELS_DIR.mkdir(parents=True, exist_ok=True)
10
+ paths = {}
11
+
12
+ missing = []
13
+ for key, filename in MODEL_FILES.items():
14
+ path = MODELS_DIR / filename
15
+ if path.exists():
16
+ paths[key] = str(path)
17
+ else:
18
+ missing.append((key, filename))
19
+
20
+ if not missing:
21
+ return paths
22
+
23
+ with Progress(SpinnerColumn(), TextColumn("[bold]{task.description}")) as progress:
24
+ for key, filename in missing:
25
+ progress.add_task(f"Downloading {filename}...", total=None)
26
+ local_path = hf_hub_download(
27
+ repo_id=HF_REPO,
28
+ filename=filename,
29
+ local_dir=str(MODELS_DIR),
30
+ local_dir_use_symlinks=False,
31
+ )
32
+ paths[key] = local_path
33
+
34
+ for key, filename in MODEL_FILES.items():
35
+ if key not in paths:
36
+ paths[key] = str(MODELS_DIR / filename)
37
+
38
+ return paths
@@ -0,0 +1,92 @@
1
+ import subprocess
2
+ import shutil
3
+ from pathlib import Path
4
+
5
+ from .config import SDCLI_BIN, MODEL_FILES, MODELS_DIR
6
+ from .download import ensure_models
7
+
8
+
9
+ def find_sd_cli() -> str:
10
+ """Find sd-cli binary: check PATH, then cache dir."""
11
+ from_path = shutil.which("sd-cli")
12
+ if from_path:
13
+ return from_path
14
+ if SDCLI_BIN.exists():
15
+ return str(SDCLI_BIN)
16
+ raise FileNotFoundError(
17
+ "sd-cli not found. Run 'wan2video setup' to compile it, "
18
+ "or install it manually and add to PATH."
19
+ )
20
+
21
+
22
+ def generate_video(
23
+ prompt: str,
24
+ image_path: str | None = None,
25
+ output_path: str = "output.mp4",
26
+ width: int = 480,
27
+ height: int = 320,
28
+ video_frames: int = 33,
29
+ steps: int = 20,
30
+ cfg_scale: float = 7.0,
31
+ seed: int = 42,
32
+ offload: bool = True,
33
+ vae_tile_size: str | None = None,
34
+ ) -> bool:
35
+ sd_cli = find_sd_cli()
36
+ models = ensure_models()
37
+
38
+ final_path = Path(output_path)
39
+ need_convert = final_path.suffix.lower() == ".mp4"
40
+ sd_output = str(final_path.with_suffix(".webm")) if need_convert else output_path
41
+
42
+ cmd = [
43
+ sd_cli,
44
+ "-M", "vid_gen",
45
+ "--diffusion-model", models["diffusion_model"],
46
+ "--t5xxl", models["t5xxl"],
47
+ "--clip_vision", models["clip_vision"],
48
+ "--vae", models["vae"],
49
+ "-p", prompt,
50
+ "-n", "blurry, low quality, distorted, deformed",
51
+ "-W", str(width),
52
+ "-H", str(height),
53
+ "--video-frames", str(video_frames),
54
+ "--steps", str(steps),
55
+ "--cfg-scale", str(cfg_scale),
56
+ "-s", str(seed),
57
+ "--fa",
58
+ "--diffusion-fa",
59
+ "--vae-tiling",
60
+ "-o", sd_output,
61
+ ]
62
+
63
+ if vae_tile_size:
64
+ cmd.extend(["--vae-tile-size", vae_tile_size])
65
+ elif width > 640 or height > 480:
66
+ cmd.extend(["--vae-tile-size", "24x24"])
67
+
68
+ if image_path:
69
+ cmd.extend(["--init-img", image_path])
70
+
71
+ if offload:
72
+ cmd.append("--offload-to-cpu")
73
+
74
+ result = subprocess.run(cmd)
75
+
76
+ if result.returncode != 0:
77
+ return False
78
+
79
+ if need_convert:
80
+ ffmpeg = shutil.which("ffmpeg")
81
+ if not ffmpeg:
82
+ Path(sd_output).rename(final_path.with_suffix(".webm"))
83
+ return True
84
+ subprocess.run(
85
+ [ffmpeg, "-y", "-i", sd_output,
86
+ "-c:v", "libx264", "-pix_fmt", "yuv420p", "-crf", "18",
87
+ str(final_path)],
88
+ capture_output=True, check=True,
89
+ )
90
+ Path(sd_output).unlink(missing_ok=True)
91
+
92
+ return True
@@ -0,0 +1,513 @@
1
+ version = 1
2
+ revision = 3
3
+ requires-python = ">=3.9"
4
+ resolution-markers = [
5
+ "python_full_version >= '3.10'",
6
+ "python_full_version < '3.10'",
7
+ ]
8
+
9
+ [[package]]
10
+ name = "annotated-doc"
11
+ version = "0.0.4"
12
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
13
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/57/ba/046ceea27344560984e26a590f90bc7f4a75b06701f653222458922b558c/annotated_doc-0.0.4.tar.gz", hash = "sha256:fbcda96e87e9c92ad167c2e53839e57503ecfda18804ea28102353485033faa4" }
14
+ wheels = [
15
+ { url = "http://yum.tbsite.net/pypi/packages/1e/d3/26bf1008eb3d2daa8ef4cacc7f3bfdc11818d111f7e2d0201bc6e3b49d45/annotated_doc-0.0.4-py3-none-any.whl", hash = "sha256:571ac1dc6991c450b25a9c2d84a3705e2ae7a53467b5d111c24fa8baabbed320" },
16
+ ]
17
+
18
+ [[package]]
19
+ name = "anyio"
20
+ version = "4.12.1"
21
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
22
+ resolution-markers = [
23
+ "python_full_version < '3.10'",
24
+ ]
25
+ dependencies = [
26
+ { name = "exceptiongroup", marker = "python_full_version < '3.10'" },
27
+ { name = "idna", marker = "python_full_version < '3.10'" },
28
+ { name = "typing-extensions", marker = "python_full_version < '3.10'" },
29
+ ]
30
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/96/f0/5eb65b2bb0d09ac6776f2eb54adee6abe8228ea05b20a5ad0e4945de8aac/anyio-4.12.1.tar.gz", hash = "sha256:41cfcc3a4c85d3f05c932da7c26d0201ac36f72abd4435ba90d0464a3ffed703" }
31
+ wheels = [
32
+ { url = "http://yum.tbsite.net/pypi/packages/38/0e/27be9fdef66e72d64c0cdc3cc2823101b80585f8119b5c112c2e8f5f7dab/anyio-4.12.1-py3-none-any.whl", hash = "sha256:d405828884fc140aa80a3c667b8beed277f1dfedec42ba031bd6ac3db606ab6c" },
33
+ ]
34
+
35
+ [[package]]
36
+ name = "anyio"
37
+ version = "4.13.0"
38
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
39
+ resolution-markers = [
40
+ "python_full_version >= '3.10'",
41
+ ]
42
+ dependencies = [
43
+ { name = "exceptiongroup", marker = "python_full_version == '3.10.*'" },
44
+ { name = "idna", marker = "python_full_version >= '3.10'" },
45
+ { name = "typing-extensions", marker = "python_full_version >= '3.10' and python_full_version < '3.13'" },
46
+ ]
47
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/19/14/2c5dd9f512b66549ae92767a9c7b330ae88e1932ca57876909410251fe13/anyio-4.13.0.tar.gz", hash = "sha256:334b70e641fd2221c1505b3890c69882fe4a2df910cba14d97019b90b24439dc" }
48
+ wheels = [
49
+ { url = "http://yum.tbsite.net/pypi/packages/da/42/e921fccf5015463e32a3cf6ee7f980a6ed0f395ceeaa45060b61d86486c2/anyio-4.13.0-py3-none-any.whl", hash = "sha256:08b310f9e24a9594186fd75b4f73f4a4152069e3853f1ed8bfbf58369f4ad708" },
50
+ ]
51
+
52
+ [[package]]
53
+ name = "certifi"
54
+ version = "2026.5.20"
55
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
56
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/f3/ce/ee2ecad540810a79593028e88299baeae54d346cc7a0d94b6199988b89b1/certifi-2026.5.20.tar.gz", hash = "sha256:69dea482ab64caa7b9f6aba1c6bf48bb6a5448d1c0f1b17ab42ad8c763a5344d" }
57
+ wheels = [
58
+ { url = "http://yum.tbsite.net/pypi/packages/59/8c/57e832b7af6d7c5abe66eb3fbe3a3a32f4d11ea23a1aa7131371035be991/certifi-2026.5.20-py3-none-any.whl", hash = "sha256:3c52e209ba0a4ad7aebe60436a4ab349c39e1e602e8c134221e546902ad25897" },
59
+ ]
60
+
61
+ [[package]]
62
+ name = "click"
63
+ version = "8.1.8"
64
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
65
+ resolution-markers = [
66
+ "python_full_version < '3.10'",
67
+ ]
68
+ dependencies = [
69
+ { name = "colorama", marker = "python_full_version < '3.10' and sys_platform == 'win32'" },
70
+ ]
71
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/b9/2e/0090cbf739cee7d23781ad4b89a9894a41538e4fcf4c31dcdd705b78eb8b/click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a" }
72
+ wheels = [
73
+ { url = "http://yum.tbsite.net/pypi/packages/7e/d4/7ebdbd03970677812aac39c869717059dbb71a4cfc033ca6e5221787892c/click-8.1.8-py3-none-any.whl", hash = "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2" },
74
+ ]
75
+
76
+ [[package]]
77
+ name = "click"
78
+ version = "8.4.1"
79
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
80
+ resolution-markers = [
81
+ "python_full_version >= '3.10'",
82
+ ]
83
+ dependencies = [
84
+ { name = "colorama", marker = "python_full_version >= '3.10' and sys_platform == 'win32'" },
85
+ ]
86
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/9b/98/518d8e5081007684232226f475082b30087d0f585e8457db087298259f49/click-8.4.1.tar.gz", hash = "sha256:918b5633eddf6b41c32d4f454bf0de810065c74e3f7dbf8ee5452f8be88d3e96" }
87
+ wheels = [
88
+ { url = "http://yum.tbsite.net/pypi/packages/c7/0d/67e5b4109ea4a837e80daa87c2c696711955e40449a97e8926672534def2/click-8.4.1-py3-none-any.whl", hash = "sha256:482be17c6991b8c19c5429a1e995d9b0efdbb63172824c41f99965dc0ade8ec2" },
89
+ ]
90
+
91
+ [[package]]
92
+ name = "colorama"
93
+ version = "0.4.6"
94
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
95
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44" }
96
+ wheels = [
97
+ { url = "http://yum.tbsite.net/pypi/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6" },
98
+ ]
99
+
100
+ [[package]]
101
+ name = "exceptiongroup"
102
+ version = "1.3.1"
103
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
104
+ dependencies = [
105
+ { name = "typing-extensions", marker = "python_full_version < '3.13'" },
106
+ ]
107
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/50/79/66800aadf48771f6b62f7eb014e352e5d06856655206165d775e675a02c9/exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219" }
108
+ wheels = [
109
+ { url = "http://yum.tbsite.net/pypi/packages/8a/0e/97c33bf5009bdbac74fd2beace167cab3f978feb69cc36f1ef79360d6c4e/exceptiongroup-1.3.1-py3-none-any.whl", hash = "sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577f82c773598" },
110
+ ]
111
+
112
+ [[package]]
113
+ name = "filelock"
114
+ version = "3.19.1"
115
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
116
+ resolution-markers = [
117
+ "python_full_version < '3.10'",
118
+ ]
119
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/40/bb/0ab3e58d22305b6f5440629d20683af28959bf793d98d11950e305c1c326/filelock-3.19.1.tar.gz", hash = "sha256:66eda1888b0171c998b35be2bcc0f6d75c388a7ce20c3f3f37aa8e96c2dddf58" }
120
+ wheels = [
121
+ { url = "http://yum.tbsite.net/pypi/packages/42/14/42b2651a2f46b022ccd948bca9f2d5af0fd8929c4eec235b8d6d844fbe67/filelock-3.19.1-py3-none-any.whl", hash = "sha256:d38e30481def20772f5baf097c122c3babc4fcdb7e14e57049eb9d88c6dc017d" },
122
+ ]
123
+
124
+ [[package]]
125
+ name = "filelock"
126
+ version = "3.29.1"
127
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
128
+ resolution-markers = [
129
+ "python_full_version >= '3.10'",
130
+ ]
131
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/1f/f9/f38573ed5844586db374d085911740a501ccfa373b455fc9413f09f85237/filelock-3.29.1.tar.gz", hash = "sha256:d97e6b1b9757569626c58caa07dc4beb1613f4a2938b1e8cc81afca398906c9e" }
132
+ wheels = [
133
+ { url = "http://yum.tbsite.net/pypi/packages/4c/a0/614c5fe402fd88951df45f4dda2fa3b4e17a99ecd92340771929169b3b95/filelock-3.29.1-py3-none-any.whl", hash = "sha256:85199dfd706869641b72b2e8955d5416a4b2b7dc4b0e8e6d97b4cc1299a6983b" },
134
+ ]
135
+
136
+ [[package]]
137
+ name = "fsspec"
138
+ version = "2025.10.0"
139
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
140
+ resolution-markers = [
141
+ "python_full_version < '3.10'",
142
+ ]
143
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/24/7f/2747c0d332b9acfa75dc84447a066fdf812b5a6b8d30472b74d309bfe8cb/fsspec-2025.10.0.tar.gz", hash = "sha256:b6789427626f068f9a83ca4e8a3cc050850b6c0f71f99ddb4f542b8266a26a59" }
144
+ wheels = [
145
+ { url = "http://yum.tbsite.net/pypi/packages/eb/02/a6b21098b1d5d6249b7c5ab69dde30108a71e4e819d4a9778f1de1d5b70d/fsspec-2025.10.0-py3-none-any.whl", hash = "sha256:7c7712353ae7d875407f97715f0e1ffcc21e33d5b24556cb1e090ae9409ec61d" },
146
+ ]
147
+
148
+ [[package]]
149
+ name = "fsspec"
150
+ version = "2026.4.0"
151
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
152
+ resolution-markers = [
153
+ "python_full_version >= '3.10'",
154
+ ]
155
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/d5/8d/1c51c094345df128ca4a990d633fe1a0ff28726c9e6b3c41ba65087bba1d/fsspec-2026.4.0.tar.gz", hash = "sha256:301d8ac70ae90ef3ad05dcf94d6c3754a097f9b5fe4667d2787aa359ec7df7e4" }
156
+ wheels = [
157
+ { url = "http://yum.tbsite.net/pypi/packages/d5/0c/043d5e551459da400957a1395e0febbf771446ff34291afcbe3d8be2a279/fsspec-2026.4.0-py3-none-any.whl", hash = "sha256:11ef7bb35dab8a394fde6e608221d5cf3e8499401c249bebaeaad760a1a8dec2" },
158
+ ]
159
+
160
+ [[package]]
161
+ name = "h11"
162
+ version = "0.16.0"
163
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
164
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1" }
165
+ wheels = [
166
+ { url = "http://yum.tbsite.net/pypi/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86" },
167
+ ]
168
+
169
+ [[package]]
170
+ name = "hf-xet"
171
+ version = "1.5.1"
172
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
173
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/4b/2d/57fd21d84d93efb4bd0b962383790e19dd1bc053501b4264c97903b4e83e/hf_xet-1.5.1.tar.gz", hash = "sha256:51ef4500dab3764b41135ee1381a4b62ce56fc54d4c92b719b59e597d6df5bf6" }
174
+ wheels = [
175
+ { url = "http://yum.tbsite.net/pypi/packages/64/ee/dd9ba7beae1005e54131b7d45263cc74c8a066d47d354e6d58ae9445a388/hf_xet-1.5.1-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:dbf48c0d02cf0b2e568944330c60d9120c272dabe013bd892d48e25bc6797577" },
176
+ { url = "http://yum.tbsite.net/pypi/packages/b6/bc/9cae6cfeb4e03070874e73e5c97c66eb90369d3206b6a2b1ef5f96520888/hf_xet-1.5.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e78e4e5192ad2b674c2e1160b651cb9134db974f8ae1835bdfbfb0166b894a43" },
177
+ { url = "http://yum.tbsite.net/pypi/packages/ba/b4/d5c01e0eb6d9f2ca2dacd84d0d1b71e6cfbb2ef3208c968528e010e9b3d7/hf_xet-1.5.1-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6f7a04a8ad962422e225bc49fbbac99dc1806764b1f3e54dbd154bffa7593947" },
178
+ { url = "http://yum.tbsite.net/pypi/packages/76/c5/29a7598c0c6383c523dc22186d577f4e04267a626cd95ae60f67c00bfe66/hf_xet-1.5.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:d48199c2bf4f8df0adc55d31d1368b6ec0e4d4f45bc86b08038089c23db0bed8" },
179
+ { url = "http://yum.tbsite.net/pypi/packages/04/9a/dceaf6ca69390126b86ea825fb354b93d01163199070b7bd849225de9468/hf_xet-1.5.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:97f212a88d14bbf573619a74b7fecb238de77d08fc702e54dec6f78276ca3283" },
180
+ { url = "http://yum.tbsite.net/pypi/packages/48/a7/e5a7afaacf6c1791fdbeeac42951fb81c3d2bc482992b115dedcc86d963e/hf_xet-1.5.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f61e3665892a6c8c5e765395838b8ddf36185da835253d4bc4509a81e49fb342" },
181
+ { url = "http://yum.tbsite.net/pypi/packages/53/49/2802f8433c9742ce281bddc1e65c02c32268ca3098d66828b05e12e45ee2/hf_xet-1.5.1-cp313-cp313t-win_amd64.whl", hash = "sha256:f4ad3ebd4c32dd2b27099d69dc7b2df821e30767e46fb6ee6a0713778243b8ff" },
182
+ { url = "http://yum.tbsite.net/pypi/packages/9e/5a/50c71195b9fb883659f596e7252faf4c18c58e753a9013bdbf9bac5d2250/hf_xet-1.5.1-cp313-cp313t-win_arm64.whl", hash = "sha256:8298485c1e36e7e67cbd01eeb1376619b7af43d4f1ec245caae306f890a8a32d" },
183
+ { url = "http://yum.tbsite.net/pypi/packages/05/24/5e0c28f80371c17d49fed004597d9d132cb75c1f6f53db2cb95f459d2312/hf_xet-1.5.1-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:3474760d10e3bb6f92ff3f024fcb00c0b3e4001e9b035c7483e49a5dd17aa70f" },
184
+ { url = "http://yum.tbsite.net/pypi/packages/d2/17/261ba565b6a4d960fb478f61fdf919c0be5824645aaf1c319eca660c1611/hf_xet-1.5.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:6762d89b9e3267dfd502b29b2a327b4525f33b17e7b509a78d94e2151a30ce30" },
185
+ { url = "http://yum.tbsite.net/pypi/packages/4e/44/7ffdc2e184b0d41fc0f683ba3936ef669ab63cf242cf36ef50e57d683668/hf_xet-1.5.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:bf67e6ed10260cef62e852789dc91ebb03f382d5bdc4b1dbeb64763ea275e7d6" },
186
+ { url = "http://yum.tbsite.net/pypi/packages/63/b6/788060d5aa4d5e671f1a31bf69624c314eb2d8babab3aa562f9e5d53444e/hf_xet-1.5.1-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:c6b6cd08ca095058780b50b8ce4d6cbf6787bcf27841705d58a9d32246e3e47a" },
187
+ { url = "http://yum.tbsite.net/pypi/packages/22/93/c5540cbd6b55529b7dc42f6734e88cebee21aefbea34128b66229df56c57/hf_xet-1.5.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e1af0de8ca6f190d4294a28b88023db64a1e2d1d719cab044baf75bec569e7a9" },
188
+ { url = "http://yum.tbsite.net/pypi/packages/03/f3/9d8ceab30f44f36c1679b1b8683054c71a0dadc787dbf07421891742d3ca/hf_xet-1.5.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:4f561cbbb92f80960772059864b7fb07eae879adde1b2e781ec6f86f6ac26c59" },
189
+ { url = "http://yum.tbsite.net/pypi/packages/cd/54/27ed9a5e2cc583b4df82f75a03a4df8dbf55f5a9fa1f47f1fadfb20dbeac/hf_xet-1.5.1-cp314-cp314t-win_amd64.whl", hash = "sha256:e7dbb40617410f432182d918e37c12303fe6700fd6aa6c5964e30a535a4461d6" },
190
+ { url = "http://yum.tbsite.net/pypi/packages/ae/12/ecb2fc8d45e767580e3a37faa97cb895608b614965567efb4f18cff67e27/hf_xet-1.5.1-cp314-cp314t-win_arm64.whl", hash = "sha256:6071d5ccb4d8d2cbd5fea5cc798da4f0ba3f44e25369591c4e89a4987050e61d" },
191
+ { url = "http://yum.tbsite.net/pypi/packages/7a/d8/5e54cf37434759d1f4f2ba9b66077ff9d4c4e1f37b6bd7975da5c40d94ab/hf_xet-1.5.1-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:6abd35c3221eff63836618ddfb954dcf84798603f71d8e33e3ed7b04acfdbe6e" },
192
+ { url = "http://yum.tbsite.net/pypi/packages/35/94/4b2ecfbad8f8b04701a23aefb62f540b9137d058b7e1dbef16a32676f0e9/hf_xet-1.5.1-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:94e761bbd266bf4c03cee73753916062665ce8365aa40ed321f45afcb934b41e" },
193
+ { url = "http://yum.tbsite.net/pypi/packages/de/cc/f99f4bc7295023d7bd9ebbfd51f75cc530ca262c1227666268b8208f4b77/hf_xet-1.5.1-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:892e3a3a3aecc12aded8b93cf4f9cd059282c7de0732f7d55026f3abdf474350" },
194
+ { url = "http://yum.tbsite.net/pypi/packages/cd/6e/21f7e5a2381278bd3b7b7a5a4d90038518bb6308a0c1daf5d9f8268bb178/hf_xet-1.5.1-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:a93df2039190502835b1db8cd7e178b0b7b889fe9ab51299d5ced26e0dd879a4" },
195
+ { url = "http://yum.tbsite.net/pypi/packages/35/0e/f992bb6927ac1cb30ef74e62268f551f338bc32b2191f7c96a44c6f7283e/hf_xet-1.5.1-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:0c97106032ef70467b4f6bc2d0ccc266d7613ee076afc56516c502f87ce1c4a6" },
196
+ { url = "http://yum.tbsite.net/pypi/packages/fb/d1/90a498d05447980b977b1669246eeeeae4cfb0ea3e7a286eaba627f91bf9/hf_xet-1.5.1-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:6208adb15d192b90e4c2ad2a27ed864359b2cb0f2494eb6d7c7f3699ac02e2bf" },
197
+ { url = "http://yum.tbsite.net/pypi/packages/6d/b6/20f99cfe97cc663a711f7b33cc21d4793e51968e9a26125b4afcd77315ba/hf_xet-1.5.1-cp37-abi3-win_amd64.whl", hash = "sha256:f7b3002f95d1c13e24bcb4537baa8f0eb3838957067c91bb4959bc004a6435f5" },
198
+ { url = "http://yum.tbsite.net/pypi/packages/f9/fa/77453694888f03e5a8c8852d1514a0894d8e81c622d39edbaf308ea0dcf4/hf_xet-1.5.1-cp37-abi3-win_arm64.whl", hash = "sha256:93d090b57b211133f6c0dab0205ef5cb6d89162979ba75a74845045cc3063b8e" },
199
+ ]
200
+
201
+ [[package]]
202
+ name = "httpcore"
203
+ version = "1.0.9"
204
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
205
+ dependencies = [
206
+ { name = "certifi" },
207
+ { name = "h11" },
208
+ ]
209
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/06/94/82699a10bca87a5556c9c59b5963f2d039dbd239f25bc2a63907a05a14cb/httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8" }
210
+ wheels = [
211
+ { url = "http://yum.tbsite.net/pypi/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55" },
212
+ ]
213
+
214
+ [[package]]
215
+ name = "httpx"
216
+ version = "0.28.1"
217
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
218
+ dependencies = [
219
+ { name = "anyio", version = "4.12.1", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version < '3.10'" },
220
+ { name = "anyio", version = "4.13.0", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
221
+ { name = "certifi" },
222
+ { name = "httpcore" },
223
+ { name = "idna" },
224
+ ]
225
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc" }
226
+ wheels = [
227
+ { url = "http://yum.tbsite.net/pypi/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad" },
228
+ ]
229
+
230
+ [[package]]
231
+ name = "huggingface-hub"
232
+ version = "1.8.0"
233
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
234
+ resolution-markers = [
235
+ "python_full_version < '3.10'",
236
+ ]
237
+ dependencies = [
238
+ { name = "filelock", version = "3.19.1", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version < '3.10'" },
239
+ { name = "fsspec", version = "2025.10.0", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version < '3.10'" },
240
+ { name = "hf-xet", marker = "(python_full_version < '3.10' and platform_machine == 'AMD64') or (python_full_version < '3.10' and platform_machine == 'aarch64') or (python_full_version < '3.10' and platform_machine == 'amd64') or (python_full_version < '3.10' and platform_machine == 'arm64') or (python_full_version < '3.10' and platform_machine == 'x86_64')" },
241
+ { name = "httpx", marker = "python_full_version < '3.10'" },
242
+ { name = "packaging", marker = "python_full_version < '3.10'" },
243
+ { name = "pyyaml", marker = "python_full_version < '3.10'" },
244
+ { name = "tqdm", marker = "python_full_version < '3.10'" },
245
+ { name = "typer", version = "0.23.2", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version < '3.10'" },
246
+ { name = "typing-extensions", marker = "python_full_version < '3.10'" },
247
+ ]
248
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/8e/2a/a847fd02261cd051da218baf99f90ee7c7040c109a01833db4f838f25256/huggingface_hub-1.8.0.tar.gz", hash = "sha256:c5627b2fd521e00caf8eff4ac965ba988ea75167fad7ee72e17f9b7183ec63f3" }
249
+ wheels = [
250
+ { url = "http://yum.tbsite.net/pypi/packages/a9/ae/8a3a16ea4d202cb641b51d2681bdd3d482c1c592d7570b3fa264730829ce/huggingface_hub-1.8.0-py3-none-any.whl", hash = "sha256:d3eb5047bd4e33c987429de6020d4810d38a5bef95b3b40df9b17346b7f353f2" },
251
+ ]
252
+
253
+ [[package]]
254
+ name = "huggingface-hub"
255
+ version = "1.18.0"
256
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
257
+ resolution-markers = [
258
+ "python_full_version >= '3.10'",
259
+ ]
260
+ dependencies = [
261
+ { name = "click", version = "8.4.1", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
262
+ { name = "filelock", version = "3.29.1", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
263
+ { name = "fsspec", version = "2026.4.0", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
264
+ { name = "hf-xet", marker = "(python_full_version >= '3.10' and platform_machine == 'AMD64') or (python_full_version >= '3.10' and platform_machine == 'aarch64') or (python_full_version >= '3.10' and platform_machine == 'amd64') or (python_full_version >= '3.10' and platform_machine == 'arm64') or (python_full_version >= '3.10' and platform_machine == 'x86_64')" },
265
+ { name = "httpx", marker = "python_full_version >= '3.10'" },
266
+ { name = "packaging", marker = "python_full_version >= '3.10'" },
267
+ { name = "pyyaml", marker = "python_full_version >= '3.10'" },
268
+ { name = "tqdm", marker = "python_full_version >= '3.10'" },
269
+ { name = "typer", version = "0.25.1", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
270
+ { name = "typing-extensions", marker = "python_full_version >= '3.10'" },
271
+ ]
272
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/fb/d8/748ea0a47f0fa15227fe682f7a80826b4b7c096e4818044b8f56d6cb66d6/huggingface_hub-1.18.0.tar.gz", hash = "sha256:f0c5ecd1ef8c6a60f86f61ee278f2c1570ba9e279c9f54de9094210723b3613b" }
273
+ wheels = [
274
+ { url = "http://yum.tbsite.net/pypi/packages/0b/03/40a05316cb6616e5b7efd7773656441ab04b4b022c2199e79bb4622a92a3/huggingface_hub-1.18.0-py3-none-any.whl", hash = "sha256:729be4a976fb706dcc02d176bcda8a3f32bdf21a294e8f4b3dda6fbcbc9c1ab1" },
275
+ ]
276
+
277
+ [[package]]
278
+ name = "idna"
279
+ version = "3.18"
280
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
281
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/cd/63/9496c57188a2ee585e0f1db071d75089a11e98aa86eb99d9d7618fc1edce/idna-3.18.tar.gz", hash = "sha256:ffb385a7e039654cef1ab9ef32c6fafe283c0c0467bba1d9029738ce4a14a848" }
282
+ wheels = [
283
+ { url = "http://yum.tbsite.net/pypi/packages/1e/5e/d4e9f1a599fb8e573b7b87160658329fbf28d19eac2718f51fc3def3aa5a/idna-3.18-py3-none-any.whl", hash = "sha256:7f952cbe720b688055e3f87de14f5c3e5fdaa8bc3928985c4077ca689de849a2" },
284
+ ]
285
+
286
+ [[package]]
287
+ name = "markdown-it-py"
288
+ version = "3.0.0"
289
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
290
+ resolution-markers = [
291
+ "python_full_version < '3.10'",
292
+ ]
293
+ dependencies = [
294
+ { name = "mdurl", marker = "python_full_version < '3.10'" },
295
+ ]
296
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/38/71/3b932df36c1a044d397a1f92d1cf91ee0a503d91e470cbd670aa66b07ed0/markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb" }
297
+ wheels = [
298
+ { url = "http://yum.tbsite.net/pypi/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1" },
299
+ ]
300
+
301
+ [[package]]
302
+ name = "markdown-it-py"
303
+ version = "4.2.0"
304
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
305
+ resolution-markers = [
306
+ "python_full_version >= '3.10'",
307
+ ]
308
+ dependencies = [
309
+ { name = "mdurl", marker = "python_full_version >= '3.10'" },
310
+ ]
311
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/06/ff/7841249c247aa650a76b9ee4bbaeae59370dc8bfd2f6c01f3630c35eb134/markdown_it_py-4.2.0.tar.gz", hash = "sha256:04a21681d6fbb623de53f6f364d352309d4094dd4194040a10fd51833e418d49" }
312
+ wheels = [
313
+ { url = "http://yum.tbsite.net/pypi/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl", hash = "sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a" },
314
+ ]
315
+
316
+ [[package]]
317
+ name = "mdurl"
318
+ version = "0.1.2"
319
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
320
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba" }
321
+ wheels = [
322
+ { url = "http://yum.tbsite.net/pypi/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8" },
323
+ ]
324
+
325
+ [[package]]
326
+ name = "packaging"
327
+ version = "26.2"
328
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
329
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/d7/f1/e7a6dd94a8d4a5626c03e4e99c87f241ba9e350cd9e6d75123f992427270/packaging-26.2.tar.gz", hash = "sha256:ff452ff5a3e828ce110190feff1178bb1f2ea2281fa2075aadb987c2fb221661" }
330
+ wheels = [
331
+ { url = "http://yum.tbsite.net/pypi/packages/df/b2/87e62e8c3e2f4b32e5fe99e0b86d576da1312593b39f47d8ceef365e95ed/packaging-26.2-py3-none-any.whl", hash = "sha256:5fc45236b9446107ff2415ce77c807cee2862cb6fac22b8a73826d0693b0980e" },
332
+ ]
333
+
334
+ [[package]]
335
+ name = "pygments"
336
+ version = "2.20.0"
337
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
338
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/c3/b2/bc9c9196916376152d655522fdcebac55e66de6603a76a02bca1b6414f6c/pygments-2.20.0.tar.gz", hash = "sha256:6757cd03768053ff99f3039c1a36d6c0aa0b263438fcab17520b30a303a82b5f" }
339
+ wheels = [
340
+ { url = "http://yum.tbsite.net/pypi/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl", hash = "sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176" },
341
+ ]
342
+
343
+ [[package]]
344
+ name = "pyyaml"
345
+ version = "6.0.3"
346
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
347
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz", hash = "sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f" }
348
+ wheels = [
349
+ { url = "http://yum.tbsite.net/pypi/packages/f4/a0/39350dd17dd6d6c6507025c0e53aef67a9293a6d37d3511f23ea510d5800/pyyaml-6.0.3-cp310-cp310-macosx_10_13_x86_64.whl", hash = "sha256:214ed4befebe12df36bcc8bc2b64b396ca31be9304b8f59e25c11cf94a4c033b" },
350
+ { url = "http://yum.tbsite.net/pypi/packages/05/14/52d505b5c59ce73244f59c7a50ecf47093ce4765f116cdb98286a71eeca2/pyyaml-6.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:02ea2dfa234451bbb8772601d7b8e426c2bfa197136796224e50e35a78777956" },
351
+ { url = "http://yum.tbsite.net/pypi/packages/43/f7/0e6a5ae5599c838c696adb4e6330a59f463265bfa1e116cfd1fbb0abaaae/pyyaml-6.0.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b30236e45cf30d2b8e7b3e85881719e98507abed1011bf463a8fa23e9c3e98a8" },
352
+ { url = "http://yum.tbsite.net/pypi/packages/2f/3a/61b9db1d28f00f8fd0ae760459a5c4bf1b941baf714e207b6eb0657d2578/pyyaml-6.0.3-cp310-cp310-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:66291b10affd76d76f54fad28e22e51719ef9ba22b29e1d7d03d6777a9174198" },
353
+ { url = "http://yum.tbsite.net/pypi/packages/7a/1e/7acc4f0e74c4b3d9531e24739e0ab832a5edf40e64fbae1a9c01941cabd7/pyyaml-6.0.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9c7708761fccb9397fe64bbc0395abcae8c4bf7b0eac081e12b809bf47700d0b" },
354
+ { url = "http://yum.tbsite.net/pypi/packages/8b/ef/abd085f06853af0cd59fa5f913d61a8eab65d7639ff2a658d18a25d6a89d/pyyaml-6.0.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:418cf3f2111bc80e0933b2cd8cd04f286338bb88bdc7bc8e6dd775ebde60b5e0" },
355
+ { url = "http://yum.tbsite.net/pypi/packages/1f/15/2bc9c8faf6450a8b3c9fc5448ed869c599c0a74ba2669772b1f3a0040180/pyyaml-6.0.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:5e0b74767e5f8c593e8c9b5912019159ed0533c70051e9cce3e8b6aa699fcd69" },
356
+ { url = "http://yum.tbsite.net/pypi/packages/a3/00/531e92e88c00f4333ce359e50c19b8d1de9fe8d581b1534e35ccfbc5f393/pyyaml-6.0.3-cp310-cp310-win32.whl", hash = "sha256:28c8d926f98f432f88adc23edf2e6d4921ac26fb084b028c733d01868d19007e" },
357
+ { url = "http://yum.tbsite.net/pypi/packages/2a/fa/926c003379b19fca39dd4634818b00dec6c62d87faf628d1394e137354d4/pyyaml-6.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:bdb2c67c6c1390b63c6ff89f210c8fd09d9a1217a465701eac7316313c915e4c" },
358
+ { url = "http://yum.tbsite.net/pypi/packages/6d/16/a95b6757765b7b031c9374925bb718d55e0a9ba8a1b6a12d25962ea44347/pyyaml-6.0.3-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:44edc647873928551a01e7a563d7452ccdebee747728c1080d881d68af7b997e" },
359
+ { url = "http://yum.tbsite.net/pypi/packages/16/19/13de8e4377ed53079ee996e1ab0a9c33ec2faf808a4647b7b4c0d46dd239/pyyaml-6.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:652cb6edd41e718550aad172851962662ff2681490a8a711af6a4d288dd96824" },
360
+ { url = "http://yum.tbsite.net/pypi/packages/0c/62/d2eb46264d4b157dae1275b573017abec435397aa59cbcdab6fc978a8af4/pyyaml-6.0.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:10892704fc220243f5305762e276552a0395f7beb4dbf9b14ec8fd43b57f126c" },
361
+ { url = "http://yum.tbsite.net/pypi/packages/10/cb/16c3f2cf3266edd25aaa00d6c4350381c8b012ed6f5276675b9eba8d9ff4/pyyaml-6.0.3-cp311-cp311-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:850774a7879607d3a6f50d36d04f00ee69e7fc816450e5f7e58d7f17f1ae5c00" },
362
+ { url = "http://yum.tbsite.net/pypi/packages/71/60/917329f640924b18ff085ab889a11c763e0b573da888e8404ff486657602/pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b8bb0864c5a28024fac8a632c443c87c5aa6f215c0b126c449ae1a150412f31d" },
363
+ { url = "http://yum.tbsite.net/pypi/packages/dd/6f/529b0f316a9fd167281a6c3826b5583e6192dba792dd55e3203d3f8e655a/pyyaml-6.0.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1d37d57ad971609cf3c53ba6a7e365e40660e3be0e5175fa9f2365a379d6095a" },
364
+ { url = "http://yum.tbsite.net/pypi/packages/f2/6a/b627b4e0c1dd03718543519ffb2f1deea4a1e6d42fbab8021936a4d22589/pyyaml-6.0.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:37503bfbfc9d2c40b344d06b2199cf0e96e97957ab1c1b546fd4f87e53e5d3e4" },
365
+ { url = "http://yum.tbsite.net/pypi/packages/45/91/47a6e1c42d9ee337c4839208f30d9f09caa9f720ec7582917b264defc875/pyyaml-6.0.3-cp311-cp311-win32.whl", hash = "sha256:8098f252adfa6c80ab48096053f512f2321f0b998f98150cea9bd23d83e1467b" },
366
+ { url = "http://yum.tbsite.net/pypi/packages/da/e3/ea007450a105ae919a72393cb06f122f288ef60bba2dc64b26e2646fa315/pyyaml-6.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:9f3bfb4965eb874431221a3ff3fdcddc7e74e3b07799e0e84ca4a0f867d449bf" },
367
+ { url = "http://yum.tbsite.net/pypi/packages/d1/33/422b98d2195232ca1826284a76852ad5a86fe23e31b009c9886b2d0fb8b2/pyyaml-6.0.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:7f047e29dcae44602496db43be01ad42fc6f1cc0d8cd6c83d342306c32270196" },
368
+ { url = "http://yum.tbsite.net/pypi/packages/89/a0/6cf41a19a1f2f3feab0e9c0b74134aa2ce6849093d5517a0c550fe37a648/pyyaml-6.0.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:fc09d0aa354569bc501d4e787133afc08552722d3ab34836a80547331bb5d4a0" },
369
+ { url = "http://yum.tbsite.net/pypi/packages/ed/23/7a778b6bd0b9a8039df8b1b1d80e2e2ad78aa04171592c8a5c43a56a6af4/pyyaml-6.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9149cad251584d5fb4981be1ecde53a1ca46c891a79788c0df828d2f166bda28" },
370
+ { url = "http://yum.tbsite.net/pypi/packages/65/30/d7353c338e12baef4ecc1b09e877c1970bd3382789c159b4f89d6a70dc09/pyyaml-6.0.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5fdec68f91a0c6739b380c83b951e2c72ac0197ace422360e6d5a959d8d97b2c" },
371
+ { url = "http://yum.tbsite.net/pypi/packages/8b/9d/b3589d3877982d4f2329302ef98a8026e7f4443c765c46cfecc8858c6b4b/pyyaml-6.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ba1cc08a7ccde2d2ec775841541641e4548226580ab850948cbfda66a1befcdc" },
372
+ { url = "http://yum.tbsite.net/pypi/packages/05/c0/b3be26a015601b822b97d9149ff8cb5ead58c66f981e04fedf4e762f4bd4/pyyaml-6.0.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8dc52c23056b9ddd46818a57b78404882310fb473d63f17b07d5c40421e47f8e" },
373
+ { url = "http://yum.tbsite.net/pypi/packages/be/8e/98435a21d1d4b46590d5459a22d88128103f8da4c2d4cb8f14f2a96504e1/pyyaml-6.0.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:41715c910c881bc081f1e8872880d3c650acf13dfa8214bad49ed4cede7c34ea" },
374
+ { url = "http://yum.tbsite.net/pypi/packages/74/93/7baea19427dcfbe1e5a372d81473250b379f04b1bd3c4c5ff825e2327202/pyyaml-6.0.3-cp312-cp312-win32.whl", hash = "sha256:96b533f0e99f6579b3d4d4995707cf36df9100d67e0c8303a0c55b27b5f99bc5" },
375
+ { url = "http://yum.tbsite.net/pypi/packages/86/bf/899e81e4cce32febab4fb42bb97dcdf66bc135272882d1987881a4b519e9/pyyaml-6.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:5fcd34e47f6e0b794d17de1b4ff496c00986e1c83f7ab2fb8fcfe9616ff7477b" },
376
+ { url = "http://yum.tbsite.net/pypi/packages/1a/08/67bd04656199bbb51dbed1439b7f27601dfb576fb864099c7ef0c3e55531/pyyaml-6.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:64386e5e707d03a7e172c0701abfb7e10f0fb753ee1d773128192742712a98fd" },
377
+ { url = "http://yum.tbsite.net/pypi/packages/d1/11/0fd08f8192109f7169db964b5707a2f1e8b745d4e239b784a5a1dd80d1db/pyyaml-6.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8" },
378
+ { url = "http://yum.tbsite.net/pypi/packages/b1/16/95309993f1d3748cd644e02e38b75d50cbc0d9561d21f390a76242ce073f/pyyaml-6.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1" },
379
+ { url = "http://yum.tbsite.net/pypi/packages/50/31/b20f376d3f810b9b2371e72ef5adb33879b25edb7a6d072cb7ca0c486398/pyyaml-6.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c" },
380
+ { url = "http://yum.tbsite.net/pypi/packages/49/1e/a55ca81e949270d5d4432fbbd19dfea5321eda7c41a849d443dc92fd1ff7/pyyaml-6.0.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5" },
381
+ { url = "http://yum.tbsite.net/pypi/packages/74/27/e5b8f34d02d9995b80abcef563ea1f8b56d20134d8f4e5e81733b1feceb2/pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6" },
382
+ { url = "http://yum.tbsite.net/pypi/packages/f9/11/ba845c23988798f40e52ba45f34849aa8a1f2d4af4b798588010792ebad6/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6" },
383
+ { url = "http://yum.tbsite.net/pypi/packages/3d/e0/7966e1a7bfc0a45bf0a7fb6b98ea03fc9b8d84fa7f2229e9659680b69ee3/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be" },
384
+ { url = "http://yum.tbsite.net/pypi/packages/de/94/980b50a6531b3019e45ddeada0626d45fa85cbe22300844a7983285bed3b/pyyaml-6.0.3-cp313-cp313-win32.whl", hash = "sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26" },
385
+ { url = "http://yum.tbsite.net/pypi/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c" },
386
+ { url = "http://yum.tbsite.net/pypi/packages/73/e8/2bdf3ca2090f68bb3d75b44da7bbc71843b19c9f2b9cb9b0f4ab7a5a4329/pyyaml-6.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb" },
387
+ { url = "http://yum.tbsite.net/pypi/packages/9d/8c/f4bd7f6465179953d3ac9bc44ac1a8a3e6122cf8ada906b4f96c60172d43/pyyaml-6.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac" },
388
+ { url = "http://yum.tbsite.net/pypi/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310" },
389
+ { url = "http://yum.tbsite.net/pypi/packages/92/b5/47e807c2623074914e29dabd16cbbdd4bf5e9b2db9f8090fa64411fc5382/pyyaml-6.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7" },
390
+ { url = "http://yum.tbsite.net/pypi/packages/02/9e/e5e9b168be58564121efb3de6859c452fccde0ab093d8438905899a3a483/pyyaml-6.0.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788" },
391
+ { url = "http://yum.tbsite.net/pypi/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5" },
392
+ { url = "http://yum.tbsite.net/pypi/packages/dd/3f/5989debef34dc6397317802b527dbbafb2b4760878a53d4166579111411e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764" },
393
+ { url = "http://yum.tbsite.net/pypi/packages/d7/ce/af88a49043cd2e265be63d083fc75b27b6ed062f5f9fd6cdc223ad62f03e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35" },
394
+ { url = "http://yum.tbsite.net/pypi/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac" },
395
+ { url = "http://yum.tbsite.net/pypi/packages/f4/f4/a4541072bb9422c8a883ab55255f918fa378ecf083f5b85e87fc2b4eda1b/pyyaml-6.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3" },
396
+ { url = "http://yum.tbsite.net/pypi/packages/7c/f9/07dd09ae774e4616edf6cda684ee78f97777bdd15847253637a6f052a62f/pyyaml-6.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3" },
397
+ { url = "http://yum.tbsite.net/pypi/packages/4e/78/8d08c9fb7ce09ad8c38ad533c1191cf27f7ae1effe5bb9400a46d9437fcf/pyyaml-6.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba" },
398
+ { url = "http://yum.tbsite.net/pypi/packages/7b/5b/3babb19104a46945cf816d047db2788bcaf8c94527a805610b0289a01c6b/pyyaml-6.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c" },
399
+ { url = "http://yum.tbsite.net/pypi/packages/8b/cc/dff0684d8dc44da4d22a13f35f073d558c268780ce3c6ba1b87055bb0b87/pyyaml-6.0.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702" },
400
+ { url = "http://yum.tbsite.net/pypi/packages/b1/5e/f77dc6b9036943e285ba76b49e118d9ea929885becb0a29ba8a7c75e29fe/pyyaml-6.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c" },
401
+ { url = "http://yum.tbsite.net/pypi/packages/ce/88/a9db1376aa2a228197c58b37302f284b5617f56a5d959fd1763fb1675ce6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065" },
402
+ { url = "http://yum.tbsite.net/pypi/packages/da/92/1446574745d74df0c92e6aa4a7b0b3130706a4142b2d1a5869f2eaa423c6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65" },
403
+ { url = "http://yum.tbsite.net/pypi/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9" },
404
+ { url = "http://yum.tbsite.net/pypi/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b" },
405
+ { url = "http://yum.tbsite.net/pypi/packages/9f/62/67fc8e68a75f738c9200422bf65693fb79a4cd0dc5b23310e5202e978090/pyyaml-6.0.3-cp39-cp39-macosx_10_13_x86_64.whl", hash = "sha256:b865addae83924361678b652338317d1bd7e79b1f4596f96b96c77a5a34b34da" },
406
+ { url = "http://yum.tbsite.net/pypi/packages/ae/92/861f152ce87c452b11b9d0977952259aa7df792d71c1053365cc7b09cc08/pyyaml-6.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c3355370a2c156cffb25e876646f149d5d68f5e0a3ce86a5084dd0b64a994917" },
407
+ { url = "http://yum.tbsite.net/pypi/packages/d0/cd/f0cfc8c74f8a030017a2b9c771b7f47e5dd702c3e28e5b2071374bda2948/pyyaml-6.0.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3c5677e12444c15717b902a5798264fa7909e41153cdf9ef7ad571b704a63dd9" },
408
+ { url = "http://yum.tbsite.net/pypi/packages/ef/b2/18f2bd28cd2055a79a46c9b0895c0b3d987ce40ee471cecf58a1a0199805/pyyaml-6.0.3-cp39-cp39-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5ed875a24292240029e4483f9d4a4b8a1ae08843b9c54f43fcc11e404532a8a5" },
409
+ { url = "http://yum.tbsite.net/pypi/packages/73/b9/793686b2d54b531203c160ef12bec60228a0109c79bae6c1277961026770/pyyaml-6.0.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0150219816b6a1fa26fb4699fb7daa9caf09eb1999f3b70fb6e786805e80375a" },
410
+ { url = "http://yum.tbsite.net/pypi/packages/a9/86/a137b39a611def2ed78b0e66ce2fe13ee701a07c07aebe55c340ed2a050e/pyyaml-6.0.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:fa160448684b4e94d80416c0fa4aac48967a969efe22931448d853ada8baf926" },
411
+ { url = "http://yum.tbsite.net/pypi/packages/dd/62/71c27c94f457cf4418ef8ccc71735324c549f7e3ea9d34aba50874563561/pyyaml-6.0.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:27c0abcb4a5dac13684a37f76e701e054692a9b2d3064b70f5e4eb54810553d7" },
412
+ { url = "http://yum.tbsite.net/pypi/packages/29/3d/6f5e0d58bd924fb0d06c3a6bad00effbdae2de5adb5cda5648006ffbd8d3/pyyaml-6.0.3-cp39-cp39-win32.whl", hash = "sha256:1ebe39cb5fc479422b83de611d14e2c0d3bb2a18bbcb01f229ab3cfbd8fee7a0" },
413
+ { url = "http://yum.tbsite.net/pypi/packages/f0/0c/25113e0b5e103d7f1490c0e947e303fe4a696c10b501dea7a9f49d4e876c/pyyaml-6.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:2e71d11abed7344e42a8849600193d15b6def118602c4c176f748e4583246007" },
414
+ ]
415
+
416
+ [[package]]
417
+ name = "rich"
418
+ version = "15.0.0"
419
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
420
+ dependencies = [
421
+ { name = "markdown-it-py", version = "3.0.0", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version < '3.10'" },
422
+ { name = "markdown-it-py", version = "4.2.0", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
423
+ { name = "pygments" },
424
+ ]
425
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/c0/8f/0722ca900cc807c13a6a0c696dacf35430f72e0ec571c4275d2371fca3e9/rich-15.0.0.tar.gz", hash = "sha256:edd07a4824c6b40189fb7ac9bc4c52536e9780fbbfbddf6f1e2502c31b068c36" }
426
+ wheels = [
427
+ { url = "http://yum.tbsite.net/pypi/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl", hash = "sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb" },
428
+ ]
429
+
430
+ [[package]]
431
+ name = "shellingham"
432
+ version = "1.5.4"
433
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
434
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/58/15/8b3609fd3830ef7b27b655beb4b4e9c62313a4e8da8c676e142cc210d58e/shellingham-1.5.4.tar.gz", hash = "sha256:8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de" }
435
+ wheels = [
436
+ { url = "http://yum.tbsite.net/pypi/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl", hash = "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686" },
437
+ ]
438
+
439
+ [[package]]
440
+ name = "tqdm"
441
+ version = "4.68.1"
442
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
443
+ dependencies = [
444
+ { name = "colorama", marker = "sys_platform == 'win32'" },
445
+ ]
446
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/06/b3/36c8ecf72e8925200671613332db156d84b99b3aee742a41c1938ebb0808/tqdm-4.68.1.tar.gz", hash = "sha256:fc163d96b287bd031e1aa24421ce4411b25559bd0a1be4fe649bdaa4d2c02bf5" }
447
+ wheels = [
448
+ { url = "http://yum.tbsite.net/pypi/packages/47/aa/218a0eb34de1f753c83e4d0d1c8e7c4cef27f20dcb8342e024f63a80dc86/tqdm-4.68.1-py3-none-any.whl", hash = "sha256:fea4a90e4023f764914569f7802a297277c5ab1a66be5144143e142e1a4031d8" },
449
+ ]
450
+
451
+ [[package]]
452
+ name = "typer"
453
+ version = "0.23.2"
454
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
455
+ resolution-markers = [
456
+ "python_full_version < '3.10'",
457
+ ]
458
+ dependencies = [
459
+ { name = "annotated-doc", marker = "python_full_version < '3.10'" },
460
+ { name = "click", version = "8.1.8", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version < '3.10'" },
461
+ { name = "rich", marker = "python_full_version < '3.10'" },
462
+ { name = "shellingham", marker = "python_full_version < '3.10'" },
463
+ ]
464
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/d3/ae/93d16574e66dfe4c2284ffdaca4b0320ade32858cb2cc586c8dd79f127c5/typer-0.23.2.tar.gz", hash = "sha256:a99706a08e54f1aef8bb6a8611503808188a4092808e86addff1828a208af0de" }
465
+ wheels = [
466
+ { url = "http://yum.tbsite.net/pypi/packages/14/2c/dee705c427875402200fe779eb8a3c00ccb349471172c41178336e9599cc/typer-0.23.2-py3-none-any.whl", hash = "sha256:e9c8dc380f82450b3c851a9b9d5a0edf95d1d6456ae70c517d8b06a50c7a9978" },
467
+ ]
468
+
469
+ [[package]]
470
+ name = "typer"
471
+ version = "0.25.1"
472
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
473
+ resolution-markers = [
474
+ "python_full_version >= '3.10'",
475
+ ]
476
+ dependencies = [
477
+ { name = "annotated-doc", marker = "python_full_version >= '3.10'" },
478
+ { name = "click", version = "8.4.1", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
479
+ { name = "rich", marker = "python_full_version >= '3.10'" },
480
+ { name = "shellingham", marker = "python_full_version >= '3.10'" },
481
+ ]
482
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/e4/51/9aed62104cea109b820bbd6c14245af756112017d309da813ef107d42e7e/typer-0.25.1.tar.gz", hash = "sha256:9616eb8853a09ffeabab1698952f33c6f29ffdbceb4eaeecf571880e8d7664cc" }
483
+ wheels = [
484
+ { url = "http://yum.tbsite.net/pypi/packages/3f/f9/2b3ff4e56e5fa7debfaf9eb135d0da96f3e9a1d5b27222223c7296336e5f/typer-0.25.1-py3-none-any.whl", hash = "sha256:75caa44ed46a03fb2dab8808753ffacdbfea88495e74c85a28c5eefcf5f39c89" },
485
+ ]
486
+
487
+ [[package]]
488
+ name = "typing-extensions"
489
+ version = "4.15.0"
490
+ source = { registry = "http://yum.tbsite.net/pypi/simple/" }
491
+ sdist = { url = "http://yum.tbsite.net/pypi/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466" }
492
+ wheels = [
493
+ { url = "http://yum.tbsite.net/pypi/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548" },
494
+ ]
495
+
496
+ [[package]]
497
+ name = "wan2video"
498
+ version = "0.1.0"
499
+ source = { editable = "." }
500
+ dependencies = [
501
+ { name = "click", version = "8.1.8", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version < '3.10'" },
502
+ { name = "click", version = "8.4.1", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
503
+ { name = "huggingface-hub", version = "1.8.0", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version < '3.10'" },
504
+ { name = "huggingface-hub", version = "1.18.0", source = { registry = "http://yum.tbsite.net/pypi/simple/" }, marker = "python_full_version >= '3.10'" },
505
+ { name = "rich" },
506
+ ]
507
+
508
+ [package.metadata]
509
+ requires-dist = [
510
+ { name = "click", specifier = ">=8.0" },
511
+ { name = "huggingface-hub", specifier = ">=0.20.0" },
512
+ { name = "rich", specifier = ">=13.0" },
513
+ ]