Spaces:
Sleeping
Sleeping
File size: 1,284 Bytes
c397c07 3ea399a c397c07 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | """Materialize all LTX 2.3 model files for every mode by walking each template."""
from __future__ import annotations
import pathlib
import sys
# Ensure project root is on sys.path so `import models` / `import workflow` work
# when this script is invoked directly (e.g. `python tools/refresh_models.py`).
_PROJECT_ROOT = pathlib.Path(__file__).resolve().parent.parent
if str(_PROJECT_ROOT) not in sys.path:
sys.path.insert(0, str(_PROJECT_ROOT))
import models # noqa: E402
from workflow import VALID_MODES, load_template # noqa: E402
def main() -> int:
needed: set[str] = set()
for mode in VALID_MODES:
try:
wf = load_template(mode)
needed.update(models.walk_workflow_for_models(wf))
except FileNotFoundError:
print(f" WARNING: workflows/{mode}.json missing — run tools/extract_modes.py first")
if not needed:
print("Nothing to do.")
return 0
print(f"Materializing {len(needed)} model files...")
for event in models.ensure_models(needed):
marker = "OK" if event.mb_done >= event.mb_total else "DL"
print(f" [{marker}] {event.filename} {event.mb_done:.1f}/{event.mb_total:.1f} MB")
print("Done.")
return 0
if __name__ == "__main__":
sys.exit(main())
|