rinna/youri-7b-instruction

rinna-icon

Overview

The model is the instruction-tuned version of rinna/youri-7b. It adopts the Alpaca input format.


Benchmarking

Evaluation experiments suggest that rinna's youri-7b series outperforms other open-source Japanese LLMs on Japanese tasks according to our runs.

Model Model type 4-task score 6-task score 8-task score
rinna/youri-7b-instruction SFT 83.88 80.93 63.63
rinna/youri-7b-chat SFT 78.29 78.47 62.18
matsuo-lab/weblab-10b-instruction-sft SFT 78.75 75.05 59.11
rinna/youri-7b pre-trained 73.32 74.58 58.87
stabilityai/japanese-stablelm-instruct-alpha-7b SFT 70.10 71.32 54.71
elyza/ELYZA-japanese-Llama-2-7b pre-trained 71.72 69.28 53.17
elyza/ELYZA-japanese-Llama-2-7b-instruct SFT 70.57 68.12 53.14
stabilityai/japanese-stablelm-base-alpha-7b pre-trained 61.03 65.83 51.05
matsuo-lab/weblab-10b pre-trained 66.33 65.58 50.74
meta/llama2-7b pre-trained 56.33 54.80 42.97
rinna/japanese-gpt-neox-3.6b pre-trained 47.20 54.68 41.80
rinna/bilingual-gpt-neox-4b pre-trained 46.60 52.04 40.03

How to use the model

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("rinna/youri-7b-instruction")
model = AutoModelForCausalLM.from_pretrained("rinna/youri-7b-instruction")

if torch.cuda.is_available():
    model = model.to("cuda")

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)は、多数のパラメータ(数千万から数十億)を持つ人工ニューラルネットワークで構成されるコンピュータ言語モデルで、膨大なラベルなしテキストを使 用して自己教師あり学習または半教師あり学習によって訓練が行われる。

### 応答:
 Large language models (LLMs) are computer language models that are composed of artificial neural networks with millions to billions of parameters that are trained via self-supervised or semi-supervised learning using vast unlabeled text.</s>
"""

Tokenization

The model uses the original llama-2 tokenizer.


How to cite

@misc{RinnaYouri7bInstruction,, 
    url={https://huggingface.co/rinna/youri-7b-instruction}, 
    title={rinna/youri-7b-instruction}, 
    author={Zhao, Tianyu and Sawada, Kei}
}

License

The llama2 license