/ Модель

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

Контекст
2 048 токенов
Лицензия
GPL 3.0
Архитектура
gptj · dense

slovak-gpt-j-1.4B

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

Словацкая GPT-J-модель на 1,4 млрд параметров для генерации текста по запросу.

483скачиваний за 30 дней8лайковвеса обновлены17 фев 2022

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Slovak GPT-J-1.4B — авторская модель Milos из серии Slovak GPT-J, построенная на архитектуре GPT-J для генерации текста по заданному запросу. Модель содержит около 1,415 млрд параметров, 24 слоя и размер скрытого представления 2048; карточка указывает контекстное окно 2048 токенов и формат PyTorch.

Модель обучена на более чем 40 ГБ преимущественно словацких текстов из разных категорий, включая веб-страницы, новости и библейские тексты. Её основной сценарий — продолжение и генерация словацкого текста; README также отмечает возможность извлекать языковые представления для последующих задач. Лицензия — GPL-3.0.

По описанию автора, это наиболее способная модель серии, однако её качество может быть непоследовательным. В генерациях возможны ненормативная лексика, политически некорректное содержание и отдельные фрагменты на чешском языке; автор также предупреждает о риске выдачи чувствительного или случайно запомненного содержимого обучающих данных.

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

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

Ограничения

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

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

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

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

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

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

Открыть на Hugging Face

Slovak GPT-J-1.4B

Slovak GPT-J-1.4B with the whopping 1,415,283,792 parameters is the latest and the largest model released in Slovak GPT-J series. Smaller variants, Slovak GPT-J-405M and Slovak GPT-J-162M, are still available.

Model Description

Model is based on GPT-J and has over 1.4B trainable parameters.

HyperparameterValue
\(n_{parameters}\)1,415,283,792
\(n_{layers}\)24
\(d_{model}\)2048
\(d_{ff}\)16384
\(n_{heads}\)16
\(d_{head}\)256
\(n_{ctx}\)2048
\(n_{vocab}\)50256 (same tokenizer as GPT-2/3†)
Positional EncodingRotary Position Embedding (RoPE)
RoPE Dimensions64

Training data

Slovak GPT-J models were trained on a privately collected dataset consisting of predominantly Slovak text spanning different categories, e.g. web, news articles or even biblical texts - in total, over 40GB of text data was used to train this model. The dataset was preprocessed and cleaned in a specific way that involves minor but a few caveats, so in order to achieve the expected performance, feel free to refer to [How to use] section. Please, keep in mind that despite the effort to remove inappropriate corpus, the model still might generate sensitive content or leak sensitive information.

Training procedure

This model was trained for a bit more than 26.5 billion tokens over 48,001 steps on TPU v3-8 pod. The cross-entropy validation loss at the last step was 2.657.

Intended Use

Same as the original GPT-J, Slovak GPT-J learns an inner representation of the language that can be used to extract features useful for downstream tasks, however, the intended use is text generation from a prompt.

How to use

This model along with the tokenizer can be easily loaded using the AutoModelForCausalLM functionality:

from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("Milos/slovak-gpt-j-1.4B")
model = AutoModelForCausalLM.from_pretrained("Milos/slovak-gpt-j-1.4B")

When generating a prompt keep in mind these three things, and you should be good to go:

  1. Never leave trailing whitespaces. There's a difference between how tokenizer encodes "Mám rád slovenčinu" (no space after slovenčinu) and "Mám rád slovenčinu " (trailing space after slovenčinu), i.e [12805, 2872, 46878] != [12805, 2872, 46878, 221].
  2. Always use good ol' US English primary double quotation marks, i.e. "" instead of „“.
  3. In case of a new line always enter \n\n instead of a single \n

To illustrate an example of a basic text generation:

>>> prompt = "Tradičné jedlo na Orave sú"
>>> encoded_input = tokenizer(prompt, return_tensors='pt')
>>> output = model.generate(**encoded_input)
>>> tokenizer.decode(output[0])
'Tradičné jedlo na Orave sú bryndzové halušky\n\nNa Orave sa v minulosti varilo viac druhov'

Capabilities, Limitations, and Biases

Based on the parameter count and our internal testing this should be by far the most capable model out of all models released in Slovak GPT-J series. For sake of simplicity, I have omitted all the boilerplate code and swapped \n for new lines in the examples that follow. These were generated with both top_p and temperature set to 0.9.

