alt.freeweights.qwen / CLM-v0.1-8B-MLX-8bit
From: mlx-community <huggingface.co/mlx-community>Newsgroups: alt.freeweights.qwenSubject:

CLM-v0.1-8B-MLX-8bit

Date: 2026-11-15Commit: eb39b6cSigned: 2DC28CC7B26A283B ✓

Feature extraction model. Safetensors weights, 8.13 GB in all. Published by mlx-community under Apache-2.0.

qwen8.13GBCLM-v0.1-8B-MLX-8bitsafetensorspermissive
FactsParamsnot statedSize8.13 GBFormatssafetensorsTaskfeature extractionLicenseApache-2.0From sourcepermissive
$ fw get mlx-community/CLM-v0.1-8B-MLX-8bit
# manifest sha256 6351b9ccc85a… · 8.13 GB · 23 files
$ fw verify ./CLM-v0.1-8B-MLX-8bit mlx-community/CLM-v0.1-8B-MLX-8bit
From sourceHosted (signed)mlx-community/CLM-v0.1-8B-MLX-8bitLast check: 2026-11-15 05:14 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Quantized of Qwen3-8B.

Works with

Evaluate with

Overview

Size
8.13 GB
Weights
8.12 GB (safetensors)
Parameters
not stated
Formats
safetensors
Task
feature extraction
License
Apache-2.0 (permissive)
Files
23, each with a sha256
Publisher
mlx-community
Added
2026-11-15
Section
alt.freeweights.qwen
Lineage

Original release from the publisher.

Base model: Qwen/Qwen3-8B

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 05:14 UTCpassed

Model card

From the publisher at commit eb39b6c. Shown as plain text with links; images open at the publisher.

CLM-v0.1-8B for MLX (8bit)#

An Apple-Silicon (MLX) port of CLM-v0.1-8B, the Contrastive Language Model from Contrastive-LM/CLM: a frozen Qwen3-8B encoder plus two small projection heads that score states against candidate actions. It answers typed questions (yes/no, choice, score) and ranks candidates with a probability distribution, without generating text.

This is an unofficial community port, not released or reviewed by the CLM authors. It was checked against upstream's reference implementation (the authors' code: vLLM + clm-serve at commit bb42c6c, which we ran on an RTX 4090) on 778 questions; see Parity below.

The encoder itself is a standard MLX-format Qwen3-8B checkpoint, so its weights are usable with general MLX tooling such as mlx-workflow and its Mac app MLXUI for local, on-device inference. Note that the CLM answer/rank behavior (the projection heads and clm_mlx code in this repo) is specific to this port and isn't one of MLXUI's built-in model protocols — using it there would need custom integration on top of the raw encoder.

EncoderQwen3-8B @ b968826d9c46, MLX 8bit, lm_head removed (8.0 GB / 7.5 GiB)
HeadsCLM_v0.1-8B projection heads, float32 (the released weights, unchanged)
Poolinglast token, final hidden state after the last RMSNorm, L2-normalised
Max input2048 tokens; longer inputs keep the first 2048 (as the upstream server does)
Measured onApple M3 Pro, 18 GB: 336.1 tokens/s encoder throughput, 9.05 GB peak

Requirements#

An Apple Silicon Mac (MLX), Python 3.10+, about 8 GB of disk and roughly 9.05 GB of free memory while running (a 16 GB Mac is the practical minimum; measured peak above).

Quickstart#

pip install mlx mlx-lm transformers huggingface_hub
hf download mlx-community/CLM-v0.1-8B-MLX-8bit --local-dir clm-mlx && cd clm-mlx

Run Python from inside the downloaded folder (the clm_mlx package ships in it):

from clm_mlx.engine import Engine
eng = Engine("encoder", "heads")
out = eng.answer(
    "Customer: my invoice was charged twice and nobody answers the phone!",
    {
        "urgency": {"type": "noul", "instructions": "Is this urgent?"},
        "department": {"type": "choice", "instructions": "Which team should handle this?",
                        "criteria": {"billing": "Charges, invoices, refunds", "technical": "Bugs and outages"}},
        "frustration": {"type": "score", "instructions": "How frustrated is the customer?",
                         "criteria": ["Calm", "Frustrated", "Very angry"]},
    },
)
print(out["answers"]["department"]["choice"], out["answers"]["department"]["probabilities"])
print(eng.rank("", ["The Moon's gravitational pull.", "Photosynthesis in plants."], "What causes tides on Earth?"))

