← All projects

Klaussa · retrieval research

Klaussa Retriever

built, no users recorded

Measured rather than adopted: scored on two registers of the Klaussa pool, n = 803 and n = 545, against the hosted embedding API that serves production. It is not one of the systems listed as shipped or in production, and no user figure is recorded for it.

Klaussa · retrieval research

The law that answered the question sat at rank 14.

Indonesian law has whole families of near-identical titles, and a general encoder ranks them on how similar the wording looks, so the one that actually governs can land at rank 14. A 568M-parameter retriever fine-tuned on this corpus puts it first, and answers in about 40 ms on an ordinary CPU against about 500 ms for the hosted API.

End to end64 seconds, one pass
klaussa-retriever / full run

The whole argument on one timeline: the query put to both encoders, the buried law surfacing, the two-register leaderboard, and what it costs to keep serving.

Delivered interface
klaussa-retriever / bench

One labelled query embedded by both encoders concurrently over the same 39,153-document index, each arm timed end to end: about 40 ms local against about 500 ms for the API round trip.

Every number, latency and metric on screen is measured by the project's own evaluation kit. The ranked lists are arranged: each row is a real document from the index and the gold document's positions are the measured ones, while the documents filling the other slots were chosen to show the failure class and not transcribed from a run.

Impact

14 → 1
rank of the governing document, this query
12.5×
faster per query, ~40 ms local against ~500 ms API
0.496
nDCG@10 on the agent register against 0.413, n = 803
0.880
nDCG@10 on the citation register against 0.856, n = 545
568M
parameters, BGE-M3 lineage
~$5
per month to serve, one CPU box plus free tiers

Delivered

Fine-tuned retriever+

A 568M bgemix4-w0p75 encoder of BGE-M3 lineage, trained on the Klaussa corpus so that near-identical statute titles are separated by which one governs rather than by surface similarity.

Two-register evaluation+

The same model measured on an agent register (AQUAK, n = 803) and a human citation register (KlaussaBench, n = 545), because a retriever that serves an agent and one that serves a lawyer are not graded the same way.

CPU serving path+

An in-RAM matmul over 39,153 documents, which is what lets a query finish in about 40 ms without a GPU and without a network hop to a hosted embedding API.

Query capture+

Every logged query becomes training data for the next fine-tune, so the register the model is graded on keeps matching the register it is used on.