Skip to main content

EvaluateRagRetrieval

Description​

Calculates retrieval metrics (Precision@N, Recall@N, FScore@N, MAP@N, MRR) for a RAG system using an LLM as a judge. For each record, it uses both Precision and Recall prompts to evaluate the response, and adds the metrics as attributes to the FlowFile.

Tags​

evaluation, fscore, llm, metrics, mrr, openai, precision, rag, recall, retrieval

Properties​

In the list below required Properties are shown with an asterisk (*). Other properties are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.

Display NameAPI NameDefault ValueAllowable ValuesDescription
Record Reader *Record ReaderController Service:
RecordReaderFactory

Implementations:
AvroReader
CEFReader
CSVReader
ExcelReader
GrokReader
JsonPathReader
JsonTreeReader
ReaderLookup
ScriptedReader
Syslog5424Reader
SyslogReader
WindowsEventLogReader
XMLReader
YamlTreeReader
The Record Reader to use for reading the FlowFile.
Record Writer *Record WriterController Service:
RecordSetWriterFactory

Implementations:
AvroRecordSetWriter
CSVRecordSetWriter
FreeFormTextRecordSetWriter
JsonRecordSetWriter
RecordSetWriterLookup
ScriptedRecordSetWriter
XMLRecordSetWriter
The Record Writer to use for writing the results.
Question Record Path *Question Record PathThe RecordPath to the question field in the record.

Supports Expression Language, using FlowFile attributes and Environment variables.
Context Record Path *Context Record PathThe RecordPath to the array of contexts in the record.

Supports Expression Language, using FlowFile attributes and Environment variables.
Context Identifier Record Path *Context Identifier Record PathThe RecordPath to the array of contexts IDs in the record.

Supports Expression Language, using FlowFile attributes and Environment variables.
Ground Truth Record Path *Ground Truth Record PathThe RecordPath to the ground truth field in the record.

Supports Expression Language, using FlowFile attributes and Environment variables.
Evaluation Results Record Path *Evaluation Results Record PathThe RecordPath to write the results of the evaluation to.

Supports Expression Language, using FlowFile attributes and Environment variables.
LLM Provider Service *LLM Provider ServiceController Service:
LLMService

Implementations:
StandardAnthropicLLMService
StandardOpenAILLMService
The provider service for sending evaluation prompts to LLM

Dynamic Properties​

This component does not support dynamic properties.

Relationships​

NameDescription
failureFlowFiles that cannot be processed are routed to this relationship
successFlowFiles that are successfully processed are routed to this relationship

Reads Attributes​

This processor does not read attributes.

Writes Attributes​

NameDescription
fscore.at.nThe average F-Score at N over all queries.
json.parse.failuresNumber of JSON parse failures encountered.
mrrThe Mean Reciprocal Rank.
nThe average number of retrieved documents per query.
precision.at.nThe average precision at N over all queries.
recall.at.nThe average recall at N over all queries.
retrieval.eval.failuresNumber of records where the eval could not be calculated.

State Management​

This component does not store state.

Restricted​

This component is not restricted.

Input Requirement​

This component requires an incoming relationship.

System Resource Considerations​

This component does not specify system resource considerations.

See Also​