/ Модель

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

Контекст
4 096 токенов
Параметры
2,9 млрд
Лицензия
Apache 2.0
Архитектура
llama · dense
Библиотека
transformers
Опубликована
11 ноя 2023

MiniChat-3B

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

MiniChat-3B — компактная диалоговая языковая модель GeneZC для генерации ответов на английском и китайском языках.

93скачиваний за 30 дней33лайкавеса обновлены27 июн 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

MiniChat-3B — диалоговая языковая модель GeneZC на архитектуре LLaMA, созданная дистилляцией и дообучением адаптированной LLaMA2-7B. Модель содержит 2,9 млрд параметров, принимает текст и генерирует текст; длина контекста — 4096 токенов. В карточке указана поддержка английского и китайского языков.

Модель предназначена для диалога и генерации ответов на запросы, а также для сценариев, где нужна компактная чат-модель. В README сообщается, что MiniChat-3B показала результаты выше ряда конкурирующих моделей класса 3B в оценке GPT-4 и сопоставимые с некоторыми чат-моделями класса 7B; это утверждение приведено разработчиком. Репозиторий содержит веса PyTorch и Safetensors и использует лицензию Apache-2.0, однако README требует соблюдать лицензию LLaMA 2, поскольку модель от неё производна.

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

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

Ограничения

Контекст ограничен 4096 токенами. Модель производна от LLaMA 2, поэтому при использовании необходимо учитывать требования её лицензии.

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

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

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

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

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

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

Открыть на Hugging Face

MiniChat-3B

📑 arXiv | 👻 GitHub | 🤗 HuggingFace-MiniMA | 🤗 HuggingFace-MiniChat | 🤗 HuggingFace-MiniChat-1.5 | 🤖 ModelScope-MiniMA | 🤖 ModelScope-MiniChat

🆕 Updates: MiniChat-1.5-3B

❗ Must comply with LICENSE of LLaMA2 since it is derived from LLaMA2.

A language model distilled and finetuned from an adapted version of LLaMA2-7B following "Towards the Law of Capacity Gap in Distilling Language Models".

Outperforming a wide range of 3B competitors in GPT4 evaluation and even competing with several 7B chat models.

The following is an example code snippet to use MiniChat-3B:

import torch

from transformers import AutoModelForCausalLM, AutoTokenizer

from conversation import get_default_conv_template

# MiniChat
tokenizer = AutoTokenizer.from_pretrained("GeneZC/MiniChat-3B", use_fast=False)
# GPU.
model = AutoModelForCausalLM.from_pretrained("GeneZC/MiniChat-3B", use_cache=True, device_map="auto", torch_dtype=torch.float16).eval()
# CPU.
# model = AutoModelForCausalLM.from_pretrained("GeneZC/MiniChat-3B", use_cache=True, device_map="cpu", torch_dtype=torch.float32).eval()
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
conv = get_default_conv_template("minichat")

question = "Implement a program to find the common elements in two arrays without using any extra data structures."
conv.append_message(conv.roles[0], question)
conv.append_message(conv.roles[1], None)
prompt = conv.get_prompt()
input_ids = tokenizer([prompt]).input_ids
output_ids = model.generate(
    torch.as_tensor(input_ids).to(device),
    do_sample=True,
    temperature=0.7,
    max_new_tokens=1024,
)
output_ids = output_ids[0][len(input_ids[0]):]
output = tokenizer.decode(output_ids, skip_special_tokens=True).strip()
# output: "def common_elements(arr1, arr2):\n    if len(arr1) == 0:\n        return []\n    if len(arr2) == 0:\n        return arr1\n\n    common_elements = []\n    for element in arr1:\n        if element in arr2:\n            common_elements.append(element)\n\n    return common_elements"
# Multiturn conversation could be realized by continuously appending questions to `conv`.

Bibtex

@article{zhang2023law,
    title={Towards the Law of Capacity Gap in Distilling Language Models},
    author={Zhang, Chen and Song, Dawei and Ye, Zheyu and Gao, Yan},
    year={2023},
    url={https://arxiv.org/abs/2311.07052}
}

Open LLM Leaderboard Evaluation Results

Detailed results can be found here

MetricValue
Avg.42.94
ARC (25-shot)44.03
HellaSwag (10-shot)67.19
MMLU (5-shot)39.17
TruthfulQA (0-shot)45.67
Winogrande (5-shot)65.27
GSM8K (5-shot)10.54
DROP (3-shot)28.73

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
LlamaForCausalLM
Ревизия весов
5b91092

0 моделей