🚀 Llama3-8B-Chinese-Chat
Llama3-8B-Chinese-Chatは、Meta-Llama-3-8B-Instructモデルをベースに、中国語と英語のユーザー向けに特別に調整された命令調整言語モデルです。ロールプレイやツール使用などの様々な機能を備え、さまざまなシチュエーションでのコミュニケーションニーズを満たすことができます。
🚀 クイックスタート
私たちは このGitHubリポジトリ で、さまざまなモデルのダウンロード、使用、再現に関する詳細な説明を提供しています。もし当社のモデルが気に入っていただけたら、是非GitHubリポジトリにスターをつけていただき、HuggingFaceリポジトリで「いいね」をクリックしていただけると幸いです。ご支援いただき、ありがとうございます!
❗️❗️❗️注意:このリポジトリには Llama3-8B-Chinese-Chat-v2.1 の q4_0 GGUFファイル のみが含まれています。Llama3-8B-Chinese-Chat-v1を使用したい場合は、 このリンク を参照してください。Llama3-8B-Chinese-Chat-v2を使用したい場合は、 このリンク を参照してください。
❗️❗️❗️注意:モデルの性能を最大化するために、モデルのアイデンティティは微調整されていません。そのため、「あなたは誰ですか」や「あなたは誰によって開発されましたか」などの質問に対する回答は、ランダムで正確でない場合があります。
✨ 主な機能
- 多言語対応:中国語と英語をサポートし、異なる言語背景のユーザーのニーズを満たします。
- 性能向上:元のMeta-Llama-3-8B-Instructモデルと比較して、「中国語の質問に英語で回答する」問題や、返答中の中英語の混在が大幅に減少しています。
- データ拡張:Llama3-8B-Chinese-Chat-v1と比較して、v2モデルの学習データ量は大幅に増加(20Kから100Kに)しており、ロールプレイ、ツール使用、数学などの分野でより優れた性能を発揮します。
- 継続的な最適化:Llama3-8B-Chinese-Chat-v2.1は、数学的能力がv2を上回り、中国語の返答に英単語が混じりにくくなっています。
📦 インストール
Llama3-8B-Chinese-Chat-v2の再現
Llama3-8B-Chinese-Chat-v2を再現するには(Llama3-8B-Chinese-Chat-v1を再現するには、 このリンク を参照)、以下の手順に従ってください。
git clone https://github.com/hiyouga/LLaMA-Factory.git
git reset --hard 32347901d4af94ccd72b3c7e1afaaceb5cb3d26a
cd LLaMA-Factory
deepspeed --num_gpus 8 src/train_bash.py \
--deepspeed ${Your_Deepspeed_Config_Path} \
--stage orpo \
--do_train \
--model_name_or_path meta-llama/Meta-Llama-3-8B-Instruct \
--dataset ${Your_Dataset_Name_or_PATH} \
--template llama3 \
--finetuning_type full \
--output_dir ${Your_Output_Path} \
--per_device_train_batch_size 1 \
--per_device_eval_batch_size 1 \
--gradient_accumulation_steps 8 \
--lr_scheduler_type cosine \
--log_level info \
--logging_steps 5 \
--save_strategy epoch \
--save_total_limit 3 \
--save_steps 100 \
--learning_rate 5e-6 \
--num_train_epochs 3.0 \
--plot_loss \
--do_eval false \
--max_steps -1 \
--bf16 true \
--seed 42 \
--warmup_ratio 0.1 \
--cutoff_len 8192 \
--flash_attn true \
--orpo_beta 0.05 \
--optim paged_adamw_32bit
💻 使用例
基本的な使用法
from llama_cpp import Llama
model = Llama(
"/Your/Path/To/GGUF/File",
verbose=False,
n_gpu_layers=-1,
)
system_prompt = "You are a helpful assistant."
def generate_reponse(_model, _messages, _max_tokens=8192):
_output = _model.create_chat_completion(
_messages,
stop=["<|eot_id|>", "<|end_of_text|>"],
max_tokens=_max_tokens,
)["choices"][0]["message"]["content"]
return _output
messages = [
{
"role": "system",
"content": system_prompt,
},
{"role": "user", "content": "写一首诗吧"},
]
print(generate_reponse(model, messages))
📚 ドキュメント
モデル情報
属性 |
详情 |
モデルタイプ |
Llama3-8B-Chinese-Chat |
学習データ |
Llama3-8B-Chinese-Chat-v2.1の学習データセットはv1と比較して5倍に拡大(約100Kの嗜好ペア)しており、このデータセットは近日公開予定です。 |
開発者 |
Shenzhi Wang*、Yaowei Zheng*、Guoyin Wang (in.ai)、Shiji Song、Gao Huang。(*: 同等貢献) |
ライセンス |
Llama-3ライセンス |
ベースモデル |
Meta-Llama-3-8B-Instruct |
モデルサイズ |
8.03B |
コンテキスト長 |
8K |
モデル更新
Llama3-8B-Chinese-Chat-v2.1 [2024年5月6日]
- 学習データセットはv1と比較して5倍に拡大(約100Kの嗜好ペア)しており、ロールプレイ、関数呼び出し、数学的能力が大幅に向上しています。
- v2と比較して、数学的能力が向上しており、中国語の返答に英単語が混じりにくくなっています。
- 公式の q4_0 GGUF、q8_0 GGUF、f16 GGUF バージョンを提供しており、それぞれ ここ、ここ、ここ から入手できます。
- 公式の Ollamaモデル を提供しており、以下のコマンドですぐに使用できます。
- q4_0 GGUFバージョン:
ollama run wangshenzhi/llama3-8b-chinese-chat-ollama-q4
- q8_0 GGUFバージョン:
ollama run wangshenzhi/llama3-8b-chinese-chat-ollama-q8
- f16 GGUFバージョン:
ollama run wangshenzhi/llama3-8b-chinese-chat-ollama-fp16
- オンラインインタラクティブデモ を提供しています。
Llama3-8B-Chinese-Chat-v2
- 学習データセットはv1と比較して5倍に拡大(約100Kの嗜好ペア)しており、ロールプレイ、ツール使用、数学的能力が大幅に向上しています。
- 公式の f16 GGUF と 8bit量子化GGUF バージョンを提供しており、それぞれ ここ、ここ から入手できます。
- オンラインインタラクティブデモ を提供しています。
Llama3-8B-Chinese-Chat-v1
- 公式の f16 GGUF と 8bit量子化GGUF バージョンを提供しており、それぞれ ここ、ここ から入手できます。
- 公式の Ollamaモデル を提供しており、以下のコマンドですぐに使用できます。
- f16 GGUFバージョン:
ollama run wangshenzhi/llama3-8b-chinese-chat-ollama-fp16
- 8bit量子化GGUFバージョン:
ollama run wangshenzhi/llama3-8b-chinese-chat-ollama-q8
- 中国にいる場合は、 Gitee AIリポジトリ からv1モデルをダウンロードできます。
サンプル表示
以下は、Llama3-8B-Chinese-Chat-v2.1が生成した一部のサンプルで、ロールプレイ、関数呼び出し、数学、弱智バー、セキュリティ、執筆、コーディングなどの分野をカバーしています。
- ロールプレイサンプル:Taylor Swift、周杰伦、シェイクスピア、諸葛亮などの役割を演じた会話が含まれています。
- 関数呼び出しサンプル:インターネット検索、メール送信などのツールを使用した操作のサンプルが示されています。
- 数学サンプル:年齢計算、数学コンテストの受賞者数計算などの数学問題の解答が含まれています。
- 弱智バーサンプル:ブルートゥースイヤホンの修理、ランチミートの食べる時間などの面白い質問と回答が提供されています。
- セキュリティサンプル:違法薬物の製造情報を提供しない原則を強調し、合法的に疼痛管理の支援を求めるアドバイスが与えられています。
- 執筆サンプル:人工知能の総説、詩の創作などの内容が含まれています。
- コーディングサンプル:Pythonでのクイックソートアルゴリズム(再帰と非再帰)、C++でのKMPアルゴリズムのコードが提供されています。
引用情報
もしLlama3-8B-Chinese-Chatがあなたに役立った場合は、以下の形式で引用してください。
@misc {shenzhi_wang_2024,
author = {Wang, Shenzhi and Zheng, Yaowei and Wang, Guoyin and Song, Shiji and Huang, Gao},
title = { Llama3-8B-Chinese-Chat (Revision 6622a23) },
year = 2024,
url = { https://huggingface.co/shenzhi-wang/Llama3-8B-Chinese-Chat },
doi = { 10.57967/hf/2316 },
publisher = { Hugging Face }
}
🔧 技術詳細
このモデルは Meta-Llama-3-8B-Instructモデル をベースに、ORPO [1] 方法を使用して中国語と英語のユーザー向けに特別に微調整された最初のモデルです。元のモデルと比較して、Llama3-8B-Chinese-Chat-v1は「中国語の質問に英語で回答する」問題や、返答中の中英語の混在を大幅に減少させています。v1と比較して、v2モデルの学習データ量は大幅に増加し、性能が著しく向上しています。
[1] Hong, Jiwoo, Noah Lee, and James Thorne. "Reference-free Monolithic Preference Optimization with Odds Ratio." arXiv preprint arXiv:2403.07691 (2024).
学習フレームワーク:LLaMA-Factory。
学習詳細:
- 学習エポック数:2
- 学習率:5e-6
- 学習率スケジューラタイプ:cosine
- ウォームアップ比率:0.1
- カットオフ長(コンテキスト長):8192
- orpo beta(ORPO論文の $\lambda$):0.05
- グローバルバッチサイズ:128
- 微調整タイプ:全パラメータ
- オプティマイザ:paged_adamw_32bit
📄 ライセンス
このモデルは Llama-3ライセンス に従っています。