/ Модель

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

Контекст
2 048 токенов
Параметры
3,5 млрд
Размер весов
11,2 ГБ
Лицензия
Apache 2.0
Архитектура
gpt_neox · dense
Опубликована
4 мар 2023

pythia-2.8b-deduped-synthetic-instruct

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

Дообученная Lambda англоязычная модель Pythia для генерации текста по инструкциям.

41скачиваний за 30 дней5лайковвеса обновлены22 мар 2023

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Lambda дообучила языковую модель EleutherAI/pythia-2.8b-deduped на наборе Dahoas/synthetic-instruct-gptj-pairwise, содержащем синтетические инструкции и парные примеры. Модель построена на архитектуре GPT-NeoX и предназначена для генерации текста с учётом инструкций на английском языке.

Модель содержит 3,5 млрд параметров, принимает текст и выдаёт текст; длина контекста составляет 2048 токенов. Для инференса требуется около 7 ГБ видеопамяти. Модель распространяется по лицензии Apache 2.0.

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

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

Ограничения

Контекст ограничен 2048 токенами; для инференса требуется около 7 ГБ видеопамяти. Качество ответов и пригодность для конкретных сценариев в карточке не оценены.

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

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

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

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

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

Открыть на Hugging Face

This model is created by finetuning EleutherAI/pythia-2.8b-deduped on the Dahoas/synthetic-instruct-gptj-pairwise.

You can try a demo of the model hosted on Lambda Cloud.

Model Details

Prerequisites

Running inference with the model takes ~7GB of GPU memory.

Quick Start

import torch

from transformers import AutoTokenizer, pipeline, StoppingCriteria, StoppingCriteriaList

device = torch.device("cuda:0") if torch.cuda.is_available() else torch.device("cpu")

model_name = "lambdalabs/pythia-2.8b-deduped-synthetic-instruct"
max_new_tokens = 2048
stop_token = "<|stop|>"


class KeywordsStoppingCriteria(StoppingCriteria):
    def __init__(self, keywords_ids: list):
        self.keywords = keywords_ids

    def __call__(
        self, input_ids: torch.LongTensor, scores: torch.FloatTensor, **kwargs
    ) -> bool:
        if input_ids[0][-1] in self.keywords:
            return True
        return False


tokenizer = AutoTokenizer.from_pretrained(
    model_name,
)
tokenizer.pad_token = tokenizer.eos_token
tokenizer.add_tokens([stop_token])

stop_ids = [tokenizer.encode(w)[0] for w in [stop_token]]
stop_criteria = KeywordsStoppingCriteria(stop_ids)

generator = pipeline(
    "text-generation",
    model=model_name,
    device=device,
    max_new_tokens=max_new_tokens,
    torch_dtype=torch.float16,
    stopping_criteria=StoppingCriteriaList([stop_criteria]),
)

example = "How can I make an omelette."
text = "Question: {}\nAnswer:".format(example)

result = generator(
    text,
    num_return_sequences=1,
)

output = result[0]["generated_text"]

print(output)

Output:

Question: How can I make an omelette.
Answer:To make an omelette, start by cracking two eggs into a bowl and whisking them together. Add a splash of milk and a pinch of salt and pepper. Heat a non-stick pan over medium-high heat and add a tablespoon of butter. Once the butter has melted, pour in the egg mixture. As the eggs set, use a spatula to lift the edges and let the uncooked egg run underneath. When the eggs are cooked through and no visible liquid egg remains, top with your desired fillings and fold the omelette in half before sliding it onto a plate.<|stop|>

Training

The model was trained on the Dahoas/synthetic-instruct-gptj-pairwise. We split the original dataset into the train (first 32000 examples) and validation (the remaining 1144 examples) subsets.

We finetune the model for 4 epoches. This took 8xA100 80GB 5 hours, where we set batch_size_per_gpu to 2 (so global batch size is 16), and learning rate to 0.00001 (with linear decay to zero at the last trainig step). You can find a Weights and Biases record here.

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
GPTNeoXForCausalLM
Ревизия весов
0d5d92b

0 моделей