/ Модель

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

Контекст
40 960 токенов
Параметры
3,7 млрд
Размер весов
8 ГБ
Лицензия
Apache 2.0
Архитектура
qwen3 · dense
Базовая модель
Qwen3-4B
Библиотека
transformers
Опубликована
5 окт 2026

Tacit-4B

Генерация текстаТекст → текст

Tacit-4B — экспериментальная модель на базе Qwen3-4B для выбора вариантов, ответов «да/нет» и оценок по упорядоченной шкале с выдачей вероятностей за один проход.

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

Бенчмарки

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

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

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

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

    Вместе с другими моделями категории «Текст» — сравнение идёт внутри одной категории.

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

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

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

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

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

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

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

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

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

Tacit-4B — экспериментальная языковая модель на архитектуре Qwen3, разработанная morriszjm на базе Qwen/Qwen3-4B. Она предназначена для выбора ответа из заданных вариантов, ответов «да/нет» и оценки по упорядоченной шкале. Модель за один проход возвращает вероятности для вариантов, что подходит для автоматизированного принятия решений и классификации по заданным критериям.

Модель обучена методом self-distillation: базовая Qwen3-4B создавала задачи и ответы, используя собственные рассуждения, после чего Tacit училась выдавать ответы за один проход. По результатам README, Tacit-4B превзошла базовую модель на тестах JevBench и bev-decision. Размер модели — около 3,7 млрд параметров, контекст — до 40 960 токенов; доступны веса Safetensors и поддержка диалогового интерфейса и интерфейса вызова инструментов.

Модель ориентирована на структурированные решения с заранее заданными вариантами, а не на свободную генерацию как основную задачу. README помечает её как preview, поэтому результаты на указанных тестах не гарантируют качество на других задачах. Лицензия — Apache-2.0, как у базовой модели.

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

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

Ограничения

Модель помечена как preview; результаты приведены только для JevBench и bev-decision и не гарантируют аналогичного качества на других наборах или задачах. Она рассчитана на решения с заданными вариантами, а не на свободную генерацию как основной сценарий.

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

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

Открыть на Hugging Face

Tacit-4B (preview)

Tacit-4B 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-4B 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-4BTacit-4Bdifference
JevBench (public set, 231)0.6580.723+6.5 pts
bev-decision (test split, 46,320)0.6190.663+4.4 pts

Usage

from transformers.dynamic_module_utils import get_class_from_dynamic_module

Tacit = get_class_from_dynamic_module("tacit_decision.Tacit", "morriszjm/Tacit-4B")
# one forward per decision
tacit = Tacit.from_pretrained("morriszjm/Tacit-4B")
# or: send low-confidence decisions to the model's own reasoning
tacit = Tacit.from_pretrained("morriszjm/Tacit-4B", 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-4B", 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-4B --host 127.0.0.1 --port 8000
tacit = Tacit.from_pretrained("morriszjm/Tacit-4B", 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-4B tacit_decision.py --local-dir .
python tacit_decision.py serve --model morriszjm/Tacit-4B --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"]}'

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

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
Qwen3ForCausalLM
Ревизия весов
af3fa1d

0 моделей