/ Модель

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

Контекст
131 072 токена
Параметры
1,5 млрд
Лицензия
Apache 2.0
Архитектура
qwen2 · dense
Базовая модель
Qwen2.5-1.5B
Опубликована
17 ноя 2024

Qwen2.5-1.5B-ultrachat200k

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

Диалоговая модель Qwen2.5 с 1,5 млрд параметров, дообученная на UltraChat 200k для генерации ответов в беседе.

4 921скачиваний за 30 дней0лайковвеса обновлены20 ноя 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

AIR-hl/Qwen2.5-1.5B-ultrachat200k — диалоговая языковая модель, дообученная AIR-hl методом supervised fine-tuning на наборе HuggingFaceH4/ultrachat_200k. В основе — плотная авторегрессионная архитектура Qwen2.5 с 1,5 млрд параметров; модель предназначена для генерации текста в формате общения и поддерживает контекст до 131 072 токенов.

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

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

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

Ограничения

README приводит только потери обучения и оценки; результаты практических или сравнительных тестов не указаны. Языки обучающих примеров не перечислены.

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

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

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

Также подходит для

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

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

Открыть на Hugging Face

Qwen2.5-1.5B-ultrachat200k

Model Details

Training Details

Training Hyperparameters

attn_implementation: flash_attention_2
bf16: True
learning_rate: 5e-5
lr_scheduler_type: cosine
per_device_train_batch_size: 2
gradient_accumulation_steps: 16
torch_dtype: bfloat16
num_train_epochs: 1
max_seq_length: 2048
warmup_ratio: 0.1

Results

init_train_loss: 1.421
final_train_loss: 1.192
eval_loss: 1.2003

Training script

import multiprocessing

from datasets import load_dataset
from tqdm.rich import tqdm
from transformers import AutoTokenizer, AutoModelForCausalLM
from trl import (
    ModelConfig,
    SFTTrainer,
    get_peft_config,
    get_quantization_config,
    get_kbit_device_map,
    SFTConfig,
    ScriptArguments
)
from trl.commands.cli_utils import TrlParser

tqdm.pandas()

if __name__ == "__main__":
    parser = TrlParser((ScriptArguments, SFTConfig, ModelConfig))
    args, training_args, model_config = parser.parse_args_and_config()

    quantization_config = get_quantization_config(model_config)
    model_kwargs = dict(
        revision=model_config.model_revision,
        trust_remote_code=model_config.trust_remote_code,
        attn_implementation=model_config.attn_implementation,
        torch_dtype=model_config.torch_dtype,
        use_cache=False if training_args.gradient_checkpointing else True,
        device_map=get_kbit_device_map() if quantization_config is not None else None,
        quantization_config=quantization_config,
    )

    model = AutoModelForCausalLM.from_pretrained(model_config.model_name_or_path,
                                                 **model_kwargs)
    tokenizer = AutoTokenizer.from_pretrained(
        model_config.model_name_or_path, trust_remote_code=model_config.trust_remote_code, use_fast=True
    )
    tokenizer.pad_token = tokenizer.eos_token

    train_dataset = load_dataset(args.dataset_name,
                                 split=args.dataset_train_split,
                                 num_proc=multiprocessing.cpu_count())

    trainer = SFTTrainer(
        model=model,
        args=training_args,
        train_dataset=train_dataset,
        processing_class=tokenizer,
        peft_config=get_peft_config(model_config),
    )

    trainer.train()

    trainer.save_model(training_args.output_dir)

Test Script

from vllm import LLM
from datasets import load_dataset
from vllm.sampling_params import SamplingParams
from transformers import AutoTokenizer

MODEL_PATH = "autodl-tmp/saves/Qwen2.5-1.5B-ultrachat200k"

model = LLM(MODEL_PATH,
            tensor_parallel_size=1,
            dtype='bfloat16')
tokenizer = AutoTokenizer.from_pretrained(MODEL_PATH)

input = tokenizer.apply_chat_template([{"role": "user", "content": "Which province is Shenyang in?"}],
                                    tokenize=False,
                                    add_generation_prompt=True)
sampling_params = SamplingParams(max_tokens=1024,
                                 temperature=0.7,
                                 logprobs=1,
                                 stop_token_ids=[tokenizer.eos_token_id])

vllm_generations = model.generate(input,
                                  sampling_params)

print(vllm_generations[0].outputs[0].text)
# print result: Shenyang is in Liaoning province, China.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей