executeCustomPrompt
Versionshinweise | 25.5 | ||
|---|---|---|---|
Code
IAIResult executeCustomPrompt(String modelPlainKey, IAIPrompt userPrompt, IAIPrompt systemPrompt)
Hinweis
Die AIUtils stehen nur zur Verfügung, wenn man das Modul "KI-Assistent" lizenziert hat.
Beschreibung
Führt die übergebenen Benutzer- und System-Prompts mit dem KI-Modell aus, welches mit dem angegebenen Namen hinterlegt ist.
Parameter
modelPlainKey - Der Name des KI-Modells, welches für den Aufruf verwendet werden soll.
userPrompt - Das <tt>IAIPrompt</tt>-Objekt, welches die User-Prompt für den Aufruf enthält.
systemPrompt - Das <tt>IAIPrompt</tt>-Objekt, welches die System-Prompt für den Aufruf enthält.
Returns
Das IAIResult, welches die Antwort der KI enthält.
Beispiele
String template = 'Formuliere eine freundliche E-Mail, mit mehreren Terminvorschlägen von der Dauer von ${custom.Dauer}, an ${custom.Name} und achte darauf, dass du den Empfänger immer in der ${custom.Ansprechform}-Form ansprichst.';
Map userPromptVars = new HashMap();
userPromptVars.put("Dauer", "1 Stunde");
userPromptVars.put("Name", "Rainer Zufall");
userPromptVars.put("Ansprechform", "Sie");
IAIPrompt userPrompt = AIUtils.createPrompt(template, userPromptVars);
IAIPrompt systemPrompt = AIUtils.getPrompt("GenericSystemPrompt", new HashMap(), "fvvvvvv29msd61j2jp3e9fAc");
IAIResult result = AIUtils.executeCustomPrompt("MistralConfig", userPrompt, systemPrompt);
if (AIUtils.isAIResponseSuccessful(result)) {
String aiResponse = AIUtils.getAIResponseMessage(result);
} else {
String errorMessage = AIUtils.getAIResponseError(result);
}
Versionshinweise | 26.4 | ||
|---|---|---|---|
Code
IAIResult executeCustomPrompt(String modelPlainKey, IAIPrompt userPrompt, IAIPrompt systemPrompt);
IAIResult executeCustomPrompt(String modelPlainKey, StructuredOutputConfig structuredOutput, IAIPrompt userPrompt, IAIPrompt systemPrompt);
Beschreibung
Führt die übergebenen Benutzer- und System-Prompts mit einem spezifischen KI-Modell aus. Im Gegensatz zu executePrompt (welches auf Vorlagen der Eingabe-Verwaltung basiert) erlaubt diese Methode das Ausführen von frei definierten IAIPrompt-Objekten. Zusätzlich kann ein Schema übergeben werden, welches die Antwort der KI in ein strukturiertes JSON-Format zwingt.
Hinweis
Die AIUtils stehen nur zur Verfügung, wenn man das Modul "KI-Assistent" lizenziert hat.
Parameter
modelPlainKey: Der Name des KI-Modells (Konfiguration), welches für den Aufruf verwendet werden soll (z. B. "GPT-4" oder "MistralConfig").
userPrompt: Das
IAIPrompt-Objekt, welches den eigentlichen Inhalt oder die Anfrage des Nutzers enthält.systemPrompt: Das
IAIPrompt-Objekt, welches die Instruktionen und das Verhalten der KI festlegt.structuredOutput: [optional] Das
StructuredOutputConfigObjekt, welches die Struktur für die Antwort des LLMs vorgibt. Erstellbar überAIUtils.createStructuredConfig.
Rückgabe
Das IAIResult, welches die Antwort der KI enthält. Nutzen Sie AIUtils.isAIResponseSuccessful(result), um den Erfolg zu prüfen.
Beispiele
Ohne Structured-Output Schema (Freitext)
// 1. Prompts vorbereiten
String template = 'Formuliere eine freundliche E-Mail an ${custom.Name}.'
Map userPromptVars = ["Name": "Rainer Zufall"]
IAIPrompt userPrompt = AIUtils.createPrompt(template, userPromptVars)
IAIPrompt systemPrompt = AIUtils.getPrompt("GenericSystemPrompt", [:], "fvvvvvv29msd61j2jp3e9fAc")
// 2. Custom Prompt ausführen
IAIResult result = AIUtils.executeCustomPrompt("MistralConfig", userPrompt, systemPrompt)
// 3. Ergebnis verarbeiten
if (AIUtils.isAIResponseSuccessful(result)) {
String aiResponse = AIUtils.getAIResponseMessage(result)
} else {
String errorMessage = AIUtils.getAIResponseError(result)
}
Mit Structured-Output Schema (Datenextraktion)
// 1. Schema und Prompts definieren
def config = AIUtils.createStructuredConfig()
AIUtils.addExpectedReturn(config, "sentiment", String.class, false, "neutral", "Stimmung des Textes")
IAIPrompt userPrompt = AIUtils.createPrompt("Der Service war heute leider sehr langsam.", [:])
IAIPrompt systemPrompt = AIUtils.createPrompt("Analysiere die Stimmung des Nutzers.", [:])
// 2. Custom Prompt mit Schema ausführen
IAIResult result = AIUtils.executeCustomPrompt("MistralConfig", config, userPrompt, systemPrompt)
// 3. Strukturiertes Ergebnis auslesen
if (AIUtils.isAIResponseSuccessful(result)) {
Map data = AIUtils.getAIStructuredResponse(result)
ProcessUtils.setVariable("mood", data.get("sentiment"))
}