🚀 Llama 3-8B トルコ語モデル
このリポジトリには、トルコ語版Llama 3プロジェクトの実験・教育目的で微調整されたモデルと、様々な用途に使用できるバリアントが含まれています。
実際に学習されたモデルは、UnslothのLlama 3-8B量子化モデルのアダプターモデルで、その後llama.cppを使用して.gguf形式に、vLLM用に.bin形式に変換されます。
このモデルはさらなる開発が可能で、質の高いデータを入手したら、引き続きモデルの学習を行います。一部のトルコ語データセットは英語からの翻訳品質が低いため、すべてのデータセットを使用することはできません。
微調整コードにはこちらからアクセスできます。
NVIDIA L4を使用して150ステップで学習を行い、約8分かかりました。
🚀 クイックスタート
このモデルは、トルコ語版Llama 3プロジェクトのために微調整されたアダプターモデルです。以下のセクションでは、このモデルの使用方法を説明します。
✨ 主な機能
- トルコ語に特化した微調整モデルで、トルコ語の自然言語処理タスクに適しています。
- アダプターモデル形式で提供され、PEFTライブラリを使用して簡単に統合できます。
- .gguf形式と.bin形式に変換可能で、llama.cppとvLLMで使用できます。
💻 使用例
基本的な使用法
PEFTを使用してアダプターモデルを利用することができます。
from peft import PeftModel, PeftConfig
from transformers import AutoModelForCausalLM, AutoTokenizer
base_model = AutoModelForCausalLM.from_pretrained("unsloth/llama-3-8b-bnb-4bit")
model = PeftModel.from_pretrained(base_model, "myzens/llama3-8b-tr-finetuned")
tokenizer = AutoTokenizer.from_pretrained("myzens/llama3-8b-tr-finetuned")
alpaca_prompt = """
Instruction:
{}
Input:
{}
Response:
{}"""
inputs = tokenizer([
alpaca_prompt.format(
"",
"Ankara'da gezilebilecek 3 yeri söyle ve ne olduklarını kısaca açıkla.",
"",
)], return_tensors = "pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=256)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
高度な使用法
Transformersライブラリを直接使用することもできます。
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("myzens/llama3-8b-tr-finetuned")
model = AutoModelForCausalLM.from_pretrained("myzens/llama3-8b-tr-finetuned")
alpaca_prompt = """
Instruction:
{}
Input:
{}
Response:
{}"""
inputs = tokenizer([
alpaca_prompt.format(
"",
"Ankara'da gezilebilecek 3 yeri söyle ve ne olduklarını kısaca açıkla.",
"",
)], return_tensors = "pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=192)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
パイプラインを使用した使用法
Transformersのパイプラインを使用して、簡単にテキスト生成を行うことができます。
from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline
tokenizer = AutoTokenizer.from_pretrained("myzens/llama3-8b-tr-finetuned")
model = AutoModelForCausalLM.from_pretrained("myzens/llama3-8b-tr-finetuned")
pipe = pipeline("text-generation", model=model, tokenizer=tokenizer)
alpaca_prompt = """
Instruction:
{}
Input:
{}
Response:
{}"""
input = alpaca_prompt.format(
"",
"Ankara'da gezilebilecek 3 yeri söyle ve ne olduklarını kısaca açıkla.",
"",
)
pipe(input)
出力例
Instruction:
Input:
Ankara'da gezilebilecek 3 yeri söyle ve ne olduklarını kısaca açıkla.
Response:
1. Anıtkabir - Mustafa Kemal Atatürk'ün mezarı
2. Gençlik ve Spor Sarayı - spor etkinliklerinin yapıldığı yer
3. Kızılay Meydanı - Ankara'nın merkezinde bulunan bir meydan
⚠️ 重要提示
- Alpacaプロンプトテンプレートまたは別のテンプレートを使用することをお勧めします。そうしないと、意味のない生成結果や同じ文を繰り返す結果が得られることがあります。
- CUDA対応のGPUを使用してモデルを実行してください。
📄 ライセンス
このモデルは、Apache 2.0ライセンスの下で提供されています。
微調整: emre570