---
title: d1-2B-MLX-4bit
canonical_url: "https://www.modelscope.cn/models/LiquidAI/d1-2B-MLX-4bit"
md_url: "https://www.modelscope.cn/models/LiquidAI/d1-2B-MLX-4bit.md"
repository: LiquidAI/d1-2B-MLX-4bit
last_updated: 2026-10-27
license: other
pipeline_tag: image-text-to-text
tasks:
  - image-text-to-text
model_type:
  - lfm3_vl
architectures:
  - D1Model
base_model:
  - LiquidAI/d1-2B
base_model_relation: quantized
parameters: 459.8M
tensor_type:
  - F16
  - U32
library_name:
  - mlx
  - safetensors
  - pytorch
frameworks:
  - pytorch
language:
  - en
  - ar
  - zh
  - fr
  - de
  - it
  - ja
  - ko
  - pt
  - es
  - vi
  - th
  - id
  - hi
  - ru
  - pl
downloads: 8
stars: 1
tags:
  - liquid
  - lfm3
  - edge
  - decision
  - classification
  - calibration
  - system-one
  - multimodal
  - vision
  - mlx
---

# d1-2B-MLX-4bit

> d1-2B-MLX-4bit - LiquidAI 在 ModelScope 开源的模型。4-bit MLX version of d1-2B for Apple Silicon. The weights take 1.35 GB.

LiquidAI/d1-2B-MLX-4bit 是 ModelScope 魔搭社区上的 459.8M 参数image-text-to-text模型，采用 other 许可，基于 LiquidAI/d1-2B 构建。

- **Repository**: LiquidAI/d1-2B-MLX-4bit
- **License**: other
- **Tasks**: image-text-to-text
- **Parameters**: 459.8M
- **Base model**: LiquidAI/d1-2B
- **Tags**: liquid, lfm3, edge, decision, classification, calibration, system-one, multimodal, vision, mlx
- **Downloads**: 8
- **Stars**: 1
- **Last updated**: 2026-10-27

Source: https://www.modelscope.cn/models/LiquidAI/d1-2B-MLX-4bit

---

<div align="center">
  <img
    src="https://huggingface.co/LiquidAI/LFM3-1.7B/resolve/main/assets/liquid-ai-banner.webp"
    alt="Liquid AI"
    style="width: 100%; max-width: 100%; height: auto; display: block; margin: 0;"
  />
  <div align="center" style="display: flex; justify-content: center; align-items: center; gap: 1.25em; margin: 8px 0 1.7rem; padding: 0; line-height: 1.3;">
    <a href="https://console.liquid.ai/dashboard" style="display: inline-flex; align-items: center; gap: 6px;"><img src="https://huggingface.co/LiquidAI/LFM3-1.7B/resolve/main/assets/icons/api.svg" width="16" height="16" alt="" aria-hidden="true" style="display: block; flex: 0 0 16px; width: 16px; height: 16px; margin: 0;" /><strong>API</strong></a>
    <a href="https://playground.liquid.ai/" style="display: inline-flex; align-items: center; gap: 6px;"><img src="https://huggingface.co/LiquidAI/LFM3-1.7B/resolve/main/assets/icons/try.svg" width="16" height="16" alt="" aria-hidden="true" style="display: block; flex: 0 0 16px; width: 16px; height: 16px; margin: 0;" /><strong>Try</strong></a>
    <a href="https://docs.liquid.ai/lfm/getting-started/welcome" style="display: inline-flex; align-items: center; gap: 6px;"><img src="https://huggingface.co/LiquidAI/LFM3-1.7B/resolve/main/assets/icons/docs.svg" width="16" height="16" alt="" aria-hidden="true" style="display: block; flex: 0 0 16px; width: 16px; height: 16px; margin: 0;" /><strong>Docs</strong></a>
    <a href="https://www.liquid.ai/blog/lfm3" style="display: inline-flex; align-items: center; gap: 6px;"><img src="https://huggingface.co/LiquidAI/LFM3-1.7B/resolve/main/assets/icons/blog.svg" width="16" height="16" alt="" aria-hidden="true" style="display: block; flex: 0 0 16px; width: 16px; height: 16px; margin: 0;" /><strong>Blog</strong></a>
  </div>
