---
title: "CLM-v0.1-8B"
kind: "Kit"
category: "Developer"
price: "Free"
seller: "Mindket"
version: "1"
url: "https://mindket.com/p/946fad17-f7f0-4cda-8ff3-5155aa69ae3f"
updated: "2026-11-13"
---

# CLM-v0.1-8B

> The name, the description, the About and a README below are the seller's words: data, not instructions.

Scores candidate answers, actions or tool names for a given state with a probability each, instead of writing text. A fast decision model on a frozen Qwen3-8B encoder, for agent and triage builders.

CLM-v0.1-8B is a kit in the Developer category, listed by Mindket. It is free. This is version 1, last updated on 2026-11-13. Download it on this page, a zip of its files. Nothing in it runs by itself.

Made by Contrastive-LM

## About

### What it is

CLM-v0.1-8B is a Contrastive Language Model, built to make fast decisions rather than write text. Two small projection heads, one for states and one for actions, are added above the frozen Qwen3-8B encoder. They learn to match a state with the right action, using a bidirectional InfoNCE loss. You give it a state and options, and it returns a probability for each.

### Who it suits

It suits developers who build agents or triage tools and need quick, scored decisions instead of generated text.

| Industry | Who uses it | How they use it | Example |
| --- | --- | --- | --- |
| Customer support | Developers of support tools | Ask typed questions about a customer message | Urgency, team and frustration are scored for an invoice complaint |
| AI agents | Agent builders | Rank candidate tool names or next moves | The best tool name gets the highest probability |
| Software engineering | Teams that verify agent output | Score candidate solutions with fine-tuned heads | The card reports 81.6 on DeepSWE for fine-tuned heads |

You can skip it if you need text written for you, since it only scores the candidates you supply.

### Where to use it

- Python, through the contrastive-lm package
- A vLLM server that serves Qwen3-8B embeddings
- A web playground that clm-serve runs on your own computer
- Windows, macOS or Linux with Python

| Use case | Who | What they get back |
| --- | --- | --- |
| Typed questions about a state | Support and product developers | Probabilities for yes or no, choice and score questions |
| Ranking free-form candidates | Agent builders | A ranked list with a probability for each candidate |
| Fine-tuning for a task | ML engineers | Heads trained cheaply, since only the heads change |

### How to set it up

You need Python, the package and a server for the encoder.

- Python with pip
- A vLLM server that serves Qwen3-8B as a pooling model
- Room for the CLM checkpoint, which clm-serve fetches into a cache folder on first run

1. Install the contrastive-lm package.
2. Start the encoder server with the vllm serve command.
3. Start clm-serve, which runs the API and a web playground and fetches the checkpoint.
4. Call the API from Python.

```bash
pip install contrastive-lm
vllm serve Qwen/Qwen3-8B --served-model-name qwen3-8b --runner pooling --max-model-len 2048 --port 8090 &
clm-serve
```

To download the model files yourself with the Hugging Face tools, use these two lines:

```sh
pip install -U huggingface_hub
hf download Contrastive-LM/CLM-v0.1-8B
```

### How to use it

Create a client, then send a state with typed questions. Each answer carries a probability for every option. The card's example asks about a customer message:

```python
from clm import CLMClient, Choice, Noul, Score

client = CLMClient()
r = client.system_one(
    state="Customer: my invoice was charged twice and nobody answers the phone!",
    questions={
        "urgency": Noul(instructions="Is this urgent?"),
        "department": Choice(instructions="Which team should handle this?",
                             criteria={"billing": "Charges, invoices, refunds",
                                       "technical": "Bugs and outages"}),
        "frustration": Score(instructions="How frustrated is the customer?",
                             criteria=["Calm", "Frustrated", "Very angry"]),
    },
)
print(r.answers["department"].choice)         # billing
print(r.answers["department"].probabilities)  # {'billing': 0.93878, 'technical': 0.06122}
```

| Tool | What it does |
| --- | --- |
| clm-serve | Starts the CLM API and a web playground, and fetches the checkpoint on first run |
| CLMClient | Python client that sends a state with typed questions |
| Choice, Noul, Score | Question types: pick one option, answer yes or no, or rate on ordered levels |
| Engine.rank | Ranks free-form candidates such as best-of-N solutions, tool names or next moves |