A spin on "Mor ho!" by Samo Chalpuka

PROMPT
Zleteli orly z Tatry, tiahnu na podolia, ponad vysoké hory, ponad rovné polia; preleteli cez Dunaj, cez tú šíru vodu, sadli tam za pomedzím slovenského rodu.

Duní Dunaj a luna za lunou sa valí
OUTPUT
Zleteli orly z Tatry, tiahnu na podolia, ponad vysoké hory, ponad rovné polia; preleteli cez Dunaj, cez tú šíru vodu, sadli tam za pomedzím slovenského rodu.

Duní Dunaj a luna za lunou sa valí: nad ním svieti pevný hrad na vysokom bralí. Pod tým hradom je zem slovenská, na nej je Slovensko naše.

Na tom vrchu leží slovenský národ, pod tým bralom leží krajina slovenská. A pod tým hradom leží i jeho sláva: na tom vrchu, na tom brale leží sláva slovenského národa.```

Jokes are a bit hit or miss. Very often they contain vulgarisms and/or are highly politically incorrect. This one is rather exception than the rule.

PROMPT
Nasledujú najlepšie vtipy.

Prečo
OUTPUT
Nasledujú najlepšie vtipy.

Prečo má policajt pri sebe vždy dva nože? Jeden je na sebaobranu, druhý na boj zblízka.

The infamous unicorn prompt from GPT-2 paper.

PROMPT
V šokujúcom náleze vedci objavili stádo jednorožcov žijúcich v odľahlom, predtým nepreskúmanom údolí, v Andách. Ešte prekvapivejšie pre vedcov bol fakt, že jednorožce hovorili plynule po slovensky.

OUTPUT
V šokujúcom náleze vedci objavili stádo jednorožcov žijúcich v odľahlom, predtým nepreskúmanom údolí, v Andách. Ešte prekvapivejšie pre vedcov bol fakt, že jednorožce hovorili plynule po slovensky.

V Andách ich totiž žilo približne 700 jedincov, ktoré sa živili výhradne materským mliekom. Slováci sú tak pravdepodobne prvými Európanmi, ktorí v Andách stretli jednorožca. "Je to dôkaz, že tieto zvieratá sú inteligentné a že žijú v Andách už stovky rokov," povedal pre webový portál televízie JOJ profesor geológie, geografie a zoológie, Milan Kováč.

Podľa profesora Kováča si v Andách zvieratá vytvárajú svoj vlastný jazyk. Je to zároveň dôkaz, že jednorožce žili v minulosti aj v slovenských pohoriach. "Jednorožce sa tam síce vyskytovali, ale neboli tak dobre preskúmané, ako teraz v Andách."

Na Slovensku však ľudia o jednorožcoch donedávna vedeli veľmi málo.<|endoftext|>

Since the dataset contains profanity, politically incorrect language, and (unintentionally) even a bits of text in Czech, the model can generate them in some extent too. Here's an example of the model output when prompt is in Czech:

>>> prompt = "Věta nesmí být sprostá a musí být zcela"
>>> encoded_input = tokenizer(prompt, return_tensors='pt')
>>> output = model.generate(**encoded_input, max_length=16)
>>> tokenizer.decode(output[0])
'Věta nesmí být sprostá a musí být zcela pravdivá.'

Citation and Related Information

This was done as a moonlighting project during summer of 2021 to better understand transformers. I didn't have much free time to open source it properly, so it all sat on my hard drive until now :)

If you use this model or have any questions about it feel free to hit me up at twitter or check out my github profile.

BibTeX entry

To cite this model:

@misc{slovak-gpt-j-1.4B,
  author = {Kondela, Milos},
  title = {{Slovak GPT-J-1.4B}},
  howpublished = {\url{https://huggingface.co/Milos/slovak-gpt-j-1.4B}},
  year = 2022,
  month = February
}

To cite the codebase that trained this model:

@misc{mesh-transformer-jax,
  author = {Wang, Ben},
  title = {{Mesh-Transformer-JAX: Model-Parallel Implementation of Transformer Language Model with JAX}},
  howpublished = {\url{https://github.com/kingoflolz/mesh-transformer-jax}},
  year = 2021,
  month = May
}

Acknowledgements

This project was generously supported by TPU Research Cloud (TRC) program. Shoutout also goes to Ben Wang and great EleutherAI community.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей