/ Модель

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

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

saina-helm-0.8b

Классификация текстаТекст → label

Saina Helm 0.8B — дообученная модель для классификации состояний и выбора ответов по вероятностям, предназначенная для маршрутизации запросов, триажа и выбора инструментов.

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

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Saina Helm 0.8B — компактная модель принятия решений, разработанная командой Saina и дообученная на Qwen/Qwen3.5-0.8B. Она принимает текстовое или JSON-состояние и типизированные вопросы с вариантами ответов, затем возвращает вероятности по вариантам вместо генерации текста. Поддерживаются ответы «да/нет», одиночный и множественный выбор, а также оценка по шкале; для каждого вопроса выполняется отдельный проход модели.

Модель рассчитана на маршрутизацию намерений, первичную сортировку запросов, выбор инструмента и чек-листы проверки. В одном вопросе можно передать до 255 вариантов, контекст — до 8192 токенов. Веса содержат обученную вероятностную голову и опубликованы в формате safetensors; также доступны варианты GGUF, MLX и Ollama.

Вероятности не калиброваны, а результат зависит от формулировок вопроса и вариантов, поэтому пороги следует настраивать на собственных данных. Для важных решений требуется оценка на целевой задаче. Лицензия — Apache-2.0.

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

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

Ограничения

Вероятности не калиброваны, а результаты чувствительны к формулировкам вопроса и вариантов. Для надёжного применения нужно настраивать пороги и оценивать модель на собственных данных, особенно для consequential decisions.

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

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

Открыть на Hugging Face

Saina Helm 0.8B

A small decision model. Give it some state and typed questions (yes/no, single choice, multiple choice or rating) and it returns probabilities for each answer. No text is generated.

Options are supplied at request time, so the same model handles intent routing, triage, tool selection, review checklists and similar decisions without retraining. Up to 255 options per question, 8,192-token context.

Fine-tuned from Qwen/Qwen3.5-0.8B with a trained probability head (head.safetensors). The repo holds full merged weights.

Try it in the browser: Saina Helm decision demo (no install).

Also available: GGUF for CPU, MLX for Apple silicon and Ollama (≥0.40, MLX on Apple silicon, GGUF elsewhere).

Usage

pip install "transformers>=5" torch safetensors huggingface_hub
from huggingface_hub import hf_hub_download
import importlib.util

path = hf_hub_download('run-saina/saina-helm-0.8b', 'helm.py')
spec = importlib.util.spec_from_file_location('helm', path)
helm = importlib.util.module_from_spec(spec); spec.loader.exec_module(helm)

model = helm.Helm('run-saina/saina-helm-0.8b')

helm.py builds the exact prompt the model was trained on; scores depend on that format, so use it rather than a custom prompt. The model reads the last-token hidden state, not generated text — generate() is not the intended interface.

Question types

ask() takes a piece of state (text or JSON) and any number of typed questions, each answered with its own forward pass:

TypeYou provideYou get
yes_noquestion, optional descriptions: {yes, no}yes, no, confidence
single_choicequestion, options: {key: description or None} (2–255)probabilities, selection, confidence
multi_choicequestion, options (2–255)independent memberships per option
ratingquestion, ordered levels (2–10)probabilities per level, expected_level, confidence
answers = model.ask(
    state='Order #4417: parcel arrived crushed, customer wants their money back. Third complaint this month.',
    questions={
        'refund': {'type': 'yes_no', 'question': 'Is a refund requested?'},
        'team': {'type': 'single_choice', 'question': 'Which team should handle this?',
                 'options': {'billing': 'Payments and refunds', 'shipping': 'Delivery and carriers', 'tech': None}},
        'issues': {'type': 'multi_choice', 'question': 'Which issues apply?',
                   'options': {'damaged': 'Item damaged', 'late': 'Late delivery', 'repeat': 'Repeat complainer'}},
        'urgency': {'type': 'rating', 'question': 'How urgent is this?',
                    'levels': ['Low', 'Medium', 'High', 'Critical']},
    },
)
answers['urgency']['expected_level']  # e.g. 1.9 -> between Medium and High

Decision mode. Pass mode='decision' with a threshold (default 0.8) and, for yes_no / single_choice, an optional min_margin; both can be overridden per question. The answer then includes selected / selection / selections / level, set to None with a reason (below_threshold, below_margin, tie) when the model is not confident enough, so you can abstain and escalate instead of guessing.

Rating confidence accounts for distance between levels: probability spread across neighbouring levels costs less than spread across distant ones.

For raw scores, model.predict(context, question, choices, mode='single_label' | 'multi_label') returns one probability per choice.

Versions

VersionDateChanges
v1.02026-10-07First public release.

Each release is a git tag on this repo, and main is the newest. Retrains that only change the weights bump the minor version (v1.1). Changes that need callers to change something (labels, prompt format, architecture) bump the major (v2.0). Scores can shift between versions, so pin a tag if you've tuned thresholds.

path = hf_hub_download('run-saina/saina-helm-0.8b', 'helm.py', revision='v1.0')
model = helm.Helm('run-saina/saina-helm-0.8b', revision='v1.0')

Limitations

  • Probabilities are not calibrated; set thresholds on your own data.
  • Results are sensitive to how options and questions are phrased.
  • Evaluate on your task before relying on it for consequential decisions.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей