Darstellung
Wissens-Treue (Strictness)
Jeder Bot hat eine Strictness-Stufe (1-5), die steuert, wie eng die AI-Antworten an die Knowledge Base gebunden sind. Die Stufe beeinflusst direkt die Mistral API-Parameter und das Prompt-Verhalten.
Datenbank
| Spalte | Typ | Default | Constraint |
|---|---|---|---|
bots.knowledge_strictness | integer | 3 | CHECK (knowledge_strictness >= 1 AND knowledge_strictness <= 5) |
Der Constraint heisst chk_bot_strictness.
Die 5 Stufen
Stufe 1 — Nur KB-Wissen (kb_only)
Der Bot antwortet ausschliesslich mit Informationen aus der Knowledge Base. Keine Interpretation, keine Ergaenzung.
| Parameter | Wert |
|---|---|
temperature | 0.1 |
top_p | 0.7 |
max_tokens | 300 |
frequency_penalty | 0.3 |
presence_penalty | 0.0 |
random_seed | 42 |
safe_prompt | true |
min_score | 0.80 |
low_score_action | refuse |
guardrail_categories | financial, law, health, pii |
Prompt-Instruktion:
Du darfst AUSSCHLIESSLICH Informationen aus deiner Wissensbasis verwenden. Wenn du keine passende Information findest, sage: "Dazu habe ich keine gesicherte Information. Bitte kontaktiere uns direkt." Erfinde NICHTS. Interpretiere NICHTS. Gib NUR wieder was in deiner Wissensbasis steht.
Stufe 2 — Streng faktisch (strict)
Primaer KB-basiert, bei Unsicherheit ein Disclaimer statt Verweigerung.
| Parameter | Wert |
|---|---|
temperature | 0.2 |
top_p | 0.8 |
max_tokens | 500 |
frequency_penalty | 0.2 |
presence_penalty | 0.0 |
random_seed | null |
safe_prompt | true |
min_score | 0.70 |
low_score_action | disclaimer |
guardrail_categories | financial, law, pii |
Prompt-Instruktion:
Antworte primaer auf Basis deiner Wissensbasis. Bei Unsicherheit fuege hinzu: "Für genaue Details kontaktiere uns gerne direkt." Erfinde keine Preise, Zahlen oder Fakten.
Stufe 3 — Ausgewogen (balanced)
KB als Hauptquelle, allgemeines Wissen darf ergaenzt werden. Default-Stufe für neue Bots.
| Parameter | Wert |
|---|---|
temperature | 0.4 |
top_p | 0.9 |
max_tokens | 800 |
frequency_penalty | 0.0 |
presence_penalty | 0.0 |
random_seed | null |
safe_prompt | true |
min_score | 0.50 |
low_score_action | disclaimer |
guardrail_categories | pii |
Prompt-Instruktion:
Nutze deine Wissensbasis als Hauptquelle. Du darfst allgemein bekanntes Wissen ergaenzen, aber erfinde keine spezifischen Fakten, Preise oder Produkte.
Stufe 4 — Gespraechig (conversational)
Freundlich und empathisch, KB wird genutzt aber nicht erzwungen.
| Parameter | Wert |
|---|---|
temperature | 0.6 |
top_p | 0.95 |
max_tokens | 1000 |
frequency_penalty | 0.0 |
presence_penalty | 0.2 |
random_seed | null |
safe_prompt | true |
min_score | 0.40 |
low_score_action | soft_hint |
guardrail_categories | pii |
Prompt-Instruktion:
Sei freundlich und gespraechig. Nutze deine Wissensbasis, aber ergaenze gerne mit allgemeinem Wissen und empathischen Antworten.
Stufe 5 — Kreativ (creative)
Maximale Freiheit. KB als Inspiration, kreative Ideen willkommen.
| Parameter | Wert |
|---|---|
temperature | 0.8 |
top_p | 1.0 |
max_tokens | 1200 |
frequency_penalty | 0.0 |
presence_penalty | 0.3 |
random_seed | null |
safe_prompt | true |
min_score | 0.0 |
low_score_action | none |
guardrail_categories | (keine) |
Prompt-Instruktion:
Sei kreativ und inspirierend. Nutze deine Wissensbasis als Ausgangspunkt, aber denke frei weiter und biete kreative Ideen und Vorschlaege an.
Übersichtstabelle
| Stufe | Name (de) | Key | Temp | Top-P | Max Tokens | Min Score | Action | Guardrails | freq_penalty | pres_penalty | random_seed | safe_prompt |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Nur KB-Wissen | kb_only | 0.1 | 0.7 | 300 | 0.80 | refuse | financial, law, health, pii | 0.3 | 0.0 | 42 | true |
| 2 | Streng faktisch | strict | 0.2 | 0.8 | 500 | 0.70 | disclaimer | financial, law, pii | 0.2 | 0.0 | null | true |
| 3 | Ausgewogen | balanced | 0.4 | 0.9 | 800 | 0.50 | disclaimer | pii | 0.0 | 0.0 | null | true |
| 4 | Gespraechig | conversational | 0.6 | 0.95 | 1000 | 0.40 | soft_hint | pii | 0.0 | 0.2 | null | true |
| 5 | Kreativ | creative | 0.8 | 1.0 | 1200 | 0.0 | none | (keine) | 0.0 | 0.3 | null | true |
API
getStrictnessConfig(level)
Gibt die Config für eine Stufe zurück. Der Level wird auf 1-5 geclamped, bei ungültigem Input faellt er auf 3 (balanced) zurück.
js
const { getStrictnessConfig } = require('../constants/strictnessLevels');
const config = getStrictnessConfig(bot.knowledge_strictness);
// config.temperature, config.max_tokens, config.prompt_instruction, ...Exports
js
module.exports = { STRICTNESS_LEVELS, getStrictnessConfig };low_score_action Erklaerung
| Action | Verhalten |
|---|---|
refuse | Bot verweigert die Antwort und verweist auf direkten Kontakt |
disclaimer | Bot antwortet, fuegt aber einen Hinweis hinzu |
soft_hint | Bot antwortet frei, gibt dezenten Hinweis bei Unsicherheit |
none | Keine Einschraenkung |
Datei
src/constants/strictnessLevels.js