Skip to main content

DOCSEARCH

Mit dem DOCSEARCH-Service kannst du Dokumentensuchen durchführen und die Ergebnisse im Chat anzeigen. Du hast volle Kontrolle über das HTML-Template der Suchergebnisse und kannst die Darstellung individuell anpassen.


Properties

.beforeItemHtml

Definiert das öffnende HTML-Element der Ergebnisliste. Wird vor den einzelnen Suchergebnissen ausgegeben.

RAGAI.DOCSEARCH.beforeItemHtml = "<div class='list-group me-3'>";

.itemHtml

Definiert das HTML-Template für ein einzelnes Suchergebnis. Verwende Platzhalter wie {{url}}, {{filename}} und {{title}}, die automatisch mit den Ergebnisdaten befüllt werden.

RAGAI.DOCSEARCH.itemHtml = `
<a class='list-group-item list-group-item-action docsearch-link' href='{{url}}'>
<i class='ri-file-pdf-2-fill'></i>
<strong>{{filename}}</strong><br>
<small>{{title}}</small>
</a>
`;

.afterItemHtml

Definiert das schließende HTML-Element der Ergebnisliste. Wird nach den einzelnen Suchergebnissen ausgegeben.

RAGAI.DOCSEARCH.afterItemHtml = '</div>';

.clickFn

Stellt eine Klick-Funktion bereit, die ein Suchergebnis in einem IFrame-Overlay anzeigt. Du kannst diese Funktion nutzen, um Dokumente direkt im Chat-Fenster zu öffnen.

RAGAI.DOCSEARCH.clickFn('https://beispiel.de/dokument.pdf');

.searchAsJson(searchString, skillIds?, searchCount?, minScore?, returnType?)

Führt eine Dokumentensuche anhand des Suchtextes durch und gibt die Ergebnisse als JSON zurück.

ParameterTypPflichtBeschreibung
searchStringstringjaDer Suchbegriff.
skillIdsstring[]neinOptionale Einschränkung auf bestimmte Skill-IDs.
searchCountnumberneinMaximale Anzahl der Suchergebnisse (Standard: 5).
minScorenumberneinMinimaler Score-Wert, den ein Ergebnis haben muss.
returnTypestringneinRückgabeformat der Ergebnisse.

Rückgabe: Promise<DocSearchResult>

const data = await RAGAI.DOCSEARCH.searchAsJson('Blumen', ['skill1'], 8, 0.5);
console.log('Gefundene Ergebnisse:', data);

.jsonToHtml(data)

Erzeugt aus einem DocSearchResult-Objekt einen HTML-String basierend auf den konfigurierten Templates (beforeItemHtml, itemHtml, afterItemHtml).

ParameterTypBeschreibung
dataDocSearchResultDas Ergebnis von searchAsJson().

Rückgabe: string – Der generierte HTML-Code.

const data = await RAGAI.DOCSEARCH.searchAsJson('Blumen');
const html = RAGAI.DOCSEARCH.jsonToHtml(data);
console.log(html);

.searchAsCard(searchString, skillIds?, searchCount?, minScore?)

Führt eine Dokumentensuche durch und stellt die Ergebnisse direkt als formatierte Ergebniskarte im Chat dar.

ParameterTypPflichtBeschreibung
searchStringstringjaDer Suchbegriff.
skillIdsstring[]neinOptionale Einschränkung auf bestimmte Skill-IDs.
searchCountnumberneinMaximale Anzahl der Suchergebnisse (Standard: 5).
minScorenumberneinMinimaler Score-Wert.

Rückgabe: Promise<void>

await RAGAI.DOCSEARCH.searchAsCard('Blumen', undefined, 8);

.docSearchResult(searchString, skillIds?, searchCount?, minScore?)

Führt eine Dokumentensuche durch und gibt das Ergebnis als formatierten HTML-String zurück – ohne es direkt im Chat anzuzeigen.

ParameterTypPflichtBeschreibung
searchStringstringjaDer Suchbegriff.
skillIdsstring[]neinOptionale Einschränkung auf bestimmte Skill-IDs.
searchCountnumberneinMaximale Anzahl der Suchergebnisse (Standard: 5).
minScorenumberneinMinimaler Score-Wert.

Rückgabe: Promise<string>

const html = await RAGAI.DOCSEARCH.docSearchResult('Blumen', undefined, 5, 0.3);
console.log(html);