Ultralytics YOLO27: Trag dich in die Warteliste ein.
YOLO lizenzieren
Zurück zum Ultralytics-Glossar

DSPy

DSPy ist ein Open-Source-Framework, das LLM-Pipelines aus typisierten Signaturen und Modulen erstellt und anschließend ihre Prompts anhand einer Metrik optimiert.

DSPy ist ein quelloffenes Python-Framework zum Erstellen von Anwendungen für große Sprachmodelle (LLMs) als Code statt mit manuell verfassten Prompts. Entwickler deklarieren die Eingaben und Ausgaben jedes Schritts, kombinieren die Schritte zu einem Programm und lassen einen DSPy-Optimierer Prompts oder die Gewichte des Modells erstellen und abstimmen, um eine Metrik anhand einer Beispielsammlung zu maximieren. Der Name steht für Declarative Self-improving Python. Das Projekt beschreibt sich selbst als Framework zum Programmieren von Sprachmodellen statt zum Prompten. Omar Khattab und Kollegen von Stanford stellten DSPy im Oktober 2023 im Beitrag DSPy: Deklarative Aufrufe von Sprachmodellen zu selbstverbessernden Pipelines kompilieren vor. Innerhalb weniger Minuten nach der Kompilierung konnten sich mit wenigen Zeilen DSPy Pipelines für GPT-3.5 und Llama-2-13B-chat erstellen lassen, die standardmäßiges Few-Shot-Prompting um mehr als 25 % beziehungsweise 65 % und Pipelines mit von Experten verfassten Beispielen um bis zu 46 % beziehungsweise 40 % übertrafen.

Signaturen, Module und Optimierer#

  • Signaturen: Typisierte Deklarationen der Eingaben und Ausgaben eines Schritts. Sie werden direkt als "question -> answer" oder als Klasse formuliert, deren Docstring die Aufgabe beschreibt. Sie legen fest, was ein Schritt tut, und überlassen DSPy die Formulierung des Prompts.
  • Module: Strategien zur Ausführung einer Signatur. dspy.Predict ruft das Modell einmal auf, dspy.ChainOfThought fügt vor der Antwort ein Feld für Schlussfolgerungen ein, wie beim Chain-of-Thought-Prompting, und dspy.ReAct führt eine Schleife mit Werkzeugen im Stil des ReAct-Promptings aus. Module lassen sich wie PyTorch-Schichten zu mehrstufigen Programmen kombinieren, etwa zu einer Retrieval-Augmented-Generation-Pipeline (RAG), die eine Suchanfrage formuliert, Passagen abruft und daraus eine Antwort erstellt.
  • Adapter: Wandeln eine Signatur in Chatnachrichten für das Modell um und analysieren die Antwort, um die typisierten Felder zurückzugewinnen.
  • Optimierer: Algorithmen, die ein Programm anhand einer Metrik verbessern. BootstrapFewShot führt das Programm mit Trainingsbeispielen aus und behält Ablaufprotokolle, die die Metrik erfüllen, als Beispiele bei. MIPROv2 durchsucht mögliche Anweisungen und Beispielsammlungen. BootstrapFinetune destilliert ein Programm durch Feinabstimmung in Modellgewichte.

Die Optimierungsschleife ähnelt dem Training eines Modells, wobei Prompts die Parameter bilden:

Der Optimierer GEPA aus dem Jahr 2025, verfügbar als dspy.GEPA, liest die Ausführungsprotokolle und das Textfeedback des Programms. Er lässt ein LLM darüber nachdenken, was schiefgelaufen ist, und entwickelt die Anweisungen daraufhin weiter. Bei sechs Aufgaben übertraf er das bestärkende Lernen mit der Methode GRPO im Durchschnitt um 6 % und um bis zu 20 %, während er bis zu 35-mal weniger Rollouts benötigte. MIPROv2 übertraf er um mehr als 10 %.

Von der Signatur zum Prompt#

DSPy erzeugt den Prompt aus der Signatur. Daher lässt sich dasselbe Programm für ein neues Modell erneut optimieren, statt es neu zu schreiben. Hier dienen Erkennungsübersichten von Ultralytics YOLO26 als Eingabe: Results.verbose() gibt ein Ergebnis im Vorhersagemodus als kurze Zeichenfolge mit Häufigkeiten pro Klasse zurück. Eine Signatur kann diesen Text entgegennehmen, sodass ein Optimierer den Reasoning-Schritt anhand echter Ausgaben der Objekterkennung abstimmt. Zum Formatieren der Nachrichten sind weder ein Modell noch ein API-Schlüssel erforderlich:

import dspy
from ultralytics import YOLO

model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg")


class SceneQA(dspy.Signature):
    """Answer a question about a photo from the objects a detector found in it."""

    detections: str = dspy.InputField()
    question: str = dspy.InputField()
    answer: str = dspy.OutputField()


# The adapter turns the signature and inputs into the chat messages the model will receive
inputs = {"detections": results[0].verbose(), "question": "How many people are in the photo?"}
messages = dspy.ChatAdapter().format(SceneQA, demos=[], inputs=inputs)
for message in messages:
    print(f"--- {message['role']} ---\n{message['content']}")

