metadata
thumbnail: https://github.com/rinnakk/japanese-pretrained-models/blob/master/rinna.png
datasets:
- databricks/databricks-dolly-15k
- kunishou/databricks-dolly-15k-ja
- izumi-lab/llm-japanese-dataset
language:
- ja
- en
tags:
- qwen
inference: false
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-delimited_Bilingual_Sentence_Pairs
- tanaka-corpus
- wikinews
- wordnet
- yasashi-japanese
- The remaining sections contain commonly used evaluation corpora so they are skipped to prevent data leak.
- The following sections are used
Authors
Benchmarking
Please refer to rinna's LM benchmark page.
How to use the model
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("rinna/nekomata-7b-instruction", trust_remote_code=True)
# Use GPU with bf16
# model = AutoModelForCausalLM.from_pretrained("rinna/nekomata-7b-instruction", device_map="auto", trust_remote_code=True, bf16=True)
# Use GPU with fp16
# model = AutoModelForCausalLM.from_pretrained("rinna/nekomata-7b-instruction", device_map="auto", trust_remote_code=True, fp16=True)
# Use CPU
# model = AutoModelForCausalLM.from_pretrained("rinna/nekomata-7b-instruction", device_map="cpu", trust_remote_code=True)
# Automatically select device and precision
model = AutoModelForCausalLM.from_pretrained("rinna/nekomata-7b-instruction", device_map="auto", trust_remote_code=True)
instruction = "次の日本語を英語に翻訳してください。"
input = "大規模言語モデル(だいきぼげんごモデル、英: large language model、LLM)は、多数のパラメータ(数千万から数十億)を持つ人工ニューラルネットワークで構成されるコンピュータ言語モデルで、膨大なラベルなしテキストを使用して自己教師あり学習または半教師あり学習によって訓練が行われる。"
prompt = f"""
以下は、タスクを説明する指示と、文脈のある入力の組み合わせです。要求を適切に満たす応答を書きなさい。
### 指示:
{instruction}
### 入力:
{input}
### 応答:
"""
token_ids = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt")
with torch.no_grad():
output_ids = model.generate(
token_ids.to(model.device),
max_new_tokens=200,
do_sample=True,
temperature=0.5,
pad_token_id=tokenizer.pad_token_id,
bos_token_id=tokenizer.bos_token_id,
eos_token_id=tokenizer.eos_token_id
)
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{RinnaNekomataInstruction7b,
url={https://huggingface.co/rinna/nekomata-7b-instruction},
title={rinna/nekomata-7b-instruction},
author={Zhao, Tianyu and Sawada, Kei}
}