/ Модель

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

Контекст
40 960 токенов
Параметры
508 млн
Лицензия
Apache 2.0
Архитектура
qwen3 · dense
Базовая модель
Qwen3-Reranker-0.6B
Библиотека
transformers
Опубликована
11 авг 2026

skillcorpus-reranker-0.6b

Генерация текстаТекст → текст3 профессии

Дообученный реранкер Qwen3 оценивает, насколько описания навыков агентов подходят пользовательской задаче.

63скачиваний за 30 дней1лайквеса обновлены12 авг 2026

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

EverMind-AI разработала skillcorpus-reranker-0.6b — компактный cross-encoder на базе Qwen3, дообученный для поиска навыков агентов. Модель получает задачу и документ с описанием навыка и оценивает, насколько этот навык подходит задаче; оценка релевантности вычисляется по логитам ответов «да» и «нет». Она предназначена для второго этапа ранжирования кандидатов, найденных моделью skillcorpus-embedding-0.6b.

Модель содержит около 507,6 млн параметров, использует архитектуру Qwen3ForCausalLM и формат Safetensors; контекст — до 40 960 токенов. Для каждого сочетания задачи и навыка требуется отдельный проход модели, поэтому её применяют к короткому списку кандидатов, обычно из 20–50 документов, а не ко всему каталогу. Оценки следует сравнивать внутри списка для одной задачи: они не являются калиброванными вероятностями. Лицензия — Apache-2.0.

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

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

Ограничения

Предназначена для оценки короткого списка кандидатов, обычно 20–50 документов, поскольку для каждой пары задачи и навыка нужен отдельный проход. Оценки не являются калиброванными вероятностями и корректно сравниваются внутри списка кандидатов для одной задачи.

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

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

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

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

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

Открыть на Hugging Face

skillcorpus-reranker-0.6b

A cross-encoder for agent-skill retrieval: given a task and a candidate skill document, judge whether the skill helps. Fine-tuned from Qwen/Qwen3-Reranker-0.6B.

Reranks the candidates recalled by skillcorpus-embedding-0.6b. Because scoring is one forward pass per (task, skill) pair, run it on a shortlist — typically the encoder's top 20–50 — not the whole corpus. The skill documents it was built to score have the schema of skillcorpus-demo-1k.

PropertyValue
Parameters596M
Layers28
Precisionbfloat16
OutputP("yes") in [0, 1]

Requires transformers>=4.56 (the dtype= argument was named torch_dtype= before that).

Usage

The model answers a yes/no question; the relevance score is the softmax over the yes and no logits at the final position.

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

MODEL = "EverMind-AI/skillcorpus-reranker-0.6b"
tok = AutoTokenizer.from_pretrained(MODEL, padding_side="left")
model = AutoModelForCausalLM.from_pretrained(MODEL, dtype=torch.bfloat16).cuda().eval()

PREFIX = ('<|im_start|>system\nJudge whether the Document meets the requirements '
          'based on the Query and the Instruct provided. Note that the answer can '
          'only be "yes" or "no".<|im_end|>\n<|im_start|>user\n')
SUFFIX = '<|im_end|>\n<|im_start|>assistant\n<think>\n\n</think>\n\n'

YES, NO = tok.convert_tokens_to_ids("yes"), tok.convert_tokens_to_ids("no")


def score(pairs, max_length=4096):
    prompts = [PREFIX + p + SUFFIX for p in pairs]
    enc = tok(prompts, padding=True, truncation=True,
              max_length=max_length, return_tensors="pt").to(model.device)
    with torch.no_grad():
        logits = model(**enc).logits[:, -1, :]
    pair = torch.stack([logits[:, NO], logits[:, YES]], dim=-1)
    return torch.softmax(pair, dim=-1)[:, 1].float().tolist()


INSTRUCT = ("Given a task description, judge whether the skill document "
            "is relevant and useful for completing the task")


def pair(task, name, description, body):
    return (f"<Instruct>: {INSTRUCT}\n\n"
            f"<Query>: {task}\n\n"
            f"<Document>: {name} | {description} | {body}")


task = "resolve conflicts after a git merge"
print(score([
    pair(task, "resolve-conflicts", "Resolve git merge conflicts.", "..."),
    pair(task, "sourdough", "Bake sourdough bread.", "..."),
]))
# -> [0.97, 0.01]

Exact scores shift in the last decimal with dtype and hardware; the ordering is what matters.

Two things to keep intact: the PREFIX / SUFFIX template, since the score is read off the final-position logits, and the <Instruct> / <Query> / <Document> layout with blank lines between the parts. Truncate the document body, not the template.

Via the chat template

chat_template.jinja reproduces exactly the string built above, so you can let the tokenizer assemble it instead. It reads three roles — system carries the instruction (omit it to get the default shown above), query the task, and document the skill:

prompt = tok.apply_chat_template([
    {"role": "system",   "content": INSTRUCT},
    {"role": "query",    "content": task},
    {"role": "document", "content": "resolve-conflicts | Resolve git merge conflicts. | ..."},
], tokenize=False)

Truncation used in training

Beyond the token-level max_length, each field was cut to a fixed number of characters before the prompt was assembled. Matching this keeps inference inputs on the same distribution as training:

fieldlimit
skill description500 chars
skill body2,000 chars

Intended use

Second-stage reranking over a shortlist recalled by skillcorpus-embedding-0.6b — typically its top 20–50. Scoring is one forward pass per (task, skill) pair, so it does not scale to a whole registry. Treat the output as a ranking signal rather than a calibrated probability: compare scores within one candidate list, not across different tasks.

Citation

@article{wang2026skillcorpus,
  title         = {SkillCorpus: Consolidating and Evaluating the Open Skill Ecosystem for Real-World LLM Agents},
  author        = {Wang, Yanze and Yao, Pengfei and Sun, Tianyi and Hu, Chuanrui and Xiao, Yan and Luo, Xiaotian and Han, Yunyun and Chen, Yifan and Sun, Jun and Deng, Yafeng},
  year          = {2026},
  eprint        = {2607.15557},
  archivePrefix = {arXiv},
  url           = {https://arxiv.org/abs/2607.15557}
}

License

Apache-2.0, inherited from the base model. Skills in the corpus keep their own upstream licenses.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей