/ Модель

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

Контекст
2 048 токенов
Размер весов
48,4 ГБ
Лицензия
OpenRAIL
Архитектура
gptj · dense
Библиотека
transformers
Опубликована
29 мар 2023

bertin-gpt-j-6B-alpaca

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

Испаноязычная модель GPT-J с 6 млрд параметров, дообученная на Alpaca для генерации ответов на инструкции.

96скачиваний за 30 дней7лайковвеса обновлены10 ноя 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

BERTIN-GPT-J-6B Alpaca — испаноязычная авторегрессионная языковая модель на архитектуре GPT-J, разработанная проектом BERTIN и дообученная на испанском переводе набора Alpaca. Она предназначена для генерации ответов на инструкции и выполнения задач, заданных естественным языком, например, для создания черновиков и ответов на вопросы. Модель имеет около 6 млрд параметров и контекстное окно 2048 токенов; для работы в README приведён пример с Transformers.

Модель обучали три эпохи на одном TPUv3-8. В README приведены результаты оценивания на ARC и HellaSwag, однако они не дают полной картины качества для прикладных задач. Лицензия модели — OpenRAIL. README также указывает, что использованный набор данных нельзя применять для создания моделей, конкурирующих с OpenAI.

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

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

Ограничения

Контекст ограничен 2048 токенами. README не приводит подробных оценок качества по широкому набору задач; датасет Alpaca, на котором обучалась модель, ограничен в использовании для создания конкурирующих с OpenAI моделей.

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

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

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

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

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

Открыть на Hugging Face

BERTIN-GPT-J-6B Alpaca

This is a BERTIN GPT-J-6B Spanish model fine-tuned on the Spanish Alpaca dataset.

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig, pipeline

base_model = "bertin-project/bertin-gpt-j-6B-alpaca"
tokenizer = AutoTokenizer.from_pretrained(base_model)
model = AutoModelForCausalLM.from_pretrained(base_model).cuda()

For generation, we can either use pipeline() or the model's .generate() method. Remember that the prompt needs a Spanish template:

# Generate responses
def generate(instruction, input=None):
    if input:
        prompt = f"""A continuación hay una instrucción que describe una tarea, junto con una entrada que proporciona más contexto. Escribe una respuesta que complete adecuadamente lo que se pide.

### Instrucción:
{instruction}

### Entrada:
{input}

### Respuesta:"""
    else:
        prompt = f""""A continuación hay una instrucción que describe una tarea. Escribe una respuesta que complete adecuadamente lo que se pide.

### Instrucción:
{instruction}

### Respuesta:
"""
    inputs = tokenizer(prompt, return_tensors="pt")
    input_ids = inputs["input_ids"].cuda()
    generation_output = model.generate(
        input_ids=input_ids,
        generation_config=GenerationConfig(temperature=0.2, top_p=0.75, num_beams=4),
        return_dict_in_generate=True,
        output_scores=True,
        max_new_tokens=256
    )
    for seq in generation_output.sequences:
        output = tokenizer.decode(seq, skip_special_tokens=True)
        print(output.split("### Respuesta:")[-1].strip())

generate("Escribe un correo electrónico dando la bienvenida a un nuevo empleado llamado Manolo.")
# Estimado Manolo,
#
# ¡Bienvenido a tu nuevo trabajo como Representante de Servicio al Cliente en nuestra empresa! Estamos emocionados de tenerte a bordo y esperamos que tengas un gran año trabajando con nosotros.
#
# En nombre de todos en esta empresa, queremos darte la bienvenida al equipo y desearte lo mejor en tus nuevas funciones.
#
# ¡Estamos ansiosos por escuchar tus historias y ayudarte a tener éxito en tu nuevo rol!
#
# Sinceramente,
# El equipo de Servicio al Cliente

Data

The dataset is a translation to Spanish of alpaca_data_cleaned.json (a clean version of the Alpaca dataset made at Stanford) using OpenAI's gpt-3.5-turbo model. We translated using a full-sample prompt instead of per strings, which resulted in more coherent tuples of (instruction, input, output) and costed around $60.0.

This dataset cannot be used to create models that compete in any way with OpenAI.

Finetuning

To fine-tune the BERTIN GPT-J-6B model we used the code available on BERTIN's fork of mesh-transformer-jax, which provides code adapt an Alpaca dataset to finetune any GPT-J-6B model. We run finetuning for 3 epochs using sequence length of 2048 on a single TPUv3-8 for 3 hours on top of BERTIN GPT-J-6B.

Example outputs

Stanford Alpaca:

Instruction: Inventa una excusa creativa para decir que no tengo que ir a la fiesta.
Response: I'm sorry, I can't make it to the party. I have to stay home and take care of my sick pet.

BERTIN Alpaca LoRA:

Instruction: Inventa una excusa creativa para decir que no tengo que ir a la fiesta.
Response: No puedo ir a la fiesta porque tengo que terminar un proyecto urgente.

BERTIN GPT-J-6B Alpaca:

Instruction: Inventa una excusa creativa para decir que no tengo que ir a la fiesta.
Response: Lo siento, pero tengo una cita inesperada a la que necesito asistir.

Stanford Alpaca:

Instruction: ¿Cómo puedo comenzar una carrera como científico de datos? Responde con una lista de pasos a seguir.
Response: To begin a career as a data scientist, there are a few steps to take. First, you should have a bachelor's degree in a STEM-related field, such as computer science, mathematics, statistics, or engineering. You should also have experience with programming languages such as Python, R, or Java. Additionally, it is helpful to have knowledge of machine learning, data visualization, and data analytics. Finally, it is important to stay up to date with the latest trends and technologies in the field.

BERTIN Alpaca LoRA:

Instruction: ¿Cómo puedo comenzar una carrera como científico de datos? Responde con una lista de pasos a seguir.
Response: Para comenzar una carrera como científico de datos, hay varios pasos a seguir. Primero, obtener una licenciatura en matemáticas, informática o ciencias de la computación. Luego, obtener una maestría o doctorado en ciencias de la computación, informática o alguna otra área relacionada. Finalmente, obtener experiencia en el campo trabajando en proyectos de investigación o desarrollando aplicaciones.

BERTIN GPT-J-6B Alpaca:

Instruction: ¿Cómo puedo comenzar una carrera como científico de datos? Responde con una lista de pasos a seguir.
Response: Comenzar una carrera como científico de datos requiere una sólida formación en matemáticas, estadística e informática. También es importante tener experiencia en análisis de datos, aprendizaje automático y visualización de datos. Para prepararse para una carrera como científico de datos, considere tomar cursos en estadística, aprendizaje automático, visualización de datos y otros temas relevantes. Además, asegúrese de obtener experiencia práctica trabajando en proyectos de análisis de datos o tomando roles de aprendiz de científico de datos.

You can test it using the eval notebook here.

References

Hardware Requirements

For training we have used a Google Cloud TPUv3-8 VM. For eval, you can use a T4.

Open LLM Leaderboard Evaluation Results

Detailed results can be found here

MetricValue
Avg.32.11
ARC (25-shot)36.01
HellaSwag (10-shot)54.3
MMLU (5-shot)27.66
TruthfulQA (0-shot)43.38
Winogrande (5-shot)55.8
GSM8K (5-shot)0.0
DROP (3-shot)7.59

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
GPTJForCausalLM
Ревизия весов
a01a385

0 моделей