Warum findet die Suche nichts?
Eine Funktion, die eine Sucheingabe eines Nutzers – etwa mit Tippfehler, Synonym oder unvollständiger Formulierung – in eine oder mehrere präzisere Varianten umformuliert, bevor die eigentliche Suche läuft. Gedacht als vorgeschalteter Schritt für eine interne Suche, einen Chatbot oder eine semantische Suche, nicht als eigenständiges Suchsystem.
Online ausführen
Führen Sie dies mit Ihrem Konto auf unseren Servern aus. Kostenlose Tools laufen in Ihrem Browser; dieses wird zum oben genannten Preis von Ihrem KIT-Guthaben abgebucht.
Wenn die Sucheingabe nicht zum Index passt
Eine interne Suche findet oft nichts, obwohl der gesuchte Inhalt vorhanden ist, weil die Eingabe eines Nutzers von den im Index verwendeten Begriffen abweicht – etwa durch einen Tippfehler, ein Synonym oder eine unvollständige, umgangssprachliche Formulierung. Diese Funktion nimmt die ursprüngliche Eingabe und formuliert daraus eine oder mehrere Varianten, die eher zu den tatsächlich indexierten Begriffen passen, bevor die eigentliche Suche läuft.
Was die Umformulierung konkret ändert
Aus „wo ist meine rechnung“ wird beispielsweise eine präzisere Anfrage wie „Rechnung Status Bestellung“, aus einer Anschlussfrage wie „und der zweite Tarif?“ wird unter Einbeziehung des vorherigen Gesprächskontexts eine eigenständige Anfrage wie „Preis des zweiten Tarifs“. Auch Tippfehler, unvollständige Wortstämme und regionale Schreibweisen werden dabei berücksichtigt, ohne dass eine feste Liste von Synonymen vorab von Hand gepflegt werden muss – die Umformulierung entsteht bei jeder Anfrage neu.
Ein Baustein, kein vollständiges Suchsystem
Diese Funktion liefert ausschließlich die umformulierte Anfrage als Text, keine Trefferliste und keine fertige Antwort. Die eigentliche Suche läuft danach als eigener Schritt, etwa über die semantische Suche, eine hybride Suche aus Stichwort und Bedeutung, oder ein bestehendes Suchsystem der eigenen Website. Diese Trennung erlaubt es, die Umformulierung vor ein beliebiges Suchsystem zu schalten, auch eines, das nicht Teil von KIT ist.
Preis pro umformulierter Anfrage
Die Ausführung kostet $0.003 pro Anfrage plus $0.0135 pro umformulierter Anfrage, in US-Dollar, nutzbar über diese Seite oder per API zum selben veröffentlichten Preis. Für eine Sucheingabe mit hohem Volumen, etwa bei jeder Eingabe eines Nutzers während des Tippens, lohnt sich meist die Anbindung per API statt der einzelnen Ausführung auf dieser Seite. Ein Konto ist für keinen der beiden Wege erforderlich.
Anwendungsfälle
Interne Shop-Suche bei Tippfehlern
Katrin Baumann lässt Sucheingaben ihres Online-Shops vor der eigentlichen Suche umformulieren, damit ein vertipptes Produktwort wie „Kaffemaschine“ trotzdem zur richtigen Kategorie führt.
Anschlussfragen in einem Support-Chat auflösen
Die Schneider IT-Systeme GmbH & Co. KG formuliert Anschlussfragen wie „und die zweite Rechnung?“ mithilfe des Gesprächsverlaufs zu einer eigenständigen Suchanfrage um, bevor die passende Antwort gesucht wird.
Suchbegriffe aus der Buchhaltung vereinheitlichen
Lukas Fischer lässt uneinheitliche interne Sucheingaben wie „USt“ und „Umsatzsteuer“ vor der Suche auf einen einheitlichen Begriff umformulieren, damit beide Schreibweisen zum selben Ergebnis führen.
Häufige Fragen
Warum findet meine interne Suche manchmal nichts, obwohl der Inhalt da ist?
Meist, weil die Eingabe eines Nutzers von den im Index verwendeten Begriffen abweicht, etwa durch einen Tippfehler oder ein Synonym. Genau diese Lücke schließt die Umformulierung vor der eigentlichen Suche.
Führt diese Funktion die Suche selbst aus?
Nein, sie liefert nur die umformulierte Anfrage als Text. Die eigentliche Suche läuft danach als eigener, separater Schritt in einem beliebigen Suchsystem.
Was passiert mit den eingegebenen Sucheingaben?
Sie werden nur zur Umformulierung verwendet und nicht dauerhaft gespeichert; es gibt kein Konto, in dem ein Suchverlauf abgelegt würde.
Was kostet die Umformulierung einer Anfrage?
$0.003 pro Anfrage plus $0.0135 pro umformulierter Anfrage, in US-Dollar, auf dieser Seite und per API zum gleichen Preis.
Berücksichtigt die Funktion frühere Fragen in einem Gespräch?
Ja, sofern der bisherige Gesprächsverlauf mitgegeben wird, lässt sich eine Anschlussfrage wie „und der zweite?“ zu einer eigenständigen, verständlichen Anfrage umformulieren.
Ist ein Konto bei KIT nötig, um das zu nutzen?
Nein, weder auf dieser Seite noch per API ist ein Konto erforderlich.
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/rag/query-rewrite \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/rag/query-rewrite", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/rag/query-rewrite",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/rag/query-rewrite", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/rag/query-rewrite", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"input": "…"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "rag.query_rewrite",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_chunks | 10000 |
max_tokens | 20000 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
422 | task_failed | Die Aufgabe ist fehlgeschlagen und wird nicht berechnet. |