addStringList
Versionshinweise | 26.6 | ||
|---|---|---|---|
Die AIUtils stehen nur zur Verfügung, wenn man das Modul „KI-Assistent“ lizenziert hat.
Code
AIStructuredOutputConfig addStringList(AIStructuredOutputConfig config, String key, boolean required, String description)
AIStructuredOutputConfig addStringList(AIStructuredOutputConfig config, String key, boolean required, String description, List<String> defaultValue)
Beschreibung
Fügt einer AIStructuredOutputConfig ein Listenfeld mit String-Werten hinzu.
Mit dieser Methode definieren Sie ein Feld für eine Liste von Zeichenketten innerhalb einer strukturierten KI-Antwort. Dabei legen Sie den Feldnamen, die fachliche Beschreibung und fest, ob die Liste erforderlich ist oder von der KI weggelassen werden darf.
Optional kann zusätzlich ein Default-Wert angegeben werden. Dieser wird bei der Nachverarbeitung verwendet, wenn das Feld in der KI-Antwort fehlt oder null ist.
Die übergebene Konfiguration wird direkt verändert. Eine erneute Zuweisung des Rückgabewerts ist daher nicht erforderlich.
Parameter
config: Die
AIStructuredOutputConfig, die erweitert werden soll.key: Der Feldschlüssel innerhalb des aktuellen Objekts, z. B.
"tags".required: Legt fest, ob die Liste erforderlich ist.
true: Die Liste ist erforderlich.false: Die KI darf die gesamte Liste weglassen.
description: Fachliche Beschreibung des Felds. Diese Beschreibung wird verwendet, um der KI die Bedeutung und den erwarteten Inhalt der Liste zu verdeutlichen.
defaultValue: Optionaler Fallback-Wert vom Typ
List<String>, der bei der Nachverarbeitung eingesetzt wird, wenn das Feld fehlt odernullist.
Rückgabe und Fehlerverhalten
Im Erfolgsfall gibt die Methode dieselbe AIStructuredOutputConfig-Instanz zurück.
Im Fehlerfall wird keine Konfiguration zurückgegeben. Stattdessen wird eine IllegalArgumentException ausgelöst, z. B. wenn übergebene Argumente ungültig sind.
Beispiele
1. Einfaches String-Listenfeld definieren
AIStructuredOutputConfig config = AIUtils.createStructuredConfig()
AIUtils.addStringList(
config,
"tags",
false,
"Relevante Klassifizierungsmerkmale"
)
2. Optionales Listenfeld mit Default-Wert
AIStructuredOutputConfig config = AIUtils.createStructuredConfig()
AIUtils.addStringList(
config,
"keywords",
false,
"Relevante Schlagworte zur Anfrage. Wenn keine Schlagworte sicher erkennbar sind, Feld weglassen.",
["STANDARD"]
)
3. Verwendung in einer strukturierten Antwort
AIStructuredOutputConfig config = AIUtils.createStructuredConfig()
AIUtils.addStringList(
config,
"tags",
true,
"Relevante Tags zur Einordnung der Anfrage"
)
Map<String, Object> systemVars = [:]
Map<String, Object> userVars = ["text": "Der Kunde meldet ein dringendes Problem mit seiner Hardware-Bestellung."]
IAIResult result = AIUtils.executePrompt("AnalyseCheck", config, systemVars, userVars)
if (AIUtils.isAIResponseSuccessful(result)) {
Map<String, Object> data = AIUtils.getAIStructuredResponse(result)
List<String> tags = (List<String>) data.get("tags")
} else {
String errorMessage = AIUtils.getAIResponseError(result)
}