A client's support bot confidently invented a refund policy that didn't exist. It sounded right, which is exactly what made it dangerous. Here's how we taught it to say "I don't know" instead.
The gate
Every answer now passes through a confidence check before it reaches the customer. If retrieval doesn't surface a grounded source above a set threshold, the bot stops guessing and hands off to a human with the conversation attached.
CONFIDENCE.GATE
if (topMatch.score < 0.78) {
return handoff({
reason: 'low_confidence',
transcript,
});
}
return answerFrom(topMatch);Deflection dropped a few points. Trust went up a lot more. For anything money-adjacent, a bot that escalates beats a bot that improvises.
Written by Tomas V.
Systems engineer at AI Builders Stack. Cares a little too much about retrieval quality, latency budgets, and failing loudly.