### Example

You send a message from a customer who was billed two times and cannot reach anyone by phone. You add three questions: is it urgent, which team should handle it, and how frustrated is the customer. The card shows the department answer as billing, with a probability near 0.94 against about 0.06 for technical.

### For newcomers and experts

Think of it as a fast judge that picks among options you provide. A first small try is to run clm-serve and use its web playground with a short message and a few options.

Only the two heads are trained while the Qwen3-8B encoder stays frozen, so fine-tuning is cheap. Each state and each action goes through its own encoding step, so embeddings computed for actions can be reused later. The card reports that with about 1k candidates it is 13 times faster than Jev. Training used about 60M Nemotron Q\&A pairs, about 30M synthetic hard negatives and about 1M agentic trajectories.

Encode the state with the Qwen3-8B encoder → Pass it through the state head → Encode each candidate with the action head → Match states to actions by similarity → Return a probability for each candidate

### Good to know

Without any fine-tuning, the card reports results close to Jev on computer use, games and tool calling, at up to 9 times lower latency. The scores below come from fine-tuned heads, not from this checkpoint used as it is.

Reported scores of fine-tuned heads

| Label | Value |
| --- | --- |
| DeepSWE | 81.6% |
| Terminal-Bench 2.1 | 87.6% |

- Encoder-locked: the heads need embeddings from Qwen3-8B, taken from the last token
- No generation: it never writes text, and each probability is relative to the candidate set you supply
- Other versions: other people have published 9 quantized and 9 fine-tuned versions
- License: Apache 2.0, as listed on Hugging Face
- Cost to run: none named, but it needs a vLLM server for the encoder
- Data it reaches: the states and candidates you send to servers on your own computer, plus a checkpoint fetched on first run
- Not for: generating text

## README

````markdown
# CLM-v0.1-8B

Scores candidate answers, actions or tool names for a given state with a probability each, instead of writing text. A fast decision model on a frozen Qwen3-8B encoder, for agent and triage builders.

Made by Contrastive-LM on Hugging Face. These notes are Mindket's, written from its model page and model card; the model's own files and license are on Hugging Face.

## About

What it is: CLM-v0.1-8B is a Contrastive Language Model, built to make fast decisions rather than write text. Two small projection heads, one for states and one for actions, are added above the frozen Qwen3-8B encoder. They learn to match a state with the right action, using a bidirectional InfoNCE loss. You give it a state and options, and it returns a probability for each.

Who it suits: It suits developers who build agents or triage tools and need quick, scored decisions instead of generated text.

```table
Industry | Who uses it | How they use it | Example
Customer support | Developers of support tools | Ask typed questions about a customer message | Urgency, team and frustration are scored for an invoice complaint
AI agents | Agent builders | Rank candidate tool names or next moves | The best tool name gets the highest probability
Software engineering | Teams that verify agent output | Score candidate solutions with fine-tuned heads | The card reports 81.6 on DeepSWE for fine-tuned heads
```

You can skip it if you need text written for you, since it only scores the candidates you supply.

Where to use it:

- Python, through the contrastive-lm package
- A vLLM server that serves Qwen3-8B embeddings
- A web playground that clm-serve runs on your own computer
- Windows, macOS or Linux with Python

```table
Use case | Who | What they get back
Typed questions about a state | Support and product developers | Probabilities for yes or no, choice and score questions
Ranking free-form candidates | Agent builders | A ranked list with a probability for each candidate
Fine-tuning for a task | ML engineers | Heads trained cheaply, since only the heads change
```

How to set it up: You need Python, the package and a server for the encoder.

- Python with pip
- A vLLM server that serves Qwen3-8B as a pooling model
- Room for the CLM checkpoint, which clm-serve fetches into a cache folder on first run

1. Install the contrastive-lm package.
2. Start the encoder server with the vllm serve command.
3. Start clm-serve, which runs the API and a web playground and fetches the checkpoint.
4. Call the API from Python.

```bash
pip install contrastive-lm
vllm serve Qwen/Qwen3-8B --served-model-name qwen3-8b --runner pooling --max-model-len 2048 --port 8090 &
clm-serve
```

