Back to overview

Ask it

RAG & chat with answers you can audit

Retrieval-augmented generation grounded in your content. Every answer streams back with inline citations you can trace to the exact source passage — with relevance gates, an optional groundedness check and a deterministic refusal when the answer isn't in your data.

  • Grounded answers with real citations

    Retrieval metadata flows end-to-end — every cited chunk carries its source, title, URL and score out to the UI as source chips, so a reader can click straight through to the passage the model used. Provider-agnostic: it's your retrieval, not a vendor's citation API.

  • Pluggable reranker

    Sharpen the candidate set with the reranker that fits your budget — an LLM reranker, a local cross-encoder or a managed service like Cohere — all behind a fail-open interface, so a reranker outage degrades gracefully instead of breaking search.

  • Relevance gate & honest refusal

    A configurable similarity floor drops weak matches, and when nothing clears the bar the chat short-circuits to a localized “this isn't covered here” answer — no LLM call, no hallucinated filler.

  • Optional groundedness check

    Turn on a post-generation faithfulness audit and any answer the check can't support gets a low-confidence caveat appended — a second line of defense against confident-but-wrong responses.

  • Embedded vector store, streamed responses

    Use the built-in Lucene KNN vector store or your engine's own vectors, fused with keyword search via RRF. Answers stream token-by-token over SSE for a responsive chat UI.

Stream a grounded, cited answer with the React SDK
import { useTuringChat } from "@viglet/turing-react-sdk";

function Assistant() {
  const { messages, send } = useTuringChat({ agent: "support" });
  // each assistant message carries .sources[] — the cited passages
  return <ChatThread messages={messages} onSend={send} />;
}