Die Systemnachricht führt die Eingabe- und Ausgabefelder, die Markierungen [[ ## field ## ]], mit denen DSPy die Antwort analysiert, und den Docstring als Ziel auf. Die Benutzernachricht enthält die Zählwerte des Detektors. Ein Optimierer verbessert dieses Programm, indem er das Ziel umformuliert und den Nachrichten Beispiele hinzufügt, ohne den Python-Code zu ändern.

  • Prompt-Engineering: Prompts von Hand verfassen und überarbeiten. DSPy macht daraus ein Optimierungsproblem mit einer Metrik und Beispielen.
  • LangChain: Ein Framework mit Integrationen, Werkzeugen und Agentenschleifen zum Kombinieren von LLM-Anwendungen. Die Prompts werden dabei vom Entwickler gepflegt.
  • Hyperparameterabstimmung: Durchsucht Trainingseinstellungen anhand einer Validierungsmetrik und ist die ähnlichste Analogie dazu, wie DSPy Prompts durchsucht.
  • Zusammengesetzte KI-Systeme: Anwendungen aus mehreren Modellaufrufen, Abrufsystemen und Werkzeugen. DSPy wurde dafür entwickelt, solche Pipelines vollständig zu optimieren und den Prompt jedes Schritts anhand der endgültigen Metrik abzustimmen.

Lösungen entdecken

Computer Vision im Sport

Computer Vision im Sport

Entdecke, wie Ultralytics YOLO die Sportbildanalyse voranbringt – mit Spieler- und Ballverfolgung, Leistungsanalysen, Erkenntnissen für das Coaching und der Rehabilitation von Athleten.
Mehr erfahren
Computer Vision für Luftbilder

Computer Vision für Luftbilder

Verwandle Drohnen- und Luftbilder mit Ultralytics YOLO in Echtzeit-Erkenntnisse für Landwirtschaft, Aquakultur, Naturschutz und Geodatenanalyse.
Mehr erfahren
Computer Vision in der Luft- und Raumfahrt

Computer Vision in der Luft- und Raumfahrt

Setze Computer Vision in der Luft- und Raumfahrt mit Ultralytics YOLO ein – für Flugzeuginspektionen, die Erkennung von Fremdkörpern auf Start- und Landebahnen, den Bodenbetrieb am Flughafen und die Erkennung von Verbundwerkstofffehlern.
Mehr erfahren
Computer Vision im Sicherheitsbereich

Computer Vision im Sicherheitsbereich

Schütze jeden Standort mit Ultralytics YOLO-Modellen. Vision-KI ermöglicht die Überwachung von Grundstücksgrenzen, die Erkennung von Bedrohungen, die Kennzeichenerkennung und die Sicherheit am Arbeitsplatz.
Mehr erfahren
Computer Vision in der Robotik

Computer Vision in der Robotik

Mach Maschinen mit Ultralytics YOLO-Modellen leistungsfähiger. Vision-KI in der Robotik ermöglicht autonome Navigation, Wahrnehmung, Objektverfolgung und Steuerung in Echtzeit.
Mehr erfahren
Bildverarbeitung in der Logistik

Bildverarbeitung in der Logistik

Optimiere die Logistik mit Ultralytics YOLO-Modellen. Vision AI ermöglicht die Paketprüfung, Sortierung und Fahrzeugverfolgung sowie die Sicherheitsüberwachung von Lagerhäusern in Echtzeit.
Mehr erfahren
Bildverarbeitung im Einzelhandel

Bildverarbeitung im Einzelhandel

Gestalte den Einzelhandel mit Ultralytics YOLO-Modellen neu. Vision AI ermöglicht Bestandsverfolgung, Regalüberwachung und Warteschlangenmanagement und liefert bessere Einblicke in das Kundenverhalten.
Mehr erfahren
Bildverarbeitung im Gesundheitswesen

Bildverarbeitung im Gesundheitswesen

Entwickle Lösungen für das Gesundheitswesen mit Ultralytics YOLO-Modellen. Vision AI ermöglicht im Gesundheitswesen schnellere medizinische Bildgebung, bessere Diagnostik und die Überwachung von Patienten.
Mehr erfahren
Computer Vision in der Fertigung

Computer Vision in der Fertigung

Optimiere die Fertigung mit Ultralytics-YOLO-Modellen. Vision AI ermöglicht Qualitätskontrolle, Fehlererkennung, die Überprüfung der Einhaltung von Vorgaben zu persönlicher Schutzausrüstung und die Automatisierung von Montagelinien.
Mehr erfahren
Computer Vision in der Automobilbranche

Computer Vision in der Automobilbranche

Setze Computer Vision in der Automobilbranche mit Ultralytics-YOLO-Modellen ein. Vision AI verbessert die Verkehrssicherheit, Fahrerassistenz und Fahrzeugautomatisierung – für intelligentere Straßen.
Mehr erfahren
Computer Vision in der Landwirtschaft

Computer Vision in der Landwirtschaft

Setze mit Ultralytics YOLO-Modellen KI für Bildverarbeitung in der intelligenten Landwirtschaft ein. Ermögliche die Überwachung von Nutzpflanzen, die Verfolgung von Nutztieren und Präzisionslandwirtschaft für höhere und nachhaltigere Erträge.
Mehr erfahren

Lass uns gemeinsam die Zukunft der KI gestalten!

Starte deine Reise in die Zukunft des maschinellen Lernens