Package dev.dokimos.core.evaluators
Class RecallEvaluator
java.lang.Object
dev.dokimos.core.BaseEvaluator
dev.dokimos.core.evaluators.RecallEvaluator
- All Implemented Interfaces:
Evaluator
Evaluator that measures retrieval recall.
Recall is the fraction of relevant items that were retrieved:
recall = |relevant ∩ retrieved| / |relevant|
A recall of 1.0 means all relevant items were retrieved (no false negatives). A recall of 0.0 means none of the relevant items were retrieved.
This evaluator supports various RAG use cases beyond document retrieval, including knowledge graph triples, API responses, and semantic matching.
Example usage:
var evaluator = RecallEvaluator.builder()
.name("retrieval-recall")
.retrievedKey("retrievedDocs")
.expectedKey("relevantDocs")
.matchingStrategy(MatchingStrategy.byEquality())
.threshold(0.8)
.build();
var testCase = EvalTestCase.builder()
.input("What causes diabetes?")
.actualOutput("retrievedDocs", List.of("doc_1", "doc_2", "doc_3"))
.expectedOutput("relevantDocs", List.of("doc_1", "doc_3", "doc_5"))
.build();
EvalResult result = evaluator.evaluate(testCase);
// recall = 2/3 = 0.667 (doc_1 and doc_3 were found, doc_5 was missed)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classBuilder for constructing RecallEvaluator instances. -
Method Summary
Modifier and TypeMethodDescriptionstatic RecallEvaluator.Builderbuilder()Creates a new builder for constructing the recall evaluator.Methods inherited from class dev.dokimos.core.BaseEvaluator
evaluate, evaluateAsync, evaluateAsync, name, threshold
-
Method Details
-
builder
Creates a new builder for constructing the recall evaluator.- Returns:
- a new builder
-