Team Ai
Datasetpublic

WrittenWithRust/Magicoder-OSS-Instruct-Rust-TR-3.9K

🦀 Magicoder-OSS-Instruct-Rust-Turkish (3.9K) Magicoder-OSS-Instruct-Rust-Turkish, WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K veri setindeki 3.909 adet sentaksı doğrulanmış İngilizce Rust instruction örneğinin tamamen Türkçe diline çevrilmesiyle oluşturulmuş yüksek kaliteli bir kod veri setidir. Bu veri seti, Büyük Dil Modellerine (LLM) Türkçe Rust kodlama becerisi, problem çözme yeteneği ve karmaşık mimarileri açıklama kabiliyeti kazandırmak üzere Instruction… See the full description on the dataset page: https://huggingface.co/datasets/WrittenWithRust/Magicoder-OSS-Instruct-Rust-TR-3.9K.

sourceHugging Facemitupdated 1mo agoView on Hugging Face
0likes36downloads
README.md153 linesDownload Raw Back to root
1---2license: mit3language:4- tr5tags:6- rust7- code8- instruction-tuning9- magicoder10- oss-instruct11- turkish12- translation13- qwen14pretty_name: Magicoder OSS Instruct Rust Turkish (3.9K)15size_categories:16- 1K<n<10K17task_categories:18- text-generation19---20 21# 🦀 Magicoder-OSS-Instruct-Rust-Turkish (3.9K)22 23**Magicoder-OSS-Instruct-Rust-Turkish**, [WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K](https://huggingface.co/datasets/WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K) veri setindeki **3.909** adet sentaksı doğrulanmış İngilizce Rust instruction örneğinin tamamen Türkçe diline çevrilmesiyle oluşturulmuş yüksek kaliteli bir kod veri setidir.24 25Bu veri seti, Büyük Dil Modellerine (LLM) Türkçe Rust kodlama becerisi, problem çözme yeteneği ve karmaşık mimarileri açıklama kabiliyeti kazandırmak üzere **Instruction Tuning / Fine-Tuning (SFT)** süreçleri için tasarlanmıştır.26 27Çeviri süreci; kod yapısını, değişken adlarını, fonksiyon imzalarını ve sentaksı tam olarak korurken doğal ve teknik açıdan doğru bir Türkçe kullanım sağlamak amacıyla **Qwen 3.8 27B** modeli kullanılarak gerçekleştirilmiştir.28 29---30 31## 📌 Veri Seti Öne Çıkan Özellikleri32 33- **İngilizce Ana Veri Seti:** [WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K](https://huggingface.co/datasets/WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K) (3,909 Örnek)34- **Orijinal Kaynak:** [ise-uiuc/Magicoder-OSS-Instruct-75K](https://huggingface.co/datasets/ise-uiuc/Magicoder-OSS-Instruct-75K)35- **Çevrilen Örnek Sayısı:** 3,909 Örnek (Tamamı Türkçe)36- **Çeviri Modeli:** `Qwen 3.8 27B`37- **Kalite Kontrolü:** Orijinal veri seti `rustc` bellek içi (RAM) sentaks kontrolünden geçirilmiş olup Türkçe çeviri sürecinde kod blokları ve teknik terminoloji koruma altına alınmıştır.38- **Veri Formatı:** Hugging Face `messages` / ChatML (SFTTrainer ve OpenAI Chat API formatına tam uyumlu)39 40---41 42## 📊 Veri Seti Yapısı ve Alanlar (Fields)43 44| Alan (Field) | Tip | Açıklama |45| :--- | :--- | :--- |46| `id` | `int64` | Örneğe ait orijinal indeks numarası |47| `task_category` | `string` | Görev kategorisi belirteci (`oss_instruct`) |48| `messages` | `list` | Modellere ince ayar yapmak için diyalog yapısı (`system`, `user`, `assistant`) |49 50---51 52## 🔍 Örnek Veriler (Examples)53 54### 1. Veri Yapısı Tasarımı (`Quadtree`)55```json56{57  "id": 2629,58  "task_category": "oss_instruct",59  "messages": [60    {61      "role": "system",62      "content": "Sen Rust programlama problemlerini çözen ve doğru kod üreten uzman bir asistansın."63    },64    {65      "role": "user",66      "content": "Rust'ta tiplemiş (typed) bir quadtree (dört dallı ağaç) veri yapısını uygulamakla görevlendirildiniz. Quadtree, her iç düğümün tam olarak dört çocuğa sahip olduğu bir ağaç veri yapısıdır. Genellikle, iki boyutlu bir uzayı dört çeyreğe veya bölgeye rekürsif olarak alt bölümlere ayırarak parçalamak için kullanılır. Bu problemde, uzamsal verileri verimli bir şekilde depolayabilen ve yönetebilen tiplemiş bir quadtree oluşturacaksınız.\n\nSize, daha büyük bir yapıda (struct) veya trait içinde `typed_quadtree` adlı bir fonksiyonun metod imzasını içeren bir kod parçası verilmektedir. Fonksiyonun, `Self::PartId` genel tip parametresine sahip bir `QBVH`'nin (Quadtree Bounding Volume Hierarchy - Quadtree Sınırlayıcı Hacim Hiyerarşisi) referansını döndürmesi beklenmektedir. `QBVH`, uzamsal parçalamada ve sorgulamada kullanılan özel bir quadtree veri yapısıdır.\n\nGöreviniz, bir quadtree uygulaması bağlamında `typed_quadtree` metodunu uygulamaktır. `QBVH` tipini tanımlamalı ve metodun bu tipe bir referans döndürmesini sağlamalısınız. Ayrıca, quadtree'nin nasıl inşa edildiğini ve uzamsal verilerin quadtree yapısı içinde verimli bir şekilde nasıl depolanıp sorgulandığını göz önünde bulundurmanız gerekir.\n\nUygulamanız Rust'un sahiplik (ownership) ve ödünç alma (borrowing) kurallarına uymalı ve quadtree kullanarak uzamsal verileri yönetmenin açık ve verimli bir yolunu sunmalıdır.\n\nRust'ta işlevsel ve verimli bir tiplemiş quadtree veri yapısı oluşturmak için `typed_quadtree` metodunu uygulayın ve `QBVH` tipini tanımlayın."67    },68    {69      "role": "assistant",70      "content": "```rust\n// QBVH (Quadtree Bounding Volume Hierarchy) tipini tanımla\nstruct QBVH<PartId> {\n    // Quadtree düğümünün yapısını tanımla\n    // Bu, uzamsal sınırlar, veri ve çocuk düğümler için alanları içerebilir\n    // Örneğin:\n    // bounds: BoundingBox,\n    // data: Option<DataType>,\n    // children: Option<Box<[QBVH<PartId>; 4]>>\n}\n\n// Daha büyük bir struct veya trait içinde typed_quadtree metodunu uygula\nimpl YourStructOrTrait {\n    // QBVH'ye bir referans döndüren typed_quadtree metodunu uygula\n    fn typed_quadtree(&self) -> &QBVH<Self::PartId> {\n        // Quadtree yapısını oluştur ve döndür\n        // Bu, kök düğümün oluşturulmasını ve uzayın rekürsif olarak alt bölümlere ayrılmasını içerebilir\n        // Örneğin:\n        // let root_node = QBVH {\n        //     bounds: initial_bounds,\n        //     data: None,\n        //     children: Some(Box::new([QBVH { /* Child node 1 */ }, QBVH { /* Child node 2 */ }, QBVH { /* Child node 3 */ }, QBVH { /* Child node 4 */ }])),\n        // };\n        // &root_node\n    }\n}\n```\n\nÇözümde, quadtree'nin düğümlerini temsil eden `QBVH` tipi tanımlanır. `typed_quadtree` metodu, quadtree yapısını oluşturmak ve bu yapıya bir referans döndürmek için uygulanır. Quadtree inşasının ve yönetiminin gerçek uygulaması, uzamsal veri depolama ve sorgulama için belirli gereksinimlere ve kullanım senaryolarına bağlı olacaktır."71    }72  ]73}74```75 76### 2. Uygulama Mimarisi ve CRUD Mantığı (`TaskManager`)77```json78{79  "id": 3858,80  "task_category": "oss_instruct",81  "messages": [82    {83      "role": "system",84      "content": "Sen Rust programlama problemlerini çözen ve doğru kod üreten uzman bir asistansın."85    },86    {87      "role": "user",88      "content": "Rust kullanarak basitleştirilmiş bir görev yönetimi sistemi implemente etmeniz gerekiyor. Sistem, kullanıcıların görev oluşturmalarına, getirmelerine, güncellemelerine ve silmelerine olanak sağlamalıdır. Bunu başarmak için bir `TaskManager` struct'ı tanımlamanız ve görev yönetimi için birkaç metot implemente etmeniz gerekiyor.\n\n`TaskManager` struct'ı için `tasks` adında bir metot tanımlayan bir kod parçası size sağlanmıştır. Bu metot, görev kimliklerini (task IDs) ve bunlara karşılık gelen görevleri içeren bir `MetroHashMap`'e referans döndürür.\n\nGöreviniz, `TaskManager` struct'ını ve ilişkili metotlarını (`new`, `create_task`, `get_task`, `update_task` ve `delete_task` dahil) implemente etmektir.\n\nAyrıca, görev kimliklerini ve bunlara karşılık gelen görevleri içeren `MetroHashMap`'e referans döndüren bir `tasks` metotu da yazmalısınız.\n\nImplementasyonunuz aşağıdaki spesifikasyonlara uymalıdır:\n- `Task` struct'ı en az `TaskId` tipinde bir `id` alanı ve `String` tipinde bir `description` alanı içermelidir.\n- `TaskManager` struct'ı `MetroHashMap<TaskId, Task>` tipinde bir `tasks` alanı içermelidir.\n- `new` metodu, boş bir `tasks` haritasıyla yeni bir `TaskManager` örneği oluşturmalıdır.\n- `create_task` metodu, `tasks` haritasına yeni bir görev eklemelidir.\n- `get_task` metodu, sağlanan `TaskId`'ye göre `tasks` haritasından bir görev getirmelidir.\n- `update_task` metodu, `tasks` haritasındaki mevcut bir görevi güncellemelidir.\n- `delete_task` metodu, sağlanan `TaskId`'ye göre `tasks` haritasından bir görevi silmelidir.\n- `tasks` metodu, görev kimliklerini ve bunlara karşılık gelen görevleri içeren `MetroHashMap`'e referans döndürmelidir.\n\nBelirtilen işlevselliği başarmak için `Task` ve `TaskManager` struct'larını ve ilişkili metotlarını implemente edin."89    },90    {91      "role": "assistant",92      "content": "```rust\nuse metrohash::MetroHashMap;\n\ntype TaskId = u64;\n\nstruct Task {\n    id: TaskId,\n    description: String,\n}\n\nstruct TaskManager {\n    tasks: MetroHashMap<TaskId, Task>,\n}\n\nimpl TaskManager {\n    fn new() -> Self {\n        TaskManager {\n            tasks: MetroHashMap::new(),\n        }\n    }\n\n    fn create_task(&mut self, id: TaskId, description: String) {\n        let task = Task { id, description };\n        self.tasks.insert(id, task);\n    }\n\n    fn get_task(&self, id: TaskId) -> Option<&Task> {\n        self.tasks.get(&id)\n    }\n\n    fn update_task(&mut self, id: TaskId, description: String) -> Option<&Task> {\n        if let Some(task) = self.tasks.get_mut(&id) {\n            task.description = description;\n            Some(task)\n        } else {\n            None\n        }\n    }\n\n    fn delete_task(&mut self, id: TaskId) -> Option<Task> {\n        self.tasks.remove(&id)\n    }\n\n    fn tasks(&self) -> &MetroHashMap<TaskId, Task> {\n        &self.tasks\n    }\n}\n\nfn main() {\n    let mut task_manager = TaskManager::new();\n    task_manager.create_task(1, String::from(\"Task 1\"));\n    task_manager.create_task(2, String::from(\"Task 2\"));\n\n    if let Some(task) = task_manager.get_task(1) {\n        println!(\"Task 1: {}\", task.description);\n    }\n\n    if let Some(updated_task) = task_manager.update_task(2, String::from(\"Updated Task 2\")) {\n        println!(\"Updated Task 2: {}\", updated_task.description);\n    }\n\n    if let Some(deleted_task) = task_manager.delete_task(1) {\n        println!(\"Deleted Task: {}\", deleted_task.description);\n    }\n\n    for (id, task) in task_manager.tasks() {\n        println!(\"Task {}: {}\", id, task.description);\n    }\n}\n```"93    }94  ]95}96```97 98---99 100## 💻 Kullanım (Usage)101 102```python103from datasets import load_dataset104 105# Veri setini yükleyin106dataset = load_dataset("WrittenWithRust/Magicoder-OSS-Instruct-Rust-Turkish-3.9K")107 108# İlk örneği inceleyin109print(dataset["train"][0])110```111 112---113 114## 📜 Lisans ve Atıflar (License & Citation)115 116Bu veri seti [WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K](https://huggingface.co/datasets/WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K) veri setinin Türkçe çevirisidir.117 118### Bu Türkçe Veri Seti İçin Atıf119 120```bibtex121@misc{magicoder_oss_instruct_rust_turkish_3k9,122  author = {WrittenWithRust},123  title = {Magicoder-OSS-Instruct-Rust-Turkish-3.9K: A Turkish Translated Instruction Dataset for LLM Fine-Tuning on Rust Code},124  year = {2026},125  publisher = {Hugging Face},126  journal = {Hugging Face Repository},127  howpublished = {\url{[https://huggingface.co/datasets/WrittenWithRust/Magicoder-OSS-Instruct-Rust-Turkish-3.9K](https://huggingface.co/datasets/WrittenWithRust/Magicoder-OSS-Instruct-Rust-Turkish-3.9K)}},128  note = {Translated from WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K using Qwen 3.8 27B}129}130```131 132### İngilizce Ana Veri Seti Atıfı133 134```bibtex135@misc{magicoder_oss_instruct_rust_cleaned_3k9,136  author = {WrittenWithRust},137  title = {Magicoder-OSS-Instruct-Rust-cleaned-3.9K: Syntax-Verified Rust Instruction Dataset},138  year = {2026},139  publisher = {Hugging Face},140  howpublished = {\url{[https://huggingface.co/datasets/WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K](https://huggingface.co/datasets/WrittenWithRust/Magicoder-OSS-Instruct-Rust-cleaned-3.9K)}}141}142```143 144### Orijinal Magicoder Çalışması145 146```bibtex147@article{wei2023magicoder,148  title={Magicoder: Source Code Is All You Need},149  author={Wei, Yuxiang and Wang, Zhe and Liu, Jiawei and Ding, Yuhang and Zhang, Lingming},150  journal={arXiv preprint arXiv:2312.02120},151  year={2023}152}153```