Spaces:
Runtime error
Runtime error
| #!/usr/bin/env python3 | |
| from __future__ import annotations | |
| import importlib.util | |
| import json | |
| PACKAGE_MAP = { | |
| "mamba_ssm": "mamba-ssm", | |
| "transformers": "transformers", | |
| } | |
| def detect_missing_modules(required: list[str] | None = None) -> list[str]: | |
| names = required or list(PACKAGE_MAP) | |
| return [name for name in names if importlib.util.find_spec(name) is None] | |
| def build_install_command(*, missing_modules: list[str]) -> list[str]: | |
| packages = [PACKAGE_MAP[name] for name in missing_modules if name in PACKAGE_MAP] | |
| if not packages: | |
| return [] | |
| return ["python", "-m", "pip", "install", *packages] | |
| def build_runtime_report(*, missing_modules: list[str]) -> dict[str, object]: | |
| return { | |
| "ready": len(missing_modules) == 0, | |
| "missing_modules": list(missing_modules), | |
| "packages": {name: PACKAGE_MAP[name] for name in missing_modules if name in PACKAGE_MAP}, | |
| "install_command": build_install_command(missing_modules=missing_modules), | |
| } | |
| def main() -> int: | |
| missing = detect_missing_modules() | |
| print(json.dumps(build_runtime_report(missing_modules=missing), indent=2, sort_keys=True)) | |
| return 0 | |
| if __name__ == "__main__": | |
| raise SystemExit(main()) | |