0Pricing
AI Prompt Engineering · Ders

DSPy Çerçevesine Giriş

DSPy'nin elle yazılmış istemleri bildirimsel imzalarla neden değiştirdiğini öğrenin.

DSPy Çerçevesine Giriş, CoddyKit'te ücretsiz bir AI Prompt Engineering dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Prompt Engineering öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Prompt Engineering kursu toplamda 4 dersten oluşur.

Elle Yazılmış İstemlerin Kırılganlığı

Elle hazırlanmış istemler kırılgandır. Tek bir kelime değişikliği model davranışını büyük ölçüde değiştirebilir ve GPT-4 için işe yarayan bir istem Claude veya Gemini üzerinde çoğu zaman bozulur.

İstem mühendisleri, ifadeleri değiştirmek için saatler harcar; ancak yaptıkları değişikliklerin veri kümeleri veya model sürümleri arasında genellenmediğini görürler. Bu kırılganlık, DSPy'nin çözdüğü temel sorundur.

DSPy Nedir

DSPy (Bildirime Dayalı Kendi Kendini İyileştiren Python), istem oluşturmayı bir zanaat değil, derleme problemi olarak ele alan Stanford kaynaklı bir çatıdır.

"Think step by step and answer the following question..." yazmak yerine, ne istediğinizi (bir signature) bildirir ve DSPy'nin bunu gerçekleştirmek için modele nasıl istem vereceğini belirlemesine izin verirsiniz.

DSPy'yi Kurma

DSPy, PyPI'de kullanılabilir. Başlamak için DSPy'yi kurun ve bir dil modeli arka ucunu yapılandırın.

pip install dspy-ai

# Basic setup in Python
import dspy

# Configure the language model
lm = dspy.LM('openai/gpt-4o-mini', api_key='sk-...')
dspy.configure(lm=lm)

print('DSPy configured successfully')

Temel Fikir: Mantığı İstem Oluşturmadan Ayırma

Geleneksel istem oluşturmada program mantığı ile istem metni iç içedir. Modelin nasıl akıl yürüteceğini değiştirmek isterseniz istem dizesini yeniden yazarsınız.

DSPy bu sorumlulukları ayırır: modüller kullanarak Python mantığı yazarsınız; DSPy ise gerçek istem metnini bir derleme adımı sırasında otomatik olarak üretir ve iyileştirir.

signature: Niyeti Bildirme

DSPy'de bir signature, girdilerin ve çıktıların türlerini belirten bir bildirimdir. Bu, nasıl yapılacağını değil, ne yapılacağını belirtir.

DSPy, derleme zamanında uygun bir istem oluşturmak için signature'ı kullanır; sizin istem mühendisliği yapmanız gerekmez.

import dspy

# Declare: given a question, produce an answer
class SimpleQA(dspy.Signature):
    """Answer questions with short factual responses."""
    question: str = dspy.InputField()
    answer: str = dspy.OutputField(desc='A concise factual answer')

# DSPy turns this declaration into a real prompt automatically
print(SimpleQA.__doc__)

Modüller: Birleştirilebilir Akıl Yürütme Blokları

DSPy, yaygın akıl yürütme kalıplarını uygulayan modüller sunar. Bunları PyTorch katmanları gibi kullanır ve daha büyük programlar oluşturmak üzere birleştirirsiniz.

  • dspy.Predict — doğrudan tahmin
  • dspy.ChainOfThought — akıl yürütme adımları ekler
  • dspy.ReAct — akıl yürütme + araç kullanımı
import dspy

class SimpleQA(dspy.Signature):
    """Answer questions with short factual responses."""
    question: str = dspy.InputField()
    answer: str = dspy.OutputField()

# Three different module strategies for the same signature
predict_module = dspy.Predict(SimpleQA)
cot_module = dspy.ChainOfThought(SimpleQA)

# Call just like a function
result = predict_module(question='What is the capital of France?')
print(result.answer)

Derleme Ne Yapar

Derleme, DSPy'nin bir eğitim kümesi ve ölçüt işlevi kullanarak programınızın istemlerini iyileştirdiği süreçtir.

Derlemeden önce DSPy, temel bir varsayılan istem kullanır. Derlemeden sonra DSPy, ölçütünüzü en üst düzeye çıkaran az örnekli gösterimler, daha iyi yönergeler veya akıl yürütme zinciri gösterimleri bulmuştur. İyileştirilmiş istemler kaydedilir ve çıkarım sırasında yeniden kullanılır.

