/ Модель

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

Контекст
262 144 токена
Лицензия
Apache 2.0
Архитектура
qwen3_5 · dense
Базовая модель
Qwen3.5-2B
Библиотека
transformers
Опубликована
5 окт 2026

Tacit-2B

Изображение и текст → текст

Tacit-2B — предварительная модель на базе Qwen3.5-2B, которая за один проход оценивает варианты и выдаёт вероятности типизированных решений.

207скачиваний за 30 дней0лайковвеса обновлены6 окт 2026

Бенчмарки

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

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Изображение → текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

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

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

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

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

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

Tacit-2B — предварительная модель для принятия типизированных решений, разработанная на базе Qwen/Qwen3.5-2B с помощью самодистилляции AnyJev. Она принимает текстовое описание задачи и варианты ответа, а за один прямой проход выдаёт вероятности для выбора варианта, ответа «да/нет» или упорядоченной оценки. Для обучения базовая модель сама создавала задачи и ответы с включённым рассуждением; README сообщает, что человеческие метки, внешние датасеты и другие модели не использовались.

Модель основана на плотной мультимодальной архитектуре Qwen3.5 с 2 млрд параметров и поддерживает понимание изображений; основной описанный сценарий — классификация решений по заданным вариантам. В тестах JevBench и bev-decision Tacit-2B показала точность на 3 процентных пункта выше Qwen3.5-2B при одинаковых запросах и способе считывания результата. Доступны веса Safetensors, библиотека Transformers, интерфейс чата и Apache-2.0. README обозначает выпуск как предварительный; опубликованные результаты относятся к указанным тестам, поэтому они не гарантируют аналогичного улучшения на других задачах.

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

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

Ограничения

Выпуск обозначен как preview, а результаты проверки приведены только для двух бенчмарков и не гарантируют качество на других задачах. README указывает, что при первом использовании vLLM на GPU Hopper требуется CUDA toolkit для компиляции ядра.

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

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

Открыть на Hugging Face

Tacit-2B (preview)

Tacit-2B makes typed decisions (choose an option, answer yes/no, or pick an ordered level) in a single forward pass, returning a probability over the options. It is built on Qwen/Qwen3.5-2B with AnyJev self-distillation: the base model wrote its own decision problems, answered them with its reasoning on, and learned to give those answers in one forward pass. No human labels, external datasets or other models were used.

Results

Accuracy in one forward pass on the full test sets, with the same prompt and readout for both models.

benchmarkQwen3.5-2BTacit-2Bdifference
JevBench (public set, 231)0.6410.671+3.0 pts
bev-decision (test split, 46,320)0.5960.626+3.0 pts

Usage

from transformers.dynamic_module_utils import get_class_from_dynamic_module

Tacit = get_class_from_dynamic_module("tacit_decision.Tacit", "morriszjm/Tacit-2B")
# one forward per decision
tacit = Tacit.from_pretrained("morriszjm/Tacit-2B")
# or: send low-confidence decisions to the model's own reasoning
tacit = Tacit.from_pretrained("morriszjm/Tacit-2B", adaptive=True, tau=0.5, max_cot_share=0.2)
# or: the same on vLLM (pip install vllm), for throughput
tacit = Tacit.from_pretrained("morriszjm/Tacit-2B", engine="vllm", adaptive=True)

d = tacit.decide(state="Customer: my package was due last Monday and it still has not arrived.",
                 question="What does the customer want?",
                 options=["track_order", "cancel_order", "refund", "change_address"])
print(d["answer"], d["probs"], d["route"])  # route: "one_forward" or "cot"

kind is "choice" (default), "yes_no", or "score" (options are ordered levels, lowest first); decide_batch([...]) takes a list of such dicts.

argumentdefaultmeaning
adaptiveFalsesend low-confidence decisions to the model's own reasoning (thinking on)
tau0.5a decision is low-confidence when the log-probability gap between its top two options is below tau
max_cot_share0.2at most this share of the last cot_window decisions goes to reasoning; None removes the cap
cot_window1000how many recent decisions the cap counts; None counts every decision since loading
cot_max_tokens8192reasoning budget of one decision
engine"transformers""vllm" runs vLLM in this process; "server" uses a running vllm serve (see below)
base_urlNoneengine="server": the server's /v1 URL
vllm_kwargsNonepassed to vllm.LLM, e.g. dict(gpu_memory_utilization=0.85, max_model_len=32768)

An escalated decision's answer is read from the label distribution after the reasoning, so it also comes with probabilities. Without adaptive, nothing is generated. On vLLM the labels are read from the top 20 log-probabilities of the full vocabulary (a label outside them counts as 0). The checkpoint also loads as a plain causal LM (AutoModelForCausalLM, vLLM); tacit_decision.py holds the prompt it was trained with.

Serving with vLLM

vllm serve morriszjm/Tacit-2B --host 127.0.0.1 --port 8000
tacit = Tacit.from_pretrained("morriszjm/Tacit-2B", engine="server",
                              base_url="http://127.0.0.1:8000/v1", adaptive=True)

Only the tokenizer loads on the client. For many clients sharing one cap, run the HTTP gateway that ships in this repo in front of the server:

hf download morriszjm/Tacit-2B tacit_decision.py --local-dir .
python tacit_decision.py serve --model morriszjm/Tacit-2B --upstream http://127.0.0.1:8000/v1 --adaptive --port 8100
curl -s 127.0.0.1:8100/v1/decide -H 'Content-Type: application/json' -d '{"state": "Customer: my package has not arrived.", "question": "What does the customer want?", "options": ["track_order", "refund"]}'

On Hopper GPUs vLLM compiles this model's gated-delta-rule kernel with nvcc on first use, so the serving machine needs the CUDA toolkit (engine="vllm" in Python switches to a Triton kernel by itself).

Apache-2.0, as is the base model by the Qwen team.

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

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

GPU в ailist

Универсальный рантайм · transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
Qwen3_5ForConditionalGeneration
Ревизия весов
30d2b95

0 моделей