/ Модель

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

Контекст
131 072 токена
Параметры
7,1 млрд
Размер весов
15,2 ГБ
Лицензия
Apache 2.0
Архитектура
qwen2 · dense
Опубликована
28 янв 2025

R1_tool_call_Distill-Qwen-7B

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

Дообученная на базе DeepSeek-R1-Distill-Qwen-7B модель для диалоговой генерации текста и двухэтапного вызова инструментов.

20скачиваний за 30 дней4лайкавеса обновлены5 фев 2025

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

hiieu/R1_tool_call_Distill-Qwen-7B — дообученная модель hiieu для генерации текста с интерфейсом вызова инструментов. Она основана на unsloth/DeepSeek-R1-Distill-Qwen-7B-unsloth-bnb-4bit и обучена на наборе hiieu/tool_r1_cot с использованием Unsloth и TRL. Для вызова инструмента модель использует двухэтапный процесс вывода.

Модель имеет плотную архитектуру Qwen2ForCausalLM с 7,1 млрд параметров и контекстом до 131 072 токенов. Карточка указывает английский язык и лицензию Apache-2.0. Она подходит для диалоговых сценариев, где нужно сформировать запрос к инструменту и затем обработать результат.

Среди ограничений автор отмечает, что модель иногда отказывается «не думать»; это может мешать сценариям, где требуется ответ без рассуждений. README не приводит оценок качества или списка поддерживаемых инструментов.

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

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

Ограничения

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

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

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

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

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

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

Открыть на Hugging Face

Function calling requires two step inferences, below is the example:

Step 1:

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
import json

model_id = "R1_tool_call_Distill-Qwen-1.5B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
tools = [
    {
        "name": "create_contact",
        "description": "Create a new contact",
        "parameters": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string",
                    "description": "The name of the contact"
                },
                "email": {
                    "type": "string",
                    "description": "The email address of the contact"
                }
            },
            "required": ["name", "email"]
        }
    }
]


messages = [
    { "role": "user", "content": f"""You have access to these tools, use them if necessary: {tools}
    I need to create a new contact for my friend John Doe. His email is johndoe@example.com."""
    }
]

input_ids = tokenizer.apply_chat_template(
    messages,
    add_generation_prompt=True,
    return_tensors="pt"
).to(model.device)


outputs = model.generate(
    input_ids,
    max_new_tokens=256,
    do_sample=True,
    temperature=0.6,
    top_p=0.9,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))
# >>
# >> <|tool▁calls▁begin|><|tool▁call▁begin|>function<|tool▁sep|>create_contact
# >> ```json
# >> {"name": "John Doe", "email": "johndoe@example.com"}
# >> ```<|tool▁call▁end|><|tool▁calls▁end|>

# Above is a response from assistant, you need to parse it and execute a tool on your own.

Step 2:

messages = [
    {"role": "user", "content": """You have access to these tools, use them if necessary: {tools}\n\nI need to create a new contact for my friend John Doe. His email is johndoe@example.com."""},
    {"role": "assistant", "content": None, "tool_calls": [
        {
            "type": "function",
            "function": {
                "name": "create_contact",
                "arguments": json.dumps({"name": "John Doe", "email": "johndoe@example.com"})
            }
        },
    ]},
    {"role": "tool", "name": "create_contact", "content": """{"status": "success", "message": "Contact for John Doe with email johndoe@example.com has been created successfully."}"""},
]

input_ids = tokenizer.apply_chat_template(
    messages,
    add_generation_prompt=True,
    return_tensors="pt"
).to(model.device)

outputs = model.generate(
    input_ids,
    max_new_tokens=256,
    do_sample=True,
    temperature=0.6,
    top_p=0.9,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))
# >>
# >> <think>Based on the user's request, I have created a contact for John Doe with his email address. The tool has successfully created the contact. I will now provide the contact information to the user.</think>

# >> The contact for John Doe has been successfully created with the email address johndoe@example.com. Please feel free to reach out to him if needed.

Limitations:

  • The model sometimes refused not to think

Uploaded model

  • Developed by: hiieu
  • License: apache-2.0
  • Finetuned from model : unsloth/DeepSeek-R1-Distill-Qwen-7B-unsloth-bnb-4bit

This qwen2 model was trained 2x faster with Unsloth and Huggingface's TRL library.

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
Qwen2ForCausalLM
Ревизия весов
1cbd790

0 моделей