/ Модель

Характеристики

Лицензия
Apache 2.0
Архитектура
clm · dense
Базовая модель
Qwen3-8B
Библиотека
contrastive-lm
Опубликована
21 сен 2026

CLM-v0.1-8B

Ранжирование текстаТекст → score3 профессии

CLM-v0.1-8B — контрастивная модель на базе Qwen3-8B для ранжирования кандидатов и оценки вариантов действий в агентных сценариях.

4 495скачиваний за 30 дней767лайковвеса обновлены24 сен 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

CLM-v0.1-8B — модель контрастивного ранжирования от проекта Contrastive Language Model. Она построена на замороженном текстовом энкодере Qwen3-8B и двух обучаемых проекционных головах для представления состояний и действий; обучение использует двунаправленную функцию потерь InfoNCE. Модель предназначена для оценки и сравнения заданных кандидатов, в том числе вариантов ответа, инструментов и следующих действий в агентных сценариях.

CLM применяют для ранжирования решений и проверки кандидатов в задачах использования компьютера, игр и вызова инструментов. В README также приведены результаты дообученных на отдельных задачах голов в бенчмарках DeepSWE и Terminal-Bench; эти показатели не относятся к исходному чекпойнту без дообучения. Раздельное кодирование состояний и действий позволяет повторно использовать представления действий и ускорять сравнение большого числа кандидатов.

Модель не генерирует текст и оценивает кандидатов только относительно переданного набора. Для работы голов нужен последний pooled-эмбеддинг энкодера Qwen3-8B. Репозиторий содержит веса в формате PyTorch; лицензия — Apache-2.0. Метаданные указывают английский язык карточки, но README не описывает более широкий список языков для ранжирования.

Сценарии применения

  • ранжирование вариантов решения задачи программирования
  • выбор подходящего инструмента для агента
  • оценка возможных следующих действий агента
  • сравнение кандидатов в сценариях использования компьютера
  • повторное ранжирование большого набора ответов или действий

Ограничения

Модель только оценивает предоставленные варианты и не генерирует ответы; её оценки относительны к набору кандидатов. Проекционные головы требуют эмбеддингов последнего токена от Qwen3-8B, а опубликованные результаты бенчмарков получены с отдельно дообученными головами.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Contrastive Language Model (CLM) is a new class of System One model trained with a contrastive learning objective that connects states and actions. CLM-8B consists of two small projection heads (a state head and an action head) on top of a frozen Qwen3-8B encoder trained with a bidirectional InfoNCE loss.

  • Training: pre-trained on ~60M Nemotron Q&A pairs, mid-trained on ~30M synthetic hard negatives, post-trained on ~1M agentic trajectories.
  • Zero-shot: on par with Jev on computer-use, gaming and tool-calling tasks, with up to 9× lower latency.
  • Fine-tuned as a verifier: SOTA on DeepSWE (81.6%) and Terminal-Bench 2.1 (87.6%), 4–6× faster than Jev.
  • State & Action Caching: states and actions are encoded separately, so action embeddings can be reused. With ~1k candidates, CLM is 13× faster than Jev.

Usage

With the contrastive-lm package

pip install contrastive-lm

# 1. encoder (Qwen3-8B embeddings)
vllm serve Qwen/Qwen3-8B --served-model-name qwen3-8b --runner pooling --max-model-len 2048 --port 8090 &

# 2. API + playground at http://localhost:8700/ (fetches CLM_v0.1-8B.pt into ~/.cache/clm/)
clm-serve

Ask typed questions about a state:

from clm import CLMClient, Choice, Noul, Score

client = CLMClient()  # http://127.0.0.1:8700 by default
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}

Or rank free-form candidates (best-of-N solutions, tool names, next moves):

from clm import Engine

engine = Engine(emb_url="http://127.0.0.1:8090/v1/embeddings")
engine.rank("What causes tides on Earth?",
            ["The Moon's gravitational pull.", "Photosynthesis in plants.", "Because the Earth is round."])
# [{'rank': 1, 'candidate': "The Moon's gravitational pull.", 'prob': 0.993}, ...]

Fine-tuning

Only the heads are trained, so fine-tuning is cheap. This checkpoint is the starting point for the DeepSWE and Terminal-Bench heads.

git clone https://github.com/Contrastive-LM/CLM.git && cd CLM && pip install -e .
hf download Contrastive-LM/deepswe-clm-heads-8k heldout_tasks.json --local-dir heads/deepswe
python train/finetune.py --task clm --init-ckpt "$(clm-download)" --out-dir runs/deepswe \
    --holdout-tasks heads/deepswe/heldout_tasks.json --batch 512

See the fine-tuning guide.

Playground

clm-serve also serves a web playground at http://localhost:8700/.

Limitations

  • Encoder-locked: the heads require Qwen3-8B last-token-pooled embeddings.
  • No generation: CLM only scores the candidates you give it, and its probabilities are relative to that set.
  • Verifier results need fine-tuning: the SOTA agentic-benchmark numbers come from fine-tuned heads, not this checkpoint zero-shot.
  • Generalization: CLM-8B is one rung of our scaling ladder. A multimodal CLM-35B, trained with more data, compute and parameters for stronger generalization, is coming in early October.

Citation

@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}
}

License

The CLM-8B weights are released under the Apache 2.0 License. The base encoder Qwen3-8B is also Apache 2.0.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · contrastive-lm

Нельзя запустить

Архитектура clm неизвестна transformers в образе рантайма.

Ревизия весов
e939398

0 моделей