Spaces:
Running on Zero
Running on Zero
Download core/engine.py from drinkmoonshine/parallel-constrained-decoding: direct link, hf CLI and curl.
- Browser
- Download file 1.15 kB
-
https://huggingface.co/spaces/drinkmoonshine/parallel-constrained-decoding/resolve/2cb1107ab79b2120a1c35984cf57993af5356b63/core/engine.py
- Command line
-
hf download hf://spaces/drinkmoonshine/parallel-constrained-decoding@2cb1107ab79b2120a1c35984cf57993af5356b63/core/engine.py
-
curl -L -o engine.py https://huggingface.co/spaces/drinkmoonshine/parallel-constrained-decoding/resolve/2cb1107ab79b2120a1c35984cf57993af5356b63/core/engine.py
1.15 kB
| """ | |
| Unified Engine Router for Parallel Constrained Decoding. | |
| Automatically selects MLX backend on Apple Silicon macOS, | |
| or PyTorch / CUDA backend on Linux, Docker, and Hugging Face Spaces. | |
| """ | |
| import os | |
| import platform | |
| USE_MLX = False | |
| if platform.system() == "Darwin" and os.environ.get("BACKEND", "").lower() != "torch": | |
| try: | |
| import mlx.core as mx | |
| import mlx_lm | |
| USE_MLX = True | |
| except Exception: | |
| USE_MLX = False | |
| if USE_MLX: | |
| from core.engine_mlx import ( | |
| get_engine, | |
| run_parallel_generation, | |
| run_naive_generation, | |
| stream_naive_generation, | |
| run_rlcd_generation, | |
| ) | |
| else: | |
| from core.engine_torch import ( | |
| get_torch_engine as get_engine, | |
| run_parallel_generation_torch as run_parallel_generation, | |
| run_naive_generation_torch as run_naive_generation, | |
| stream_naive_generation_torch as stream_naive_generation, | |
| ) | |
| run_rlcd_generation = run_parallel_generation | |
| __all__ = [ | |
| "get_engine", | |
| "run_parallel_generation", | |
| "run_naive_generation", | |
| "stream_naive_generation", | |
| "run_rlcd_generation", | |
| "USE_MLX", | |
| ] | |