.AITEXT_OPENAI
Chat-Completions und Bild-Nachrichteninhalte per OpenAI (RAGAI.AITEXT_OPENAI).
chatCompletion/chatCompletionJson und VllmService.chatCompletion rufen intern denselben
Backend-Endpunkt-Namensraum auf (/api/toolbox/completion/create/<openai|vllm>/<botId>) - Unterschied ist nur
das Backend-Modell (OpenAI-Cloud vs. selbstgehostetes vLLM) und die verfügbaren Modell-/Parameter-Optionen.
structuredResponse nutzt einen separaten Endpunkt (/api/toolbox/responses/create) und erzwingt eine
gegen ein JSON-Schema validierte Antwort - nützlich, wenn die KI-Antwort direkt als typisiertes Objekt statt
als Freitext weiterverarbeitet werden soll.
Methoden
.getImageMesageContent(src)
Baut einen Bild-Nachrichteninhalt für die Chat-Completion-API.
| Parameter | Typ | Beschreibung |
|---|---|---|
src | string | Bild-URL oder Skill-ID; Skill-IDs werden zu einer ladbaren URL aufgelöst. |
Rückgabewert: Promise<{ type: string; image_url: { url: string; detail: string; }; }>
Der Nachrichteninhalt im OpenAI-Bildformat.
.chatCompletion(input, model?, temperature?, webSearch?)
Sendet eine Chat-Completion-Anfrage an OpenAI und liefert die Text-Antwort.
| Parameter | Typ | Beschreibung |
|---|---|---|
input | string | z.input<typeof aiTextOpenaiSchema> | Der Prompt-Text oder ein Objekt gemäß aiTextOpenaiSchema. |
model | GTPChatModelType | Das zu verwendende OpenAI-Modell. |
temperature | number | Kreativität der Antwort (0 = deterministisch, höher = kreativer). |
webSearch | boolean | Aktiviert die Websuche für diese Anfrage. |
Objekt-Form (validiert über aiTextOpenaiSchema):
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
input | string | ✔ | Der Prompt-Text. |
model | string | – | Das zu verwendende OpenAI-Modell. |
temperature | number | – | Kreativität der Antwort (0 = deterministisch, höher = kreativer). |
Rückgabewert: Promise<any>
Die Antwort des Modells.
.chatCompletionJson(input, model?, temperature?, webSearch?)
Wie chatCompletion, fordert aber eine JSON-Antwort vom Modell an.
| Parameter | Typ | Beschreibung |
|---|---|---|
input | string | z.input<typeof aiTextOpenaiSchema> | Der Prompt-Text oder ein Objekt gemäß aiTextOpenaiSchema. |
model | GTPChatModelType | Das zu verwendende OpenAI-Modell. |
temperature | number | Kreativität der Antwort (0 = deterministisch, höher = kreativer). |
webSearch | boolean | Aktiviert die Websuche für diese Anfrage. |
Objekt-Form (validiert über aiTextOpenaiSchema):
| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
input | string | ✔ | Der Prompt-Text. |
model | string | – | Das zu verwendende OpenAI-Modell. |
temperature | number | – | Kreativität der Antwort (0 = deterministisch, höher = kreativer). |
Rückgabewert: Promise<any>
Die Antwort des Modells als JSON-String.
.structuredResponse(options)
Sendet eine Chat-Completion-Anfrage an OpenAI und validiert die Antwort gegen ein JSON-Schema.
| Parameter | Typ | Beschreibung |
|---|---|---|
options | { promptInput: string; jsonSchema: { name: string; schema: Record<string, unknown> }; model?: GTPChatModelType; temperature?: number; instructions?: string; webSearch?: boolean; } | Optionen für die strukturierte Anfrage. |
Rückgabewert: Promise<T>
Die strukturierte, typisierte Antwort.