Questions and answers use upstream's wire format (noul / choice / score); see the upstream API reference. Option projections are cached, so repeated questions over new states only pay for the state.

Parity with the upstream server#

Reference: upstream's code, run by us on an RTX 4090 (vLLM 0.30.0, bfloat16), 882 texts (2048-token limit included), 778 typed questions. The yardstick is how much the upstream server disagrees with itself: its live answers compared with answers recomputed from its own vectors for the same inputs.

this port vs upstreamupstream vs itself
top option agrees99.0%98.6%
answer probability difference, p950.0870.060
answer probability difference, median0.0360.022
answer probability difference, max0.2540.096
encoder embedding cosine, min / mean0.9986 / 0.9997—

Verdict: within upstream noise (top-option agreement at least upstream's own minus 1 point, and p95 difference at most 1.5× upstream's). The port is somewhat noisier than upstream is with itself (p95, median and max above), while agreeing on the top option as often. 8 questions changed their top option; the upstream server's own top probability on those was 0.35–0.54 (near-ties). The full report is in parity.json.

Notes and limitations#

  • Encoder only: lm_head is removed, so this checkpoint cannot generate text.
  • Inputs over 2048 tokens keep the first 2048, matching the upstream server. Upstream trained the heads on the last tokens of long states; Engine(..., truncation="tail") does that instead.
  • Quantization adds a small amount of noise on top of upstream's own; decisions the upstream model is unsure about (near 50/50) can flip.

Credits and licence#

  • CLM method, heads and reference implementation: Kwok, Kang, Suresh, Saad-Falcon, Pavone, Ré, Mirhoseini, Contrastive Language Models: A System One Model for Fast and Generalizable Decision-Making (2026), contrastive-lm.notion.site. Heads: Contrastive-LM/CLM-v0.1-8B, Apache-2.0.
  • Encoder: Qwen/Qwen3-8B, Apache-2.0.
  • This port (MLX conversion, clm_mlx code, parity harness): Apache-2.0.
