CommunityCodierung & Entwicklunggithub.com

stanfordnlp/dspy

Programmatische Eingabe-Mapping-Strukturen, die algorithmische Kriterien in zuverlässige, strukturierte Textgenerierungsanweisungen übersetzen.

Was ist dspy?

DSPy ist ein Framework zur programmatischen Steuerung von Sprachmodellen (LMs), das den manuellen Prompt-Engineering-Prozess durch einen systematischen, optimierungsbasierten Ansatz ersetzt. Anstatt statische Prompts zu schreiben, definieren Entwickler Module, die Eingabe- und Ausgabefelder spezifizieren, und DSPy wählt automatisch effektive Aufforderungen, Feinabstimmungsstrategien oder Few-Shot-Beispiele aus. Dieses Framework unterstützt sowohl Closed-Source-APIs wie GPT-3.5/4 als auch Open-Source-Modelle und ermöglicht die Integration in Python-Pipelines. DSPy ist besonders nützlich für Aufgaben, die konsistente, strukturierte Ausgaben erfordern – z. B. das Extrahieren von Informationen aus Text, das Zusammenfassen von Dokumenten oder das Generieren von Code –, da es die LM-Interaktion deterministischer und wartbarer macht. Es reduziert den manuellen Aufwand für Prompt-Tuning und verbessert die Zuverlässigkeit durch automatische Optimierung auf Basis von annotierten Beispielen.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add stanfordnlp/dspy

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht dspy?

Programmatische Eingabe-Mapping-Strukturen, die algorithmische Kriterien in zuverlässige, strukturierte Textgenerierungsanweisungen übersetzen.

Übersicht

DSPy (kurz für „Declarative Self-improving Python“) ist ein Framework, das den Prompt-Engineering-Prozess automatisiert, indem es Module und Optimierer bereitstellt. Entwickler definieren die Felder für Eingabe und Ausgabe sowie eine Metrik, und DSPy findet die beste Art, das Sprachmodell aufzurufen – sei es durch Prompt-Templates, Few-Shot-Beispiele oder Feinabstimmung.

Hauptmerkmale

  • Automatisches Prompt-Design: Kein manuelles Tuning von Prompts nötig; DSPy optimiert basierend auf gegebenen Beispielen und Metriken.
  • Modularer Aufbau: Wiederverwendbare Bausteine, die zu komplexen LM-Pipelines kombiniert werden können.
  • Multi-Modell-Unterstützung: Funktioniert mit OpenAI, Cohere, Anthropic, Hugging Face Modellen und lokalen LMs.
  • Optimierungsstrategien: Enthält Bootstrap-Few-Shot, Prompt-Tuning und komplexere Methoden wie MIPROv2.
  • Python-nativ: Integration in bestehende Python-Umgebungen und Datenbibliotheken.

Schnellstart

import dspy
from dspy.datasets import HotPotQA

# Konfiguriere das LM (z. B. GPT-4)
lm = dspy.OpenAI(model='gpt-4', max_tokens=250)
dspy.settings.configure(lm=lm)

# Definiere ein einfaches QA-Modul
class GenerateAnswer(dspy.Signature):
    """Beantworte Fragen basierend auf dem Kontext."""
    context = dspy.InputField()
    question = dspy.InputField()
    answer = dspy.OutputField(desc="oft zwischen 1 und 5 Wörtern")

# Erstelle eine Pipeline
qa_pipeline = dspy.Predict(GenerateAnswer)

# Frage stellen
result = qa_pipeline(context="Der Kölner Dom ist eine gotische Kathedrale in Köln.", question="Was ist der Kölner Dom?")
print(result.answer)  # "gotische Kathedrale"

Weiterführende Ressourcen

Verwandte Skills