🚀 emre/gemma-2-9b-Turkish-Lora-Continue-Pre-Trained
本模型是 google/gemma-2-9b
基礎模型的繼續預訓練版本,在土耳其語維基百科數據集上進行訓練,旨在提升基礎模型對土耳其語文本的理解和生成能力。
🚀 快速開始
你可以使用 Python 中的 transformers
和 peft
庫輕鬆加載和使用此模型:
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
import torch
model_name = "google/gemma-2-9b"
peft_model_id = "emre/gemma-2-9b-Turkish-Lora-Continue-Pre-Trained"
tokenizer = AutoTokenizer.from_pretrained(model_name)
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_use_double_quant=True,
bnb_4bit_compute_dtype=torch.float16
)
base_model = AutoModelForCausalLM.from_pretrained(
model_name,
quantization_config=bnb_config,
device_map="auto",
torch_dtype=torch.float16,
attn_implementation="eager"
)
model = PeftModel.from_pretrained(base_model, peft_model_id)
model.eval()
if torch.cuda.is_available():
model = model.to("cuda")
prompt = "Türkiye'nin başkenti neresidir?"
input_ids = tokenizer(prompt, return_tensors="pt").to(model.device)
with torch.no_grad():
outputs = model.generate(**input_ids, max_new_tokens=50, num_return_sequences=1)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
✨ 主要特性
- 商業使用:僅對 BBVA 集團提供商業使用,學術和研究目的可免費使用。
- 模型類型:因果語言模型。
- 語言支持:專注於土耳其語(tr)。
- 訓練方式:基於
google/gemma-2-9b
基礎模型,使用低秩自適應(LoRA)在土耳其語維基百科數據集上繼續預訓練。
📚 詳細文檔
模型詳情
用途
直接使用
此模型可用於生成土耳其語文本,適用於各種自然語言處理任務,例如:
- 文本生成
- 語言建模
- 創意寫作
- 基於土耳其語文本回答問題(需適當提示)
下游使用
該模型可作為強大的基礎,用於在土耳其語的特定下游任務上進行進一步微調,例如:
- 土耳其語文本摘要
- 土耳其語問答
- 土耳其語文本分類
- 土耳其語對話生成
不適用場景
此模型不應用於生成有害、不道德或有偏見的內容。由於它是在大量文本語料庫上訓練的,可能會無意中生成此類內容。用戶在部署此模型時應謹慎並承擔責任。
偏差、風險和侷限性
該模型在土耳其語維基百科數據集上訓練,可能包含原始數據中的偏差。模型的性能可能因具體任務和領域而異。用戶應瞭解這些侷限性,並針對特定用例進行全面評估。
建議
用戶在將模型部署到實際應用之前,應仔細評估其輸出並考慮潛在的偏差。在特定任務和多樣化的土耳其語數據集上進行進一步微調,有助於減輕其中一些侷限性。
訓練詳情
訓練數據
模型在 Alaeddin/wikipedia-turkish 數據集上訓練:
- 訓練集:1,620,000 個段落。
- 驗證集:1,000 個段落(與訓練集不相交)。
訓練過程
模型使用 Hugging Face 的 Trainer
API 在配備 A100 GPU(40GB)的 Google Colab Pro+ 實例上進行訓練。關鍵設置包括:
- 量化:4 位,NF4 類型和雙量化(
BitsAndBytesConfig
)。
- LoRA 配置:
- 秩(
r
):8
- 阿爾法(
lora_alpha
):32
- 目標模塊:
q_proj
,v_proj
- 丟棄率:0.1
- 訓練參數:
- 輪數:1
- 有效批量大小:8(
per_device_train_batch_size=2
,gradient_accumulation_steps=4
)
- 學習率:2e-5
- 調度器:線性,500 個熱身步驟
- 混合精度:FP16
- 評估頻率:每 5,000 步
- 總步數:202,500
訓練超參數
- 訓練機制:FP16 混合精度
- 優化器:AdamW(融合實現)
速度、大小、時間
- 時長:約 110 小時
- 硬件:A100 GPU(40GB)
- 可訓練參數:4,472,832(佔總 9,246,178,816 個參數的 0.0484%)
評估
測試數據、因素和指標
- 測試數據:來自土耳其語維基百科數據集的 1,000 個段落,預留為驗證集。
- 指標:
- 驗證損失:衡量模型在驗證集上的預測誤差。
- 困惑度:表示模型預測下一個標記的能力(越低越好)。
結果
模型 |
驗證損失 |
困惑度 |
預訓練核心(Gemma-2-9b) |
2.5168 |
12.39 |
繼續預訓練(LoRA) |
2.1027 |
8.19 |
經 LoRA 適配的模型在土耳其語文本上明顯優於基礎模型。
環境影響
使用 機器學習影響計算器 估算碳排放:
- 硬件類型:A100 GPU(40GB)
- 使用時長:110 小時
- 雲服務提供商:Google Colab
- 計算區域:未知(估算時假設為 us-central1)
- 碳排放:約 22 千克 CO2 當量(基於 44 千瓦時,0.5 千克 CO2/千瓦時)
注意:實際排放量取決於計算區域的能源結構。
📄 許可證
Gemma,僅限 BBVA,學術免費
📖 引用
@misc{tasar2023gemma2turkish,
author = {Davut Emre Tasar},
title = {Gemma-2-9b Turkish LoRA Continue Pre-Trained Model},
year = {2025},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/emre/gemma-2-9b-Turkish-Lora-Continue-Pre-Trained}}
}