@misc{kwok2026contrastivelanguagemodels,
  title={Contrastive Language Models: A System One Model for Fast and Generalizable Decision-Making},
  author={Jacky Kwok and Hangoo Kang and Tarun Suresh and Jon Saad-Falcon and Marco Pavone and Christopher Ré and Azalia Mirhoseini},
  year={2026}, note={Notion Blog}, url={https://contrastive-lm.notion.site}
}

Files

23 files · 8.13 GBWeights 8.12 GB (safetensors). Sizes and sha256 from the signed manifest.
Show all 23 files with their sha256
FileSizesha256
.gitattributes1.58 KBa47214a3f047bc4cb4e3ea7cd1e023b03d95650ea4e794cd9f84732d5226486a
LICENSE11.4 KBcfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30
NOTICE400 Bf536e17bcf301cc6c09b4c0aac18f3ebe23b9b28f2dea53e4e6b48c6096bc91f
README.md5.89 KB1d972c1b3e78c6b107637bf2c494edb74aaba18bb5f362fb0b700cab94598f30
clm_mlx.json271 B807c2fa2e923e95e6b6a5ee07108ad040966e3e867472eb034c5ff8764afba8e
clm_mlx/__init__.py0 Be3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
clm_mlx/encoder.py3.89 KB76f750dfdb91c16c4811c76bd034a93c0d3cdf37cdf904f93b0ee0c9b547573c
clm_mlx/engine.py3.49 KBadcaa234451f51672b71377c3a1305dd48afa39bd53e00e9a18b530f36758a03
clm_mlx/heads.py3.33 KB6f5aa6973e7265aaf2645035489f2a1173e5f3c9f9321cf1c960c62bddf420fd
clm_mlx/schema.py6.26 KBf09abd8dec99161b5c142c229f92888c2e0594463027590c30417b6835bbff65
config.json872 B781be87816e385c4f7c0e7580b51f28d89e2b738debf1b7b616445aeb9ba0dd7
encoder/chat_template.jinja4.17 KBa55ee1b1660128b7098723e0abcd92caa0788061051c62d51cbe87d9cf1974d8
encoder/clm_source.json116 B981a338810d221891abc8e85ef444bf6daab970d267875d26963f421ab16444a
encoder/config.json872 B781be87816e385c4f7c0e7580b51f28d89e2b738debf1b7b616445aeb9ba0dd7
encoder/generation_config.json239 B2325da0f15bb848e018c5ae071b7943332e9f871d6b60e2ed22ca97d4cb993d2
encoder/model-00001-of-00002.safetensors5.32 GBe114ccbb81c46dcc53a3bd9401bad877c71db00a17cc9a9040a802a3625d3c78
encoder/model-00002-of-00002.safetensors2.72 GB77de1ff98079d4fd284e1427f26f465781b95a06b5774f3f0685ca458855cc77
encoder/model.safetensors.index.json72.1 KB580177b796ca4960009efcfbb57688d2a966eee4fea1cf7abeebd593caa352f7
encoder/tokenizer.json11.4 MBbe75606093db2094d7cd20f3c2f385c212750648bd6ea4fb2bf507a6a4c55506
encoder/tokenizer_config.json729 Bee8f6d44bf2353e6d3686c3adaf70e1ccfe9e6ed6822d0ab2f28cafdd7754792
heads/CLM_v0.1-8B.safetensors75.6 MB293646f3dca1900ac4038a1afcdee769ce64687c1636b7b311774b0663539523
heads/config.json1.30 KBd70c8dac5c477c17ceadec3e0b88cd28aaec8308bc2f3fb244117eb365a63a1d
parity.json2.43 KBc3339c3d89b6a61a0c05cec9414c6a25bf8b756ef163a1bb168d1fd8f942bc4b
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
eb39b6c777 pinned now2026-11-15 05:14 UTC23 files · 8.13 GB

Use it

$ fw get mlx-community/CLM-v0.1-8B-MLX-8bit
# manifest sha256 6351b9ccc85a… · 8.13 GB · 23 files
$ fw verify ./CLM-v0.1-8B-MLX-8bit mlx-community/CLM-v0.1-8B-MLX-8bit
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/mlx-community/CLM-v0.1-8B-MLX-8bit.json --dir ./CLM-v0.1-8B-MLX-8bit $ python3 fw.py verify ./CLM-v0.1-8B-MLX-8bit ./mlx-community__CLM-v0.1-8B-MLX-8bit.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download mlx-community/CLM-v0.1-8B-MLX-8bit --revision eb39b6c777c579720f7a1458f2614be4508a4e15 --local-dir ./CLM-v0.1-8B-MLX-8bit
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModel, AutoTokenizer tok = AutoTokenizer.from_pretrained("mlx-community/CLM-v0.1-8B-MLX-8bit", revision="eb39b6c777c579720f7a1458f2614be4508a4e15") model = AutoModel.from_pretrained("mlx-community/CLM-v0.1-8B-MLX-8bit", revision="eb39b6c777c579720f7a1458f2614be4508a4e15", device_map="auto")

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
LICENSE
Text sha256
cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: mlx-community <huggingface.co/mlx-community>Newsgroups: alt.freeweights.qwenSubject: CLM-v0.1-8B-MLX-8bitDate: 2026-11-15Commit: eb39b6cSigned: 2DC28CC7B26A283B ✓
Upstream
mlx-community/CLM-v0.1-8B-MLX-8bit
Pinned commit
eb39b6c777c579720f7a1458f2614be4508a4e15
Manifest
CLM-v0.1-8B-MLX-8bit.json · .minisig
Manifest sha256
6351b9ccc85a3e314df9fdd157869300516daae6a1689f206baf4ffb4f6674ec
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 05:14 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/mlx-community/CLM-v0.1-8B-MLX-8bit.json $ curl -O https://freeweights.allternit.com/manifests/mlx-community/CLM-v0.1-8B-MLX-8bit.json.minisig $ minisign -Vm CLM-v0.1-8B-MLX-8bit.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

Qwen/Qwen3-8B · this model is a quantization of it

No model in the catalog names this one as its parent.

Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download mlx-community/CLM-v0.1-8B-MLX-8bit
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. CLM-v0.1-8B-MLX-8bit.json. Provenance. Takedown history: none.
From: BAAI <huggingface.co/BAAI>Subject: Aquila-VL-2B-llava-qwen
From: Perciqa <huggingface.co/Perciqa>Subject: Aurora-Code-1
From: BAAI <huggingface.co/BAAI>Subject: bge-reasoner-embed-qwen3-8b-0923
From: amazon <huggingface.co/amazon>Subject: BMOJOF-primed-HQwen3-8B-Instruct
From: nbeerbower <huggingface.co/nbeerbower>Subject: Bubba-Qwen3.6-27B-LoRA
From: bartowski <huggingface.co/bartowski>Subject: bytkim_Qwen3.8-27B-pi-GGUF