🚀 OrpoGemma-2-9B-TR
OrpoGemma-2-9B-TR 是 google/gemma-2-9b-it 的土耳其语微调版本。它使用 ORPO 训练器,在数据集 selimc/orpo-dpo-mix-TR-20k 的 1500 行子集上进行训练。

🚀 快速开始
本部分将为你介绍 OrpoGemma-2-9B-TR 模型的基本信息和使用方法。
✨ 主要特性
- 能够生成流畅、连贯且符合上下文的土耳其语文本。
- 可以针对广泛的指令和问题类型提供详细且有价值的回复。
📦 安装指南
文档未提及安装步骤,暂无法提供。
💻 使用示例
基础用法
from transformers import pipeline, BitsAndBytesConfig, AutoTokenizer
import torch
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_use_double_quant=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=torch.bfloat16
)
model_id = "selimc/OrpoGemma-2-9B-TR"
tokenizer = AutoTokenizer.from_pretrained(model_id)
pipe = pipeline(
"text-generation",
model=model_id,
model_kwargs={"torch_dtype": torch.bfloat16 ,'quantization_config': bnb_config},
tokenizer=tokenizer,
device_map="auto"
)
messages = [
{"role": "user", "content": "Gökyüzü neden mavi?"},
]
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
outputs = pipe(
prompt,
max_new_tokens=512,
do_sample=True,
eos_token_id=[pipe.tokenizer.convert_tokens_to_ids("<end_of_turn>"), pipe.tokenizer.eos_token_id],
temperature=0.67,
)
generated_text = outputs[0]['generated_text']
response = generated_text[len(prompt):]
print(response)
高级用法
示例 1
messages = [
{"role": "user", "content": """Bir web sayfasından tüm URL’leri çeken bir Python fonksiyonu yazın ve nasıl çalıştığını açıklayın."""},
]
示例 2
messages = [
{
"role": "system",
"content":
"""
Sen bir türkçe bilmece ustasısın. Görevin:
- Sorulan bilmecelere mantıklı ve doğru cevaplar vermek
- Bilmecenin çözümünü adım adım açıklamak
"""
},
{
"role": "user",
"content":
"""
Kanadı var, kuş değil.
Suda yüzer, gemi değil.
Kuyruğu var, kedi değil.
Bil bakalım, bu nedir?
"""
},
]
import requests
def get_urls_from_page(url):
"""
Bir web sayfasından tüm URL'leri çeker.
Args:
url (str): Web sayfasının URL'i.
Returns:
list: Web sayfasındaki tüm URL'ler.
"""
response = requests.get(url)
response.raise_for_status()
urls = []
for link in response.html.find_all('a', href=True):
urls.append(link['href'])
return urls
web_page_url = 'https://www.example.com/'
all_urls = get_urls_from_page(web_page_url)
print(f"Bu web sayfasındaki {len(all_urls)} URL bulunmaktadır:\n{all_urls}")
函数的工作原理:
-
引入 requests
库:该库用于访问网页。
-
定义 get_urls_from_page
函数:
- 该函数接收一个网页的 URL。
- 使用
requests.get()
访问网页,并使用 response.raise_for_status()
检查 HTTP 状态码是否在 200 - 399 范围内。
- 将 HTML 文档存储在
response.html
中。
- 使用
response.html.find_all('a', href=True)
查找所有具有 href
属性的 <a>
标签。
- 将 URL 添加到
urls
列表中。
- 返回
urls
列表。
-
示例用法:
- 将网页的 URL 赋值给
web_page_url
变量。
- 使用
get_urls_from_page
函数从网页中提取所有 URL。
- 使用
print()
函数打印 all_urls
列表。
Kanadı var, kuş değil, suda yüzer, gemi değil, kuyruğu var, kedi değil... Bu bir **balık**! 🐟
📚 详细文档
训练信息
QLoRA 配置
lora_r
: 16
lora_alpha
: 32
lora_dropout
: 0.05
ORPO 训练参数
lr
: 2e-6
epochs
: 3
per_device_train_batch_size
: 8
gradient_accumulation_steps
: 4
📈 训练曲线


OpenLLMTurkishLeaderboard_v0.2 结果
数据集 |
得分 |
MMLU_TR_V0.2 |
53.0% |
Truthful_QA_TR_V0.2 |
54.3% |
ARC_TR_V0.2 |
52.4% |
HellaSwag_TR_V0.2 |
52.0% |
GSM8K_TR_V0.2 |
64.8% |
Winogrande_TR_V0.2 |
58.9% |
平均 |
55.9% |
感谢 WiroAI 团队对我的模型进行评估。评估未使用任何推理引擎。
模型能力
- 能够生成流畅、连贯且符合上下文的土耳其语文本。
- 可以针对广泛的指令和问题类型提供详细且有价值的回复。
- 可能仍会产生不正确或无意义的输出,建议用户进行验证。
🔧 技术细节
文档未提供详细的技术实现细节,暂无法提供。
📄 许可证
本模型使用的许可证为 gemma。
引用
@misc{orpogemma2-9b-tr,
author = {Selim Çavaş},
title = {OrpoGemma-2-9B-TR: Turkish Fine-tuned Gemma Model},
year = {2024},
url = {https://huggingface.co/selimc/OrpoGemma-2-9B-TR}
}