🚀 OpenR1-Qwen-7B-Turkish 🚀
このモデルは、Qwen2.5-Instruct を WiroAI/dolphin-r1-turkish でファインチューニングしたものです。
🚀 クイックスタート
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "OpenR1-Qwen-7B-Turkish"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
prompt = "$4x+5 = 6x+7$ denklemini sağlayan $x$ değerini bul."
messages = [
{"role": "system", "content": "Lütfen adım adım düşün ve cevapla."},
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(device)
generated_ids = model.generate(
model_inputs.input_ids,
max_new_tokens=4096
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
<|begin_of_thought|>
Tamam, yani 4x + 5 = 6x + 7 denklemini çözmem gerekiyor. Hımm, dur bakalım.
Cebirden hatırlıyorum ki denklemi doğru yapacak x değerini bulmam lazım.
Adım adım düşüneyim. Öncelikle, belki tüm x terimlerini bir tarafa ve sabitleri diğer tarafa almalıyım.
Bu şekilde, x'i yalnız bırakabilirim. Sol tarafta 4x var ve sağ tarafta 6x var.
Yani, her iki taraftan 4x çıkarırsam, bu bana 5 = 2x + 7 sonucunu verir. Dur, doğru mu? Kontrol edeyim.
Eğer orijinal denklem 4x + 5 = 6x + 7 ise ve her iki taraftan 4x çıkarırsam, evet, sol taraf 5 olur ve sağ taraf 6x - 4x, yani 2x olur, artı 7.
Yani şimdi 5 = 2x + 7 oldu. Pekala, şimdi 5 = 2x + 7'ye sahibim.
Bir sonraki adım, x'i çözmem gereken 2x'i izole etmek. Bu yüzden her iki taraftan 7 çıkarmalıyım.
Bunu yazayım. Her iki taraftan 7 çıkar: 5 - 7 = 2x + 7 - 7. Sağ tarafı basitleştirirsek, 7 - 7, 0 olur, yani 5 - 7 = 2x. Bu da -2 = 2x'e basitleşir.
Şimdi denklem -2 = 2x. x'i çözmek için her iki tarafı 2'ye bölmem gerekiyor.
Yapayım. Her iki tarafı 2'ye bölmek: (-2)/2 = (2x)/2. Bu da -1 = x'e basitleşir veya aynı şey x = -1.
Dur, bunun mantıklı olup olmadığını kontrol edeyim. x = -1'i orijinal denkleme geri takarak işe yarayıp yaramadığını doğrulayayım.
Orijinal denklem: 4x + 5 = 6x + 7. x = -1'i yerine koyarsak: Sol taraf: 4*(-1) + 5 = -4 + 5 = 1. Sağ taraf: 6*(-1) + 7 = -6 + 7 = 1.
Yani her iki taraf da 1'e eşit. Bu doğru. Yani x = -1 gerçekten de çözüm.
Ama hata yapmadığımdan emin olmak için adımları tekrar gözden geçireyim. 4x + 5 = 6x + 7 ile başlayarak.
Her iki taraftan 4x çıkar: 5 = 2x + 7. Sonra 7 çıkar: 5 - 7 = 2x => -2 = 2x. 2'ye böl: x = -1.
Evet, hepsi doğru görünüyor. Alternatif olarak, bu probleme yaklaşmanın başka bir yolu da önce tüm x terimlerini bir tarafa toplamak olabilir.
Bakalım. Eğer her iki taraftan 4x çıkarıp her iki taraftan 7 çıkarırsam, bu bana 5 - 7 = 6x - 4x sonucunu verir, bu da -2 = 2x demektir.
Sonra aynı sonuç. Yani yöntemden bağımsız olarak, aynı cevabı alıyoruz. Başka bir kontrol yolu da sayı doğrusu üzerinde düşünmek olabilir.
Eğer 4x + 5, 6x + 7'ye eşitse, o zaman 4x + 5'ten 6x + 7'ye olan mesafe sıfır olmalı.
Ama belki de bu işleri karmaşıklaştırıyor. Alternatif olarak, her iki taraftan 4x çıkararak 5 = 2x + 7 elde edelim. Sonra 7 çıkar: -2 = 2x.
Yani x, -1'dir. Evet, aynı cevap. Sanırım bu sağlam. Tüm adımlar kontrol edildi ve x = -1'i orijinal denkleme geri koymak işe yarıyor.
Yani çözüm x = -1 olmalı.
**Son Cevap** \\( x \\) değeri \\boxed{-1}'dir.
<|end_of_thought|>
<|begin_of_solution|>\n\\(4x + 5 = 6x + 7\\) denklemini çözmek için:\n\n1. Tüm \\(x\\) terimlerini bir tarafa ve sabitleri diğer tarafa taşımak için her iki taraftan \\(4x\\) çıkarın:\n \\[\n 4x + 5 - 4x = 6x + 7 - 4x\n \\]\n Bunu basitleştirdiğimizde şunu elde ederiz:\n \\[\n 5 = 2x + 7\n \\]\n\n2. \\(x\\) terimini yalnız bırakmak için her iki taraftan 7 çıkarın:\n \\[\n 5 - 7 = 2x + 7 - 7\n \\]\n Bunu basitleştirdiğimizde şunu elde ederiz:\n \\[\n -2 = 2x\n \\]\n\n3. Her iki tarafı 2'ye bölerek \\(x\\) için çözün:\n \\[\n \\frac{-2}{2} = \\frac{2x}{2}\n \\]\n Bunu basitleştirdiğimizde şunu elde ederiz:\n \\[\n x = -1\n \\]\n\nDoğrulama: \\(x = -1\\)'i orijinal denklemde yerine koyun:\n- Sol taraf: \\(4(-1) + 5 = -4 + 5 = 1\\)\n- Sağ taraf: \\(6(-1) + 7 = -6 + 7 = 1\\)\n\nHer iki taraf da eşit olduğundan, çözümün doğru olduğu doğrulanır.\n\n\\(x\\) değeri \\(\\boxed{-1}\\)'dir.\n<|end_of_solution|>
✨ 主な機能
- DeepSeekの蒸留モデルは、他の言語でプロンプトを与えられた場合でも、時々中国語や英語で推論することがあります。
- オープンソースモデルは、比較的低リソースの言語においてまだ改善の余地があります。
- R1を再現し、コミュニティに貢献する動機があります。
📦 トレーニング
- このモデルは、WiroAI/dolphin-r1-turkish データセットで2エポックのトレーニングを行いました。学習率は1e-5、最大シーケンス長は4096を使用しました。トレーニングは、10%のウォームアップフェーズを持つコサイン学習率スケジュールに従って行われました。
- トレーニングは、8台のA6000 ADAクラスタで3日間かかりました。
- 通常、R1チームは lighteval を使用して、OpenR1モデルのパフォーマンスをDeepSeek-Distill-Qwen-7BおよびOpenThinker-7Bと比較します。ただし、データセットは主に数学に関連しているため、何かを結論付けることはできず、デフォルトの結果は公開しません。
トレーニングと評価のコードは、こちらで見つけることができます:https://github.com/huggingface/open-r1/
📚 ドキュメント
🟡 評価
- 推論プロセスがわずかに改善されていることが観察されました。このモデルは、DeepSeekの推論モデルと比較して、トルコ語でより明確に思考します。
- このモデルは実験的な目的でトレーニングされており、ベンチマーク評価は大歓迎です。ただし、このモデルは通常のモデルと比較してより多くのトークンを生成し、推論中により多くのVRAMを消費することに注意してください。
- このモデルを評価する場合は、モデルが十分なトークンを生成できるようにしてください。4000トークン未満の出力に制限する生成要求は、結果が不十分になる可能性があります。
- 私たちは、民主化され、文化的に改善されたオープンソースモデルは、共有と実験を通じて実現されると信じています!
🤗 コミュニティ
- Huggingfaceのスタッフと、Open-R1プロジェクトに貢献してくれたすべての人に感謝します!
引用
@article{WiroAI,
title={WiroAI/OpenR1-Qwen-7B-Turkish,
author={Abdullah Bezir, Cengiz Asmazoğlu},
year={2025},
url={https://huggingface.co/WiroAI/OpenR1-Qwen-7B-Turkish}
}
📄 ライセンス
このプロジェクトは、Apache 2.0ライセンスの下で提供されています。詳細については、こちら を参照してください。