/ Модель

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

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

R1_tool_call_Distill-Qwen-1.5B

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

Дообученная модель Qwen2 на 1,5 млрд параметров для генерации диалогового текста и двухшагового вызова инструментов.

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

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Модель построена на плотной архитектуре Qwen2 и содержит 1,5 млрд параметров. Она поддерживает контекст до 131 072 токенов. Для вызова функций README описывает двухшаговый процесс вывода. Лицензия — Apache 2.0.

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

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

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

Ограничения

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

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

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-1.5B-unsloth-bnb-4bit

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

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей