rinna/nekomata-7b-instruction
rinna/nekomata-7b-instruction
Overview
The model is the instruction-tuned version of `rinna/nekomata-7b`. It adopts the Alpaca input format.
- Model architecture
A 32-layer, 4096-hidden-size transformer-based language model. Please refer to the Qwen paper for architecture details.
- Fine-tuning
The fine-tuning data is the subset of the following datasets.
- Databricks Dolly data
- Japanese Databricks Dolly data
- FLAN Instruction Tuning data and its Japanese translation
- Izumi lab LLM Japanese dataset
- The following sections are used
- alt
- aozora-txt
- CourseraParallel
- ParaNatCom
- Tab-delimitedBilingualSentence_Pairs
- tanaka-corpus
- wikinews
- wordnet
- yasashi-japanese
- The remaining sections contain commonly used evaluation corpora so they are skipped to prevent data leak.
- Contributors
- Release date
December 21, 2023
Benchmarking
Please refer to rinna's LM benchmark page (Sheet 20231221).
How to use the model
~~~~python import torch from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.frompretrained("rinna/nekomata-7b-instruction", trustremote_code=True)
Use GPU with bf16
model = AutoModelForCausalLM.frompretrained("rinna/nekomata-7b-instruction", devicemap="auto", trustremotecode=True, bf16=True)
Use GPU with fp16
model = AutoModelForCausalLM.frompretrained("rinna/nekomata-7b-instruction", devicemap="auto", trustremotecode=True, fp16=True)
Use CPU
model = AutoModelForCausalLM.frompretrained("rinna/nekomata-7b-instruction", devicemap="cpu", trustremotecode=True)
Automatically select device and precision
model = AutoModelForCausalLM.frompretrained("rinna/nekomata-7b-instruction", devicemap="auto", trustremotecode=True)
instruction = "次の日本語を英語に翻訳してください。" input = "大規模言語モデル(だいきぼげんごモデル、英: large language model、LLM)は、多数のパラメータ(数千万から数十億)を持つ人工ニューラルネットワークで構成されるコンピュータ言語モデルで、膨大なラベルなしテキストを使用して自己教師あり学習または半教師あり学習によって訓練が行われる。" prompt = f""" 以下は、タスクを説明する指示と、文脈のある入力の組み合わせです。要求を適切に満たす応答を書きなさい。
指示:
{instruction}
入力:
{input}
応答:
""" tokenids = tokenizer.encode(prompt, addspecialtokens=False, returntensors="pt")
with torch.nograd(): outputids = model.generate( tokenids.to(model.device), maxnewtokens=200, dosample=True, temperature=0.5, padtokenid=tokenizer.padtokenid, bostokenid=tokenizer.bostokenid, eostokenid=tokenizer.eostokenid )
output = tokenizer.decode(output_ids.tolist()[0]) print(output) """ 以下は、タスクを説明する指示と、文脈のある入力の組み合わせです。要求を適切に満たす応答を書きなさい。
指示:
次の日本語を英語に翻訳してください。
入力:
大規模言語モデル(だいきぼげんごモデル、英: large language model、LLM)は、多数のパラメータ(数千万から数十億)を持つ人工ニューラルネットワークで構成されるコンピュータ言語モデルで、膨大なラベルなしテキストを使 用して自己教師あり学習または半教師あり学習によって訓練が行われる。
応答:
A large language model (LLM) is a computer language model composed of artificial neural networks with many parameters (from tens of millions to billions) trained by self-supervised learning or semi-supervised learning using a large amount of unlabeled text.<|endoftext|> """ ~~~~
Tokenization
Please refer to `rinna/nekomata-7b` for tokenization details.
How to cite
@misc{rinna-nekomata-7b-instruction,
title = {rinna/nekomata-7b-instruction},
author = {Zhao, Tianyu and Sawada, Kei},
url = {https://huggingface.co/rinna/nekomata-7b-instruction}
}
@inproceedings{sawada2024release,
title = {Release of Pre-Trained Models for the {J}apanese Language},
author = {Sawada, Kei and Zhao, Tianyu and Shing, Makoto and Mitsui, Kentaro and Kaga, Akio and Hono, Yukiya and Wakatsuki, Toshiaki and Mitsuda, Koh},
booktitle = {Proceedings of the 2024 Joint International Conference on Computational Linguistics, Language Resources and Evaluation (LREC-COLING 2024)},
month = {5},
year = {2024},
pages = {13898--13905},
url = {https://aclanthology.org/2024.lrec-main.1213},
note = {\url{https://arxiv.org/abs/2404.01657}}
}