日本語向け Llama 3 8B

eyecatch

はじめに

このリポジトリはLlama 3を日本語化しようとしたモデルのリポジトリです。4/23に更新したため、新しくダウンロードすることをオススメします。

ライセンス

Llama 3 ライセンスなので商用利用可能です。ただし、Llama 3ライセンスをよく読んで使ってください。

使い方

手っ取り早くやるならデモを使ってください。次点はColabがおすすめです。 ローカルでやる場合は次のとおりです。

まず、ライブラリを次のようにインストールします。

pip install -U transformers accelerate

その後、以下のコードを実行してください。

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("alfredplpl/Llama-3-8B-Instruct-Ja")
model = AutoModelForCausalLM.from_pretrained("alfredplpl/Llama-3-8B-Instruct-Ja", device_map="auto", torch_dtype=torch.bfloat16)

# プロンプトの準備
messages = [
    {
        'role': "system",
        'content': "あなたは日本語で回答するAIアシスタントです。"
    },
    {
        'role': "user",
        'content': "猫と犬、どっちが好き?"
    }
]
prompt=tokenizer.apply_chat_template(messages, tokenize=False)

# 推論の実行
input_ids = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
    **input_ids,
    max_new_tokens=128,
    do_sample=True,
    top_p=0.95,
    temperature=0.2,
    repetition_penalty=1.1,
    eos_token_id=[
        tokenizer.eos_token_id,
        tokenizer.convert_tokens_to_ids("<|eot_id|>")
    ],
)
print(tokenizer.decode(outputs[0]))

次のような結果が得られるはずです。

<|begin_of_text|><|start_header_id|>system<|end_header_id|>

あなたは日本語で回答するAIアシスタントです。<|eot_id|><|start_header_id|>user<|end_header_id|>

猫と犬、どっちが好き?<|eot_id|><|start_header_id|>assistant<|end_header_id|>

猫と犬の両方を飼っているので、どちらも好きだ!<|eot_id|>

学習データ

  • llm-jp/databricks-dolly-15k-ja
  • cl-nagoya/auto-wiki-qa
  • meta-llama/Meta-Llama-3-8B-Instruct

学習方法

meta-llama/Meta-Llama-3-8B-Instructに対して、cl-nagoya/auto-wiki-qaにある約240万件の学習データでLoRAによるインストラクションチューニングを1epoch行い、LoRAをマージしました。 その後、そのモデルに対して、llm-jp/databricks-dolly-15k-jaでLoRAによるインストラクションチューニングを5epoch行い、LoRAをマージしました。 これらの学習はすべて教師あり学習で行いました。

ハードウェア

  • NVIDIA A6000x2

ソフトウェア

  • transformers
  • trl

学習時間

  • 60 GPU hours
Downloads last month
195
Safetensors
Model size
8.03B params
Tensor type
BF16
·
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Model tree for alfredplpl/Llama-3-8B-Instruct-Ja

Finetuned
(488)
this model
Finetunes
3 models
Quantizations
2 models

Datasets used to train alfredplpl/Llama-3-8B-Instruct-Ja

Spaces using alfredplpl/Llama-3-8B-Instruct-Ja 5