Hesabınızla Özellikleri Keşfedin
Giriş Yap
Öne Çıkan Kategoriler
Giriş Yap
PWA & Zero Trust
Kod ve Yazılım

GRPO ve Unsloth ile Tek GPU'da Kendi 'Düşünen' Yapay Zeka Modelinizi Eğitme Rehberi

Yapay Zeka Evreni Admin 18 Oct 2026 2 okunma
Doğrudan Yanıt (AI Arama Özeti)

GRPO (Group Relative Policy Optimization), DeepSeek-R1 tarafından geliştirilen ve geleneksel pekiştirmeli öğrenmedeki (PPO) devasa 'eleştirmen model' ihtiyacını ortadan kaldırarak yanıtları grup içi göreli başarıya göre puanlayan algoritmadır. Unsloth kütüphanesiyle tek bir RTX 3090/4090 GPU üzerinde kendi düşünen modelinizi 1 saatte eğitebilirsiniz.

Yapay zeka ekosisteminde herkes DeepSeek-R1'in düşük maliyetini konuşurken, arkasındaki asıl mimari devrim olan GRPO (Group Relative Policy Optimization) algoritmasını gözden kaçırıyor. OpenAI'ın o1 modelinde kullandığı klasik PPO (Proximal Policy Optimization) yöntemi devasa bir ikinci eleştirmen (Critic) model gerektirdiği için süper bilgisayarlar haricinde eğitilemiyordu. GRPO, bu eleştirmen model ihtiyacını tamamen ortadan kaldırarak pekiştirmeli öğrenmeyi ev tipi ekran kartlarına indirdi.

PPO vs GRPO Karşılaştırma Tablosu

KriterGeleneksel PPO (OpenAI Modeli)DeepSeek GRPO (Unsloth)
Eleştirmen Modeli (Critic Network)Zorunlu (Aynı boyutta ikinci bir model gerekir)Yok (Grup içi göreli ortalama kullanılır)
GPU Bellek (VRAM) İhtiyacıMinimum 4–8 Adet A100/H100Tek bir 16–24 GB GPU (RTX 3090 / 4090)
Eğitim Süresi ve KarmaşıklıkGünler sürer, çökmelere hassastır1–2 saatte ilk <think> çıktıları başlar
Ödül Puanlama MantığıKarmaşık sinir ağı ödülüKural tabanlı (Format + Doğruluk formülü)

Adım 1: Unsloth ile GRPO Ortamının Kurulması

pip install unsloth vllm
pip install --upgrade --no-deps "trl<0.15.0" peft accelerate bitsandbytes

Adım 2: Ödül Fonksiyonlarının (Reward Functions) Tanımlanması

Modelin yanıt vermeden önce içsel düşünmesini sağlamak için iki basit ödül kuralı yazılır:

import re

def dogruluk_odulu(prompts, completions, answer, **kwargs):
    # Doğru cevaba tam puan (+2.0) ver
    responses = [c[0]['content'] for c in completions]
    return [2.0 if a.strip() in r else 0.0 for r, a in zip(responses, answer)]

def format_odulu(completions, **kwargs):
    # Modelin <think> ... </think> etiketlerini düzgün kullanmasını ödüllendir
    pattern = r"^<think>.*?</think>\s*.*$"
    responses = [c[0]['content'] for c in completions]
    return [1.0 if re.match(pattern, r, re.DOTALL) else 0.0 for r in responses]

Adım 3: Eğitimi Başlatma

Qwen 2.5 (1.5B veya 7B) taban modeli üzerinde LoRA ağırlıklarıyla GRPO eğitim döngüsünü başlatın. Yaklaşık 200 adım sonra modelin sorulara doğrudan cevap vermek yerine kendi kendini sorgulayan düşünme blokları ürettiğini göreceksiniz.

Google Sponsorlu Alan