Minimal Bir DSPy Programı

İşte eksiksiz bir minimal DSPy programı: bir signature, bir modül ve bir çağrı. Hiçbir yerde istem dizesi yazılmaz.

import dspy

# 1. Configure LM
lm = dspy.LM('openai/gpt-4o-mini', api_key='sk-...')
dspy.configure(lm=lm)

# 2. Define signature
class Summarize(dspy.Signature):
    """Summarize text into one sentence."""
    text: str = dspy.InputField()
    summary: str = dspy.OutputField()

# 3. Create module
summarizer = dspy.Predict(Summarize)

# 4. Use it
result = summarizer(text='DSPy is a framework for programming language models.')
print(result.summary)

DSPy ve Geleneksel İstem Mühendisliği

Temel felsefi fark şudur:

  • Geleneksel: İstem metnini yazarsınız → model bunu yürütür → metni elle değiştirirsiniz
  • DSPy: Python mantığı yazarsınız → iyileştirici en iyi istem metnini bulur → model iyileştirilmiş istemi yürütür

DSPy, istemleri, tıpkı bir derleyicinin Python'ı bayt koduna dönüştürmesi gibi, derleyicinin ele alması gereken uygulama ayrıntıları olarak görür.

DSPy Ne Zaman Değerlidir

DSPy şu durumlarda güçlüdür:

  • İyileştirilecek net bir ölçütünüz varsa (doğruluk, F1, kullanıcı puanı)
  • Örneklerden oluşan bir eğitim kümeniz varsa (20-50 örnek bile yeterlidir)
  • Etkileşen birden çok akıl yürütme adımına sahip bir işlem hattınız varsa

Tek seferlik basit istemler için DSPy'nin ek yükü buna değmez. Ölçülebilir hedeflere sahip üretim LLM işlem hatları içinse dönüştürücüdür.

DSPy Ekosistemine Genel Bakış

DSPy yalnızca bir API sarmalayıcısı değildir; eksiksiz bir ekosistemdir:

  • signature: Girdi/çıktı bildirme
  • Modüller: Akıl yürütme stratejileri
  • İyileştiriciler: BootstrapFewShot, MIPRO, COPRO
  • Evaluate: Yerleşik değerlendirme altyapısı
  • Kısıtlamalar: Çıktıları bildirimsel olarak sınırlandırma

Bunların her birini bu kursun sonraki derslerinde inceleyeceksiniz.

Bilgi Kontrolü: DSPy'nin Temel Kavramı

DSPy'nin istemleri elle yazmaktan temel farkı nedir?

Özet: DSPy Çatısının Temelleri

DSPy, istem oluşturmayı bir derleme problemi olarak ele alarak elle yazılmış istemlerin kırılganlığını giderir. signature'lar (tür belirtilmiş girdi/çıktı bildirimleri) yazar ve bunları Predict ile ChainOfThought gibi modüllerle birleştirirsiniz. Ardından bir iyileştirici, eğitim verilerinizi ve ölçütünüzü kullanarak en iyi istem metnini otomatik olarak bulur. Sonuç, elle istem mühendisliği yapmadan taşınabilir, sınanabilir ve otomatik olarak geliştirilebilir bir istem işlem hattıdır.

Sıkça Sorulan Sorular

“DSPy Çerçevesine Giriş” dersi ücretsiz mi?

Evet — “DSPy Çerçevesine Giriş” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Prompt Engineering kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Prompt Engineering kursu toplamda 4 dersten oluşur.

“DSPy Çerçevesine Giriş” dersinde ne öğreneceğim?

DSPy'nin elle yazılmış istemleri bildirimsel imzalarla neden değiştirdiğini öğrenin. AI Prompt Engineering ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AI Prompt Engineering öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AI Prompt Engineering, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“DSPy Çerçevesine Giriş” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AI Prompt Engineering dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AI Prompt Engineering dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. DSPy Çerçevesine Giriş
  2. İmzaları ve Modülleri Tanımlama
  3. İstemleri Derleme ve İyileştirme
  4. DSPy İş Akışlarını Değerlendirme
← AI Prompt Engineering Sayfasına Dön