Skip to main content
Skip table of contents

createPrompt

Versionshinweise

25.5

Code

CODE
IAIResult createPrompt(String template, Map<String, Object> promptVars)

Hinweis

Die AIUtils stehen nur zur Verfügung, wenn man das Modul "KI-Assistent" lizenziert hat.

Beschreibung

Erzeugt eine Prompt aus der übergebenen Vorlage und ersetzt dabei die Platzhalter mit den Werten aus der übergebenen Map. Die Vorlage kann dieselben Platzhalter verwenden wie sie in der Prompt-Bibliothek verwendet werden.

Parameter

  • template - Die Prompt, welche Platzhalter enthalten kann. Es ist wichtig für den String einfache Anführungszeichen zu verwenden, wenn Platzhalter verwendet werden.

  • promptVars- [optional] Die Map welche die Werte für die Platzhalter in der Prompt enthält.

Returns

Die IAIPrompt, welche für den Aufruf von executeCustomPrompt verwendet werden kann.

Beispiele

GROOVY
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 Empänger immer in ${custom.Ansprechform}-Form ansprichst.';

Map<String, Object> promptVars = new HashMap<>();
promptVars.put("Dauer", "1 Stunde");
promptVars.put("Name", "Rainer Zufall");
promptVars.put("Ansprechform", "Sie");

IAIPrompt userPrompt = AIUtils.createPrompt(template, promptVars);

Versionshinweise

26.4

Code

GROOVY
IAIPrompt createPrompt(String template, Map<String, Object> promptVars)

Hinweis

Die AIUtils stehen nur zur Verfügung, wenn man das Modul "KI-Assistent" lizenziert hat.

Beschreibung

Erzeugt einen Prompt aus der übergebenen Vorlage und ersetzt dabei die Platzhalter mit den Werten aus der übergebenen Map. Die Vorlage unterstützt die FreeMarker-Syntax.

Neben einfachen Text-Ersetzungen ermöglicht diese Methode die Übergabe komplexer Datenstrukturen (Maps, Listen), um der KI Beispiele für strukturierte Ausgaben zu liefern (Few-Shot Prompting). Hierbei kann die Hilfsfunktion toJson() (eine Custom FreeMarker-Methode, die von CURSOR bereitgestellt wird) verwendet werden, um Objekte direkt in ein maschinenlesbares Format zu konvertieren.

Parameter

  • template – Die Prompt-Vorlage. Platzhalter müssen im Format ${custom.Variable} angegeben werden.

    • Wichtig: Verwenden Sie einfache Anführungszeichen ('...') oder Slash-Strings (/.../) in Groovy, um eine frühzeitige Evaluierung durch Groovy selbst zu verhindern.

  • promptVars – [optional] Eine Map, welche die Werte oder komplexen Objekte für die Platzhalter enthält.

Returns

Die IAIPrompt, welche für den Aufruf von executeCustomPrompt verwendet werden kann.

Beispiele

A. Einfache Text-Ersetzung

GROOVY
String template = 'Schreibe eine E-Mail an ${custom.Name}. Thema: ${custom.Thema}.';

Map promptVars = [
    Name: "Rainer Zufall",
    Thema: "Terminverschiebung"
]

IAIPrompt userPrompt = AIUtils.createPrompt(template, promptVars);

B. Few-Shot Prompting für strukturierte Daten (Best Practice)

Dieser Use Case zeigt, wie man der KI ein Beispiel-Objekt (Map) übergibt, damit diese das Antwortformat (JSON) exakt einhält.

GROOVY
// 1. Beispiel-Daten definieren
Map example = [
    input: "Max Mustermann aus Gießen möchte Software bestellen.",
    output: [
        fullName: "Max Mustermann", 
        category: "SOFTWARE",
        city: "Gießen"
    ]
]

// 2. Template mit toJson-Funktion definieren
String sysTemplate = '''
Du bist ein Daten-Extraktor. Orientiere dich an diesem Beispiel:
Eingabe: ${custom.ex.input}
Ausgabe: ${toJson(custom.ex.output)}
'''

// 3. Prompt erstellen
IAIPrompt sysPrompt = AIUtils.createPrompt(sysTemplate, [ex: example]);
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.