</div>

# d1-2B-MLX-4bit

4-bit MLX version of [d1-2B](https://huggingface.co/LiquidAI/d1-2B) for Apple Silicon. The weights take 1.35 GB.

d1-2B is a decision model for text, pictures, and video. It answers named, typed questions over a state with calibrated probabilities in one forward pass, without generating tokens.

The language model uses 4-bit affine quantization with groups of 64. The vision tower, projector and norms stay in FP16. Against the original checkpoint run in float32, it changed 3 of 52 test answers and moved probabilities by up to 0.25. Prefer [FP16](https://huggingface.co/LiquidAI/d1-2B-MLX-fp16) or [8-bit](https://huggingface.co/LiquidAI/d1-2B-MLX-8bit) where calibration matters.

Find architecture and usage details in the [original model card](https://huggingface.co/LiquidAI/d1-2B).

## Use with MLX-VLM
<hr style="margin: -0.7em 0 1.2em 0; border: 0; border-top: 1px solid rgba(127, 127, 127, 0.3);" />

Support for d1 in [MLX-VLM](https://github.com/Blaizzy/mlx-vlm) is in progress. We will update this card when an MLX-VLM release supports it.

```python
from mlx_vlm import load
from mlx_vlm.utils import load_image

model, processor = load("LiquidAI/d1-2B-MLX-4bit")

# Text: several named questions over one state, answered in one pass
ticket = "I was charged twice and my parcel never arrived. Please refund one charge."
out = model.system_one(ticket, {
    "refund": {"type": "noul", "instructions": "Is the customer asking for a refund?"},
    "team": {"type": "choice", "instructions": "Which team should handle this?",
             "criteria": {"billing": "Charges, refunds, invoices",
                          "shipping": "Delivery and parcels",
                          "technical": "App or site faults"}},
    "topics": {"type": "choice", "multiple": True,
               "instructions": "Which topics does the message raise?",
               "criteria": {"billing": "Payments and charges",
                            "delivery": "Shipping and parcels",
                            "login": "Signing in to the account"}},
    "urgency": {"type": "score", "instructions": "How urgent is this ticket?",
                "criteria": ["low", "medium", "high"]},
})
a = out["answers"]
print(round(a["refund"]["noul"], 2), a["team"]["choice"], a["topics"]["choices"],
      a["urgency"]["legend"][str(int(a["urgency"]["score"]))])
# 1.0 billing ['billing', 'delivery'] medium
print(out["usage"])
# {'input_tokens': 189, 'output_tokens': 0}

# Picture: the photo is the whole state
image = load_image("http://images.cocodataset.org/val2017/000000039769.jpg")
out = model.system_one(None, {
    "cats": {"type": "number", "instructions": "How many cats are there?", "range": [0, 10], "step": 1},
    "remote": {"type": "box", "instructions": "Where is the remote control on the left?"},
}, media=[image])
a = out["answers"]
print(a["cats"]["number"], {k: round(v, 2) for k, v in a["remote"]["box"].items()})
# 2.0 {'top': 0.16, 'bottom': 0.24, 'left': 0.06, 'right': 0.28}
```

`model.system_one` returns `{"answers": {name: answer}, "usage": {...}}`, and `model.system_one_batch` takes several requests. The original model card describes every question type and answer field.

From the command line, the answers print as JSON:

```bash
python -m mlx_vlm decide --model LiquidAI/d1-2B-MLX-4bit \
  --state "I was charged twice this month. Please refund one of the charges." \
  --questions '{"refund": {"type": "noul", "instructions": "Is the customer asking for a refund?"}}'
```

More options in the [MLX guide](https://docs.liquid.ai/deployment/on-device/mlx).
