Documentation
¶
Overview ¶
Package eval provides a small evaluation harness for measuring retrieval quality (Hit@K, MRR, etc).
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Case ¶
type Case struct {
// ID — стабильный идентификатор кейса (опционально).
ID string
// Question — текст вопроса, который будет отправлен в retrieval.
Question string
// ExpectedParentIDs — множество “правильных” parent IDs, по которым оценивается hit@k и rank.
ExpectedParentIDs []string
// TopK — topK для retrieval в рамках кейса; 0 означает использование дефолта harness.
TopK int
}
Case описывает один eval-кейс для оценки retrieval.
type CaseResult ¶
type CaseResult struct {
CaseID string
// Found — попадание хотя бы одного ExpectedParentIDs в topK.
Found bool
// Rank — 1..K для первого попадания; 0 если не найдено.
Rank int
// RetrievedParentIDs — parentIDs в порядке ранжирования (для дебага).
RetrievedParentIDs []string
// @sk-task T1.2: Добавить поле NDCG для per-case оценки ранжирования (AC-004)
NDCG float64
// @sk-task T1.2: Добавить поле Precision для per-case оценки точности (AC-004)
Precision float64
// @sk-task T1.2: Добавить поле Recall для per-case оценки полноты (AC-004)
Recall float64
}
CaseResult — подробный результат прогона одного кейса.
type Metrics ¶
type Metrics struct {
TotalCases int
HitAtK float64
MRR float64
// @sk-task T1.1: Добавить поле NDCG для оценки ранжирования с учётом релевантности (AC-001)
NDCG float64
// @sk-task T1.1: Добавить поле Precision для оценки точности поиска (AC-002)
Precision float64
// @sk-task T1.1: Добавить поле Recall для оценки полноты поиска (AC-002)
Recall float64
}
Metrics — агрегированные метрики eval-прогона.
type Options ¶
type Options struct {
// DefaultTopK — topK по умолчанию, если в кейсе TopK=0.
// Если 0, используется 5.
DefaultTopK int
// @sk-task T2.3: Добавить флаг EnableNDCG для включения вычисления NDCG (AC-003)
EnableNDCG bool
// @sk-task T2.3: Добавить флаг EnablePrecision для включения вычисления Precision (AC-003)
EnablePrecision bool
// @sk-task T2.3: Добавить флаг EnableRecall для включения вычисления Recall (AC-003)
EnableRecall bool
}
Options задаёт параметры запуска harness.
type Report ¶
type Report struct {
Metrics Metrics
Cases []CaseResult
}
Report — агрегированный отчёт по датасету.
func (Report) MarshalJSON ¶
MarshalJSON реализует сериализацию Report в JSON. @sk-task T2.4: MarshalJSON реализует сериализацию Report в JSON (AC-006)
type RetrievalRunner ¶
type RetrievalRunner interface {
Retrieve(ctx context.Context, question string, topK int) (draftrag.RetrievalResult, error)
}
RetrievalRunner — минимальный интерфейс для eval harness. Pipeline удовлетворяет этому интерфейсу напрямую.
Click to show internal directories.
Click to hide internal directories.