Table of Contents

Constructor MailAnsweringRetrievalReport

Namespace
MailFathom.Application.Retrieval.AskMail
Assembly
MailFathom.Application.dll

MailAnsweringRetrievalReport(IReadOnlyList<EmailKnowledgePassage>, int, int, MailAnsweringRunDegradation)

What one run's retrieval reached across every lookup it made.

public MailAnsweringRetrievalReport(IReadOnlyList<EmailKnowledgePassage> Passages, int CandidateCount, int RelevantCandidateCount, MailAnsweringRunDegradation Degradation)

Parameters

Passages IReadOnlyList<EmailKnowledgePassage>

The passages that reached the model, in the order the run retrieved them.

CandidateCount int

How many candidates the run's lookups ranked, before any relevance filtering narrowed them.

RelevantCandidateCount int

How many of those candidates survived being judged, which equals CandidateCount where nothing judged them.

Degradation MailAnsweringRunDegradation

The ways the run read less of the mailbox than an undegraded run of the same question would.

Remarks

Three counts rather than one, because they narrow for three different reasons and only the pairs between them say anything. The candidates are what the queries resembled; the relevant ones are what a deployment's second pass decided actually answered; the passages are what the run's own ceiling on retrieved mail then allowed to leave the process. A dashboard showing only the last of them cannot tell a question that found little from one that was stopped from sending much.

It is summed over the run rather than reported per lookup, because a run is what a person asked and what an operator or an audit asks about afterwards. A model decides how many lookups to make, so a per-lookup figure describes a decision nobody took.