/ Модель

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

Лицензия
Apache 2.0
Архитектура
transformerlm · dense
Опубликована
12 июл 2023

transformer-lm-japanese-0.1b

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

Компактная японская причинная языковая модель для генерации текста и экспериментов, обученная на wiki40b/ja.

128скачиваний за 30 дней0лайковвеса обновлены2 окт 2024

Бенчмарки

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

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

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

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

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

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

transformer-lm-japanese-0.1b — авторская причинная языковая модель Ryoichi Fukugawa, построенная на TransformerLM и обученная на японском корпусе wiki40b/ja. Модель объёмом 0,1 млрд параметров содержит 12 слоёв, размерность 768 и 12 голов внимания; реализована на JAX/Flax и использует токенизатор SentencePiece.

Модель предназначена для генерации японского текста и экспериментов с небольшими языковыми моделями. В README приведены результаты оценки на четырёх заданиях JGLUE в режиме zero-shot, однако модель не позиционируется как специализированная система для этих заданий. Для загрузки через Transformers требуется включить trust_remote_code=True.

Модель распространяется по лицензии Apache-2.0. В README указана perplexity 35,22 на обучающем японском корпусе; размер модели и характер обучения ограничивают её возможности по сравнению с более крупными современными языковыми моделями.

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

  • генерация продолжений японского текста
  • создание коротких японских текстовых фрагментов
  • эксперименты с небольшими языковыми моделями на JAX и Flax
  • оценка японской языковой модели на заданиях JGLUE

Ограничения

Модель небольшая — 0,1 млрд параметров — и обучена на корпусе wiki40b/ja; её результаты на JGLUE заметно различаются по заданиям. Для загрузки через Transformers требуется trust_remote_code=True.

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

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

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

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

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

Открыть на Hugging Face

transformer-lm-japanese-0.1b

This is a JAX/Flax-based transformer language model trained on a Japanese dataset. It is based on the official Flax example code (lm1b).

Update Log

  • 2024/05/20 Added JGLUE 4-task benchmark scores.
  • 2024/05/13 FlaxAutoModelForCausalLM is now supported with custom model code added.

Source Code

We've modified Flax's 'lm1b' example to train on Japanese dataset. You can find the code on Github.

Our Blog Post

Model Details

ModelParamsLayersDimHeadsDatasetDataset sizeTraining timePPL
transformer-lm-japanese-0.1b0.1B1276812wiki40b/ja2.19GB1.5 days35.22

Benchmarking

  • JGLUE 4-task (2024/05/22)

    • We used Stability-AI/lm-evaluation-harness library for evaluation.
    • We modified the harness to work with the FlaxAutoModel for evaluating JAX/Flax models. See the code here.
    • We evaluated four tasks: JCommonsenseQA-1.1, JNLI-1.3, MARC-ja-1.1, and JSQuAD-1.1.
    • All evaluations used version 0.3 (Alpaca) of the prompt template in a zero-shot setting.
    • The revision of the custom model used: here.
    ModelAverageJCommonsenseQAJNLIMARC-jaJSQuAD
    transformer-lm-japanese-0.1b41.4135.2143.5978.638.24
    Reference: rinna/japanese-gpt-neox-small40.7540.3929.1385.488.02

Usage: FlaxAutoModel

Requirements:

pip install transformers>=4.39.0
pip install jax==0.4.31
pip install flax==0.8.3
pip install sentencepiece==0.1.99

# For CPU
pip install -U "jax[cpu]==0.4.31"

# For GPU
pip install -U "jax[cuda12]==0.4.31"

Note: Set trust_remote_code=True to load our custom model.

from transformers import AutoTokenizer, FlaxAutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("fukugawa/transformer-lm-japanese-0.1b", trust_remote_code=True)
model = FlaxAutoModelForCausalLM.from_pretrained("fukugawa/transformer-lm-japanese-0.1b", trust_remote_code=True)

text = "日本の首都は、"
token_ids = tokenizer.encode(text, return_tensors="jax", add_special_tokens=False)

output_ids = model.generate(
  token_ids,
  do_sample=True,
  temperature=0.6,
  top_k=20,
  max_new_tokens=100
)

output = tokenizer.decode(output_ids[0][0], skip_special_tokens=True)
print(output)

We tested text generation in a Python 3.10 environment on GCP as follows

  • Machine Type: c2-standard-4 (4 CPUs, 16GB Memory)
  • Disk: 100GB
  • OS: Ubuntu 22.04 LTS x86/64

Dataset

Tokenization

Author

Ryoichi Fukugawa

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

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

GPU в ailist

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

Нельзя запустить

В репозитории нет весов в формате PyTorch/safetensors.

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

0 моделей