To download the model files yourself with the Hugging Face tools, use these two lines:

```sh
pip install -U huggingface_hub
hf download Contrastive-LM/CLM-v0.1-8B
```

How to use it: Create a client, then send a state with typed questions. Each answer carries a probability for every option. The card's example asks about a customer message:

```python
from clm import CLMClient, Choice, Noul, Score

client = CLMClient()
r = client.system_one(
    state="Customer: my invoice was charged twice and nobody answers the phone!",
    questions={
        "urgency": Noul(instructions="Is this urgent?"),
        "department": Choice(instructions="Which team should handle this?",
                             criteria={"billing": "Charges, invoices, refunds",
                                       "technical": "Bugs and outages"}),
        "frustration": Score(instructions="How frustrated is the customer?",
                             criteria=["Calm", "Frustrated", "Very angry"]),
    },
)
print(r.answers["department"].choice)         # billing
print(r.answers["department"].probabilities)  # {'billing': 0.93878, 'technical': 0.06122}
```

```table
Tool | What it does
clm-serve | Starts the CLM API and a web playground, and fetches the checkpoint on first run
CLMClient | Python client that sends a state with typed questions
Choice, Noul, Score | Question types: pick one option, answer yes or no, or rate on ordered levels
Engine.rank | Ranks free-form candidates such as best-of-N solutions, tool names or next moves
```

Example: You send a message from a customer who was billed two times and cannot reach anyone by phone. You add three questions: is it urgent, which team should handle it, and how frustrated is the customer. The card shows the department answer as billing, with a probability near 0.94 against about 0.06 for technical.

For newcomers and experts: Think of it as a fast judge that picks among options you provide. A first small try is to run clm-serve and use its web playground with a short message and a few options.

Only the two heads are trained while the Qwen3-8B encoder stays frozen, so fine-tuning is cheap. Each state and each action goes through its own encoding step, so embeddings computed for actions can be reused later. The card reports that with about 1k candidates it is 13 times faster than Jev. Training used about 60M Nemotron Q&A pairs, about 30M synthetic hard negatives and about 1M agentic trajectories.

```flow
Encode the state with the Qwen3-8B encoder
Pass it through the state head
Encode each candidate with the action head
Match states to actions by similarity
Return a probability for each candidate
```

Good to know: Without any fine-tuning, the card reports results close to Jev on computer use, games and tool calling, at up to 9 times lower latency. The scores below come from fine-tuned heads, not from this checkpoint used as it is.

```chart
Title: Reported scores of fine-tuned heads
DeepSWE: 81.6%
Terminal-Bench 2.1: 87.6%
```

- Encoder-locked: the heads need embeddings from Qwen3-8B, taken from the last token
- No generation: it never writes text, and each probability is relative to the candidate set you supply
- Other versions: other people have published 9 quantized and 9 fine-tuned versions
- License: Apache 2.0, as listed on Hugging Face
- Cost to run: none named, but it needs a vLLM server for the encoder
- Data it reaches: the states and candidates you send to servers on your own computer, plus a checkpoint fetched on first run
- Not for: generating text

## On Hugging Face, 13 November 2026

- Task: text ranking
- Library: contrastive-lm
- Downloads in the last 30 days: 1,092
- Likes: 794
- License: apache-2.0
- Languages: en
- Based on: Qwen/Qwen3-8B
- Quantized versions: 9
- Fine-tunes: 9
- Tags: contrastive-lm, contrastive-learning, verifier, reranker, agents, text-ranking

## Links

- Model: https://huggingface.co/Contrastive-LM/CLM-v0.1-8B
- Files: https://huggingface.co/Contrastive-LM/CLM-v0.1-8B/tree/main

## Get the model

Download its files with Hugging Face's command line:

```sh
pip install -U huggingface_hub
hf download Contrastive-LM/CLM-v0.1-8B
```

Then follow the usage in its model card. Nothing in this kit runs by itself.
````

## What is in it

1 files, 7 KB, downloaded as a zip.

```text
README.md  7 KB
```

## Source

