keisawada's picture
Update README.md
9cfb71d verified
metadata
thumbnail: https://github.com/rinnakk/japanese-pretrained-models/blob/master/rinna.png
license: llama3
datasets:
  - CohereForAI/aya_dataset
  - kunishou/databricks-dolly-15k-ja
  - kunishou/HelpSteer-35k-ja
  - kunishou/HelpSteer2-20k-ja
  - kunishou/hh-rlhf-49k-ja
  - kunishou/oasst1-chat-44k-ja
  - kunishou/oasst2-chat-68k-ja
  - meta-math/MetaMathQA
  - OpenAssistant/oasst1
  - OpenAssistant/oasst2
  - sahil2801/CodeAlpaca-20k
language:
  - ja
  - en
tags:
  - llama
  - llama-3
inference: false
base_model:
  - rinna/llama-3-youko-8b
  - meta-llama/Meta-Llama-3-8B
  - meta-llama/Meta-Llama-3-8B-Instruct
base_model_relation: merge

Llama 3 Youko 8B Instruct (rinna/llama-3-youko-8b-instruct)

rinna-icon

Overview

The model is the instruction-tuned version of rinna/llama-3-youko-8b, using supervised fine-tuning (SFT), Chat Vector, and direct preference optimization (DPO). It adpots the Llama-3 chat format.

Size Continual Pre-Training Instruction-Tuning
8B Llama 3 Youko 8B [HF] [GPTQ] Llama 3 Youko 8B Instruct [HF] [GPTQ]
70B Llama 3 Youko 70B [HF] [GPTQ] Llama 3 Youko 70B Instruct [HF] [GPTQ]

Benchmarking

Please refer to rinna's LM benchmark page.


How to use the model

We found this instruction-tuned model tends to generate repeated text more often than its base counterpart, and thus we set repetition_penalty=1.1 for better generation performance. The same repetition penalty was applied to the instruction-tuned model in the aforementioned evaluation experiments.

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

model_id = "rinna/llama-3-youko-8b-instruct"

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)

messages = [
    {"role": "system", "content": "あなたは誠実で優秀なアシスタントです。どうか、簡潔かつ正直に答えてください。"},
    {"role": "user", "content": "西田幾多郎とはどんな人物ですか?"},
]

input_ids = tokenizer.apply_chat_template(
    messages,
    add_generation_prompt=True,
    return_tensors="pt"
).to(model.device)

terminators = [
    tokenizer.convert_tokens_to_ids("<|end_of_text|>"),
    tokenizer.convert_tokens_to_ids("<|eot_id|>")
]

outputs = model.generate(
    input_ids,
    max_new_tokens=512,
    eos_token_id=terminators,
    do_sample=True,
    temperature=0.6,
    top_p=0.9,
    repetition_penalty=1.1,
)
    
response = outputs[0][input_ids.shape[-1]:]
response = tokenizer.decode(response, skip_special_tokens=True)
print(response)

Tokenization

The model uses the original meta-llama/Meta-Llama-3-8B-Instruct tokenizer.


How to cite

@misc{rinna-llama-3-youko-8b-instruct,
    title = {rinna/llama-3-youko-8b-instruct},
    author = {Chen, Xinqi and Mitsuda, Koh and Wakatsuki, Toshiaki and Sawada, Kei},
    url = {https://huggingface.co/rinna/llama-3-youko-8b-instruct}
}

@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}}
}

References

@article{llama3modelcard,
    title = {Llama 3 Model Card},
    author = {AI@Meta},
    year = {2024},
    url = {https://github.com/meta-llama/llama3/blob/main/MODEL_CARD.md}
}

@article{huang2023chat,
    title = {Chat Vector: A Simple Approach to Equip LLMs with Instruction Following and Model Alignment in New Languages},
    author = {Huang, Shih-Cheng and Li, Pin-Zu and Hsu, Yu-Chi and Chen, Kuang-Ming and Lin, Yu Tung and Hsiao, Shih-Kai and Tzong-Han Tsai, Richard and Lee, Hung-yi},
    year = {2023},
    url = {https://arxiv.org/abs/2310.04799}
}

License

Meta Llama 3 Community License