addExpectedReturn
Versionshinweise | 26.4 | ||
|---|---|---|---|
Code
StructuredOutputConfig addExpectedReturn(StructuredOutputConfig config, String path, Class<?> type, boolean optional, Object defaultValue, String description);
StructuredOutputConfig addExpectedReturn(StructuredOutputConfig config, String path, Class<?> type, boolean optional, String description);
StructuredOutputConfig addExpectedReturn(StructuredOutputConfig config, String path, Class<?> type, boolean optional);
Beschreibung
Fügt der Konfiguration für den strukturierten Output ein erwartetes Rückgabefeld hinzu. Diese Methode definiert, welche Informationen die KI aus dem Text extrahieren soll und in welchen Datentyp diese konvertiert werden. Durch die Angabe eines Pfades mit Punkt-Notation (z. B. adresse.stadt) können komplexe, verschachtelte Strukturen erzeugt werden.
Hinweis
Die description ist für die KI essenziell. Je genauer Sie beschreiben, was in das Feld extrahiert werden soll (z. B. "Netto-Betrag ohne MwSt"), desto präziser arbeitet die KI.
Parameter
config: Das
StructuredOutputConfig-Objekt, das modifiziert werden soll.path: Der Name des Feldes. Verwenden Sie die Punkt-Notation für Unterobjekte (z. B.
person.name).type: Der erwartete Java-Typ (z. B.
String.class,Integer.class,Double.class,Boolean.classoder eineEnum.class).optional: Gibt an, ob das Feld zwingend befüllt werden muss.
defaultValue: [optional] Ein Wert, der verwendet wird, falls die KI keine Information im Text findet.
description: [optional] Eine semantische Beschreibung für die KI, die erklärt, wie das Feld zu extrahieren ist.
Rückgabe
Die modifizierte StructuredOutputConfig.
Beispiele
Einfache und verschachtelte Felder definieren
// 1. Konfiguration erstellen
def config = AIUtils.createStructuredConfig();
// 2. Einfaches Feld mit Beschreibung und Default-Wert
AIUtils.addExpectedReturn(config, "rechnungsNummer", String.class, false, "0000", "Die eindeutige Rechnungs-ID aus dem Kopfbereich");
// 3. Verschachteltes Objekt (erzeugt automatisch ein Unterobjekt 'kunde')
AIUtils.addExpectedReturn(config, "kunde.vorname", String.class, false, "Vorname des Rechnungsempfängers");
AIUtils.addExpectedReturn(config, "kunde.nachname", String.class, false, "Nachname des Rechnungsempfängers");
// 4. Numerische Werte und Booleans
AIUtils.addExpectedReturn(config, "betrag", Double.class, false, "Der Gesamtbetrag als Dezimalzahl");
AIUtils.addExpectedReturn(config, "istBezahlt", Boolean.class, true, false, "Wahr, wenn ein Bezahlt-Vermerk gefunden wurde");
// 5. Verwendung im Prompt
IAIResult result = AIUtils.executePrompt("InvoiceParser", config, [:], [:], null);