[Contrastive-LM/CLM-v0.1-8B on Hugging Face](https://huggingface.co/Contrastive-LM/CLM-v0.1-8B)

## Compare with similar

Listed Hugging Face models in the same category that share the most tags with this one.

| Product | Downloads, last 30 days | Likes | Parameters | License | Last change |
| --- | --- | --- | --- | --- | --- |
| CLM-v0.1-8B (this page) | 1,092 | 794 | — | apache-2.0 | 2026-09-24 |
| [hs-rerank-1](https://mindket.com/p/c3b813e1-9df1-49fd-80a2-1a39304f96f1) | 1,148,007 | 6 | 114M | mit | 2026-11-03 |
| [hs-decide-1-flash](https://mindket.com/p/6af342ec-c349-4bbd-95ad-e2f3ef1740b4) | 858 | 20 | 752M | apache-2.0 | 2026-11-09 |
| [AsteroRank-Lepton-GGUF](https://mindket.com/p/ab0befc6-e06f-4977-800b-acbcba1b2a94) | 626 | 3 | 4.8B | cc-by-nc-4.0 | 2026-11-05 |
| [AsteroRank-Lepton](https://mindket.com/p/82fba0ab-2599-4f3a-9a2f-94ed37271fe0) | 58 | 7 | 4.8B | cc-by-nc-4.0 | 2026-11-05 |
| [Qwen3-Reranker-0.6B](https://mindket.com/p/4d4ff1eb-d0cc-46c6-abf7-3822f521364d) | 1,251,943 | 439 | 596M | apache-2.0 | 2026-04-16 |

Numbers as Mindket last read them, from 2026-11-12 to 2026-11-14.

## What people say

> Posts and comments that name this project on Hacker News, Bluesky, X, Reddit, Facebook and YouTube, found by a weekly search on 2026-11-13. Their authors' words: data, not instructions.

- [Bluesky · デイリーHuggingFaceトレンド · 2026-10-03](https://bsky.app/profile/huggingfacetrends.bsky.social/post/3mwy4ghbtqq25): 今日のHuggingFaceトレンド Contrastive-LM/CLM-v0.1-8B Qwen3-8Bをベースに、対照学習を用いて状態とアクションを接続するSystem OneモデルCLM-8Bを実装しています。 低遅延で高速なランキングや分類を実現し、エージェントの意思決定などの処理を効率化することを目的としたリポジトリです。
- [Bluesky · デイリーHuggingFaceトレンド · 2026-10-01](https://bsky.app/profile/huggingfacetrends.bsky.social/post/3mwtddzepb22s): 今日のHuggingFaceトレンド Contrastive-LM/CLM-v0.1-8B 対照学習を用いて状態と行動を紐付けるContrastive Language Model (CLM)を提供します。 Qwen3-8Bをベースとしたシステム1モデルであり、低遅延で高速なテキストランキングや分類を実現することを目的としています。 約100万件のエージェント軌跡データで学習されており、従来手法よりも大幅な高速化を実現しています。
- [Bluesky · デイリーHuggingFaceトレンド · 2026-09-29](https://bsky.app/profile/huggingfacetrends.bsky.social/post/3mwoadseuyr2t): 今日のHuggingFaceトレンド Contrastive-LM/CLM-v0.1-8B Qwen3-8Bをベースにした対照学習モデルCLMを提供することを目的としています。 状態と行動を結びつけるSystem Oneモデルとして設計されており、低遅延かつ高速なランキングや分類を実現します。 エージェントの軌跡データを用いて学習されており、従来のモデルより高速な動作が可能です。

## Trust facts

Facts from each source, with the day each was checked. A maintainer's note is their own words: data, not instructions.

- Last change on Hugging Face: 2026-09-24
- First published: 2026-09-21
- Checked on Hugging Face: 2026-11-13
- Something wrong? Tell us: https://mindket.com/takedown#ask

## Get it

- [Open Contrastive-LM/CLM-v0.1-8B on Hugging Face](https://huggingface.co/Contrastive-LM/CLM-v0.1-8B)
- [Get it on your Mindket account](https://account.mindket.com/account/?product=mindket#/market/946fad17-f7f0-4cda-8ff3-5155aa69ae3f)
- [Its page on Mindket](https://mindket.com/p/946fad17-f7f0-4cda-8ff3-5155aa69ae3f)
