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