SalihHub commited on
Commit
65bb73b
·
verified ·
1 Parent(s): 0ee469c

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +93 -3
README.md CHANGED
@@ -1,3 +1,93 @@
1
- ---
2
- license: mit
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - tr
4
+ license: apache-2.0
5
+ library_name: peft
6
+ base_model: vngrs-ai/Kumru-2B
7
+ tags:
8
+ - lora
9
+ - turkish
10
+ - rap
11
+ - lyrics
12
+ - text-generation
13
+ - peft
14
+ - chatml
15
+ pipeline_tag: text-generation
16
+ ---
17
+
18
+ # Kumru-2B Turkish Rap LoRA — Sagopa Kajmer & Ceza
19
+
20
+ Two LoRA adapters fine-tuned on **[vngrs-ai/Kumru-2B](https://huggingface.co/vngrs-ai/Kumru-2B)** (2B param, Turkish LLM) for generating rap lyrics in the styles of **Sagopa Kajmer** and **Ceza**.
21
+
22
+ ## Models
23
+
24
+ | | Sagopa Kajmer | Ceza |
25
+ |---|---|---|
26
+ | **Base Model** | vngrs-ai/Kumru-2B | vngrs-ai/Kumru-2B |
27
+ | **LoRA Rank** | 16 | 8 |
28
+ | **LoRA Alpha** | 32 | 16 |
29
+ | **Dropout** | 0.05 | 0.3 |
30
+ | **Target Modules** | q/k/v/o_proj, gate/up/down_proj | q/k/v/o_proj, gate/up/down_proj |
31
+ | **Style** | Melankolik, meditativ, felsefi metaforlar | Hızlı flow, sert punchline, agresif enerji |
32
+ | **Folder** | `SagoWeights/` | `CezaWeights/` |
33
+
34
+ ## Training
35
+
36
+ - **Method:** SFT with PEFT/LoRA
37
+ - **Base Model:** [vngrs-ai/Kumru-2B](https://huggingface.co/vngrs-ai/Kumru-2B) — 2B parameter Turkish causal LM
38
+ - **Data:** ~120 Sagopa Kajmer lyrics + ~100 Ceza lyrics, manually curated and cleaned
39
+ - **Format:** ChatML (`<|im_start|>user` / `<|im_end|>`)
40
+ - **Framework:** Transformers + PEFT 0.18.1
41
+ - **Hardware:** Single T4 GPU (Colab)
42
+
43
+ ## Usage
44
+
45
+ ```python
46
+ import torch
47
+ from transformers import AutoModelForCausalLM, AutoTokenizer
48
+ from peft import PeftModel
49
+
50
+ # Load base
51
+ tokenizer = AutoTokenizer.from_pretrained("vngrs-ai/Kumru-2B")
52
+ base_model = AutoModelForCausalLM.from_pretrained(
53
+ "vngrs-ai/Kumru-2B",
54
+ torch_dtype=torch.bfloat16,
55
+ device_map="auto",
56
+ )
57
+
58
+ # Load LoRA (pick one)
59
+ model = PeftModel.from_pretrained(base_model, "SalihHub/Kumru_2B_TurkRap", subfolder="SagoWeights")
60
+ # model = PeftModel.from_pretrained(base_model, "SalihHub/Kumru_2B_TurkRap", subfolder="CezaWeights")
61
+
62
+ # Generate
63
+ theme = "Gece yarısı sokakların sessizliğinde kaybolan bir adam"
64
+
65
+ prompt = (
66
+ "<|im_start|>user\n"
67
+ "Asagidaki temada Sagopa Kajmer tarzi bir rap verse'u yaz.\n"
68
+ f"{theme}\n"
69
+ "<|im_end|>\n"
70
+ "<|im_start|>assistant\n"
71
+ )
72
+
73
+ inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
74
+ output = model.generate(
75
+ **inputs,
76
+ max_new_tokens=512,
77
+ temperature=0.8,
78
+ top_p=0.9,
79
+ repetition_penalty=1.3,
80
+ do_sample=True,
81
+ )
82
+ print(tokenizer.decode(output[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))
83
+ ```
84
+
85
+ ## Example Output
86
+
87
+ **Theme:** *İki kişinin zaman algısının farklılığı*
88
+
89
+ **Sagopa:**
90
+ > Abi beat'ler dönerken stüdyo loş ışıkta, ritim beni vuruyor gece yarısı geceye doğru. Zamanı unuttum burada, hızlı akan bir nehrin üstünde sürükleniyoruz sanki...
91
+
92
+ **Ceza:**
93
+ > Aslında, bu flow yavaş akan nehir gibi – bir yanda rüzgarın nefesi, öbür yanda dalgaların öfkesi var ya… Zaman aynı akmıyor be! Sen zamanın kölesisin, bense ritmin kaptanı...