--- license: apache-2.0 library_name: mlx pipeline_tag: text-generation base_model: badtheorylabs/BTL-4 tags: - mlx - optiq - quantized - 4bit - mixed-precision - moe - agentic - tool-use - code - apple-silicon --- # mlx-community/BTL-4-OptiQ-4bit > **Built with [mlx-optiq](https://mlx-optiq.com)**, the MLX-native toolkit to quantize, fine-tune, and serve LLMs locally on Apple Silicon, no PyTorch and no cloud. [All OptiQ quants](https://mlx-optiq.com/models) · [Docs](https://mlx-optiq.com/docs/) · [Qwen3.5 family](https://mlx-optiq.com/docs/qwen3.5) An OptiQ mixed-precision quant of [badtheorylabs/BTL-4](https://huggingface.co/badtheorylabs/BTL-4), a 35B agentic reasoning model built for tool use, software engineering and long-horizon agent work. 22.2 GB on disk, down from 70.2 GB at bf16. ## What it is | Property | Value | |---|---| | Base | [badtheorylabs/BTL-4](https://huggingface.co/badtheorylabs/BTL-4) | | Architecture | `qwen3_5_moe` — sparse mixture-of-experts | | Method | OptiQ mixed-precision, per-layer bit allocation reused from the base family | | On disk | 22.2 GB (bf16: 70.2 GB) | BTL-4 keeps the architecture of the family it is derived from, so which layers tolerate fewer bits is unchanged and a fresh sensitivity sweep would only rediscover the same answer. The per-layer allocation comes from [Qwen3.5-35B-A3B-OptiQ-4bit](https://huggingface.co/mlx-community/Qwen3.5-35B-A3B-OptiQ-4bit): 512 of 512 layers matched, with the routed experts mostly at 4-bit and attention, router and layer edges kept at 8-bit. No Capability Score is published for this quant. The base model's own benchmarks are on [its card](https://huggingface.co/badtheorylabs/BTL-4). ## Run it ```bash pip install mlx-optiq optiq serve --model mlx-community/BTL-4-OptiQ-4bit ``` That gives you an OpenAI and Anthropic compatible endpoint with mixed-precision KV cache, tool-call healing and prompt caching — useful for an agentic model, where a malformed tool call costs a whole turn. Or from Python: ```python from mlx_lm import load, generate model, tokenizer = load("mlx-community/BTL-4-OptiQ-4bit") prompt = tokenizer.apply_chat_template( [{"role": "user", "content": "List the files in the current directory."}], add_generation_prompt=True, tokenize=False, ) print(generate(model, tokenizer, prompt=prompt, max_tokens=512)) ``` ## Links - **Project website:** [mlx-optiq.com](https://mlx-optiq.com/) - **All OptiQ quants:** [mlx-optiq.com/models](https://mlx-optiq.com/models) - **PyPI:** [pypi.org/project/mlx-optiq](https://pypi.org/project/mlx-optiq/) - **Base model:** [badtheorylabs/BTL-4](https://huggingface.co/badtheorylabs/BTL-4)