Zum Inhalt springen
Seiten

Konzepte

So funktioniert die Optimierung

Der Vertrag aus Ausführung und Bewertung, die Artefaktarten und die Engines für jede Art.

Skynet ist Optimize Anything: ein Produkt, das jedes Artefakt anhand Ihrer Daten und Ihrer Metrik verbessert. Jeder Durchlauf nutzt denselben Ausführungsvertrag und denselben Metrikvertrag. Die Artefaktart bestimmt, welche Engines daran arbeiten können.

Der gemeinsame Vertrag

Jeder Durchlauf hat zwei Dateien. run.py führt das Artefakt auf einem Fall aus. metric.py bewertet die Ausgabe.

from skynet import llm


def run(artifact, input):
    return llm(artifact, input=input)
  • artifact ist die aktuelle Version, die der Optimierer vorschlägt.
  • input ist ein Dict mit den Eingabefeldern eines Falls.
  • expected ist der erwartete Wert des Falls oder None, wenn der Fall keinen hat.
  • score gibt ein Paar zurück: eine Zahl und ein Dict mit einem "feedback"-String.

Das Hilfsmodul skynet stellt llm, Image und log bereit. Ein Aufruf von llm aus dem Ausführungscode geht an das Aufgabenmodell. Ein Aufruf von llm aus der Metrik geht an das Metrikmodell.

Den vollständigen Metrikvertrag finden Sie unter Metriken und Scorer.

Artefaktarten und Engines

ArtefaktartEngines
PromptAuto, GEPA, Best-of-N, AutoResearch, Meta-Harness, AutoSaddler, ShinkaEvolve
CodeWie bei Prompt
TextWie bei Prompt
DSPy-ProgrammAuto, DSPy GEPA, DSPy MIPROv2, DSPy BootstrapFewShot

Es gibt zwei Familien von Engines:

  • Die nativen Engines behandeln das Artefakt als Black Box. Sie arbeiten mit Prompt-, Code- und Text-Artefakten.
  • Die DSPy-Optimierer arbeiten innerhalb eines DSPy-Programms. Sie arbeiten nur mit DSPy-Programm-Artefakten.

DSPy MIPROv2 und DSPy BootstrapFewShot benötigen Paare (Fälle mit erwarteten Ausgaben). Mit einer einzelnen Eingabe kann ein DSPy-Programm nur Auto und DSPy GEPA verwenden.

Prompt-, Code- und Text-Artefakte

Die nativen Engines behandeln das Artefakt als Black Box. Eine Engine schlägt eine neue Version vor, führt run(artifact, input) auf den Fällen aus und liest Score und Feedback.

Die sechs nativen Engines verwenden unterschiedliche Suchverfahren:

  • GEPA entwickelt Versionen durch Reflexion weiter und behält eine Pareto-Front.
  • Best-of-N fragt das Reflexionsmodell nach unabhängigen Vorschlägen und behält den besten.
  • AutoResearch, Meta-Harness, AutoSaddler und ShinkaEvolve schlagen Versionen mit einem Coding-Agenten vor.

Jede Engine und ihre Einstellungen beschreibt Engines.

DSPy-Programm-Artefakte

Ein DSPy-Programm ist eine Artefaktart. Ihre run.py baut auf Modulebene ein dspy.Module und ruft es innerhalb von run auf. Enthält die Datei mehr als ein Modul, nennen Sie das zu optimierende Modul program.

Das passiert, wenn ein DSPy-Optimierer läuft:

  1. Skynet findet Ihr Modul und legt Ihre Funktion run darum. Jeder Fall durchläuft Ihre eigene run.
  2. Der DSPy-Optimierer kompiliert das Programm auf den Trainingsfällen.
  3. Er wählt anhand der Validierungsfälle aus.
  4. Der Gewinner ist der Anweisungstext jedes Predictors plus der vollständige kompilierte Zustand des Moduls. Der Zustand enthält die Few-Shot-Demos.

Die endgültigen Scores messen dasselbe Programm, das Skynet speichert.

OptimiererLiest Feedback-Text
DSPy GEPAJa
DSPy MIPROv2Nein, nur den Score
DSPy BootstrapFewShotNein, nur den Score

DSPy BootstrapFewShot verwendet kein Reflexionsmodell.

Auto

Auto ist die Standardwahl im Assistenten.

  • Bei einem Prompt-, Code- oder Text-Artefakt erkundet Auto mit fünf nativen Engines und macht dann mit GEPA ab der besten Version weiter.
  • Bei einem DSPy-Programm führt Auto DSPy GEPA aus.

Beide Formen von Auto lesen den Feedback-Text Ihrer Metrik.

Welche Engine Sie wählen

Ihre SituationVerwenden Sie
Sie haben einen Prompt, den ein Modell ausführtEin Prompt-Artefakt. Beginnen Sie mit Auto.
Sie haben Code, der schneller, günstiger oder korrekter werden sollEin Code-Artefakt. Beginnen Sie mit Auto.
Sie haben ein Dokument oder eine KonfigurationEin Text-Artefakt. Beginnen Sie mit Auto.
Sie haben ein DSPy-ProgrammEin DSPy-Programm-Artefakt. Beginnen Sie mit Auto.
Sie möchten Few-Shot-Demos aus Ihren Daten auswählen lassenEin DSPy-Programm-Artefakt mit DSPy BootstrapFewShot oder DSPy MIPROv2

Verwandte Seiten