🚀 Gemma2b土耳其语指令模型卡
本模型是使用土耳其语指令 - 响应对微调的Gemma - 2b模型,可用于文本生成任务。
🚀 快速开始
模型使用示例
以下是使用该模型进行文本生成的Python代码示例:
import torch,re
from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_use_double_quant=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=torch.bfloat16
)
from transformers import AutoTokenizer, AutoModelForCausalLM
model_id = "erythropygia/Gemma2b-Turkish-Instruction"
model = AutoModelForCausalLM.from_pretrained(model_id, quantization_config=bnb_config, device_map={"":0})
tokenizer = AutoTokenizer.from_pretrained(model_id, add_eos_token=True, padding_side="left")
def get_completion(query: str, model, tokenizer) -> str:
device = "cuda:0"
prompt_template = """
<start_of_turn>user
Alt satırdaki soruya cevap ver:\n
{query}
<end_of_turn>\n<start_of_turn>model
"""
prompt = prompt_template.format(query=query)
encodeds = tokenizer(prompt, return_tensors="pt", add_special_tokens=True)
model_inputs = encodeds.to(device)
generated_ids = model.generate(**model_inputs, max_new_tokens = 256, do_sample=True, pad_token_id=tokenizer.eos_token_id)
decoded = tokenizer.decode(generated_ids[0], skip_special_tokens=False)
decoded = re.sub(r'<(end_of_turn|start_of_turn|eos|bos)>[^<]*$', '', decoded)
decoded = re.sub(r'<(end_of_turn|start_of_turn|eos|bos)>', '', decoded)
return decoded.strip()
result = get_completion(query="int türünde üç parametre alan ve bunların toplamını döndüren bir işlev oluşturun.", model=model, tokenizer=tokenizer)
print(result)
✨ 主要特性
- 使用土耳其语指令 - 响应对微调Gemma - 2b模型,适用于土耳其语的文本生成任务。
📦 训练信息
训练数据
训练超参数
- 训练轮数(Epochs):1
- 最大步数(MaxSteps):300
- 上下文长度(Context length):1024
- LoRA秩(LoRA Rank):32
- LoRA Alpha:64
- LoRA丢弃率(LoRA Dropout):0.05
训练结果
- 训练损失(training_loss):2.077697410186132 (如果有足够的GPU资源,结果可能会更好)
📄 许可证
本模型采用CC - BY - NC - 4.0许可证。Gemma模型遵循在ai.google.dev/gemma/terms上找到的Gemma使用条款。在开始使用该模型之前,请参考Gemma的使用限制:https://ai.google.dev/gemma/terms#3.2-use
⚠️ 重要提示
请遵守Gemma的使用条款和使用限制,确保合法使用该模型。