All activity
LLM claims validated against real data — never invented.
Kremis ingests EAV signals, builds a deterministic graph, classifies every response: FACT (direct edge), INFERENCE (derived path), or UNKNOWN (not in data). No confidence scores. No probabilistic gaps.
Built in pure Rust (no async, no floats in core), with ACID persistence via redb, HTTP API, CLI, and MCP bridge for Claude/Cursor. Apache 2.0.
v0.17.8 — alpha, functional, tested. 354 tests passing.

kremisEvery LLM claim traced to real data — or rejected
TyKoltleft a comment
I built Kremis because RAG retrieves the right documents but the LLM still invents details. I needed a way to check each claim against real data — not with similarity scores, but with a binary answer: is this in my data or not? The core loop: 1. Ingest signals as EAV triples (entity, attribute, value) 2. Kremis builds a weighted graph from co-occurrence 3. Query → every result tagged as FACT,...

kremisEvery LLM claim traced to real data — or rejected
TyKoltstarted a discussion
How do you handle LLM hallucinations in your pipeline?
RAG retrieves the right documents, but LLMs still make up details not present in the source data. I kept hitting this wall, so I built Kremis. It shifts the approach from probabilistic guessing to deterministic verification. Here is what it actually does: 1. Ingests your data to build a strict knowledge graph. 2. Evaluates every LLM query result against that graph. 3. Outputs a concrete...
