@lov3kaizen/agentsea-evaluate 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +339 -0
  3. package/dist/annotation/index.d.mts +3 -0
  4. package/dist/annotation/index.d.ts +3 -0
  5. package/dist/annotation/index.js +630 -0
  6. package/dist/annotation/index.mjs +22 -0
  7. package/dist/chunk-5JRYKRSE.mjs +2791 -0
  8. package/dist/chunk-EUXXIZK3.mjs +676 -0
  9. package/dist/chunk-NBMUSATK.mjs +596 -0
  10. package/dist/chunk-PAQ2TTJJ.mjs +1105 -0
  11. package/dist/chunk-TUMNJN2S.mjs +416 -0
  12. package/dist/continuous/index.d.mts +2 -0
  13. package/dist/continuous/index.d.ts +2 -0
  14. package/dist/continuous/index.js +707 -0
  15. package/dist/continuous/index.mjs +16 -0
  16. package/dist/datasets/index.d.mts +1 -0
  17. package/dist/datasets/index.d.ts +1 -0
  18. package/dist/datasets/index.js +456 -0
  19. package/dist/datasets/index.mjs +14 -0
  20. package/dist/evaluation/index.d.mts +1 -0
  21. package/dist/evaluation/index.d.ts +1 -0
  22. package/dist/evaluation/index.js +2853 -0
  23. package/dist/evaluation/index.mjs +78 -0
  24. package/dist/feedback/index.d.mts +2 -0
  25. package/dist/feedback/index.d.ts +2 -0
  26. package/dist/feedback/index.js +1158 -0
  27. package/dist/feedback/index.mjs +40 -0
  28. package/dist/index-6Pbiq7ny.d.mts +234 -0
  29. package/dist/index-6Pbiq7ny.d.ts +234 -0
  30. package/dist/index-BNTycFEA.d.mts +479 -0
  31. package/dist/index-BNTycFEA.d.ts +479 -0
  32. package/dist/index-CTYCfWfH.d.mts +543 -0
  33. package/dist/index-CTYCfWfH.d.ts +543 -0
  34. package/dist/index-Cq5LwG_3.d.mts +322 -0
  35. package/dist/index-Cq5LwG_3.d.ts +322 -0
  36. package/dist/index-bPghFsfP.d.mts +315 -0
  37. package/dist/index-bPghFsfP.d.ts +315 -0
  38. package/dist/index.d.mts +81 -0
  39. package/dist/index.d.ts +81 -0
  40. package/dist/index.js +5962 -0
  41. package/dist/index.mjs +429 -0
  42. package/package.json +102 -0
@@ -0,0 +1,543 @@
1
+ type MetricType = 'accuracy' | 'relevance' | 'coherence' | 'toxicity' | 'faithfulness' | 'answer_correctness' | 'context_relevance' | 'fluency' | 'conciseness' | 'helpfulness' | 'safety' | 'custom';
2
+ interface ScoreRange {
3
+ min: number;
4
+ max: number;
5
+ }
6
+ interface MetricResult {
7
+ metric: string;
8
+ score: number;
9
+ explanation?: string;
10
+ details?: Record<string, unknown>;
11
+ confidence?: number;
12
+ }
13
+ interface BaseMetricConfig {
14
+ name?: string;
15
+ threshold?: number;
16
+ weight?: number;
17
+ scoreRange?: ScoreRange;
18
+ }
19
+ interface AccuracyMetricConfig extends BaseMetricConfig {
20
+ type: 'exact' | 'fuzzy' | 'semantic';
21
+ caseSensitive?: boolean;
22
+ ignoreWhitespace?: boolean;
23
+ similarityThreshold?: number;
24
+ }
25
+ interface RelevanceMetricConfig extends BaseMetricConfig {
26
+ model?: string;
27
+ prompt?: string;
28
+ }
29
+ interface CoherenceMetricConfig extends BaseMetricConfig {
30
+ checkLogicalFlow?: boolean;
31
+ checkConsistency?: boolean;
32
+ }
33
+ interface ToxicityMetricConfig extends BaseMetricConfig {
34
+ categories?: ToxicityCategory[];
35
+ strictMode?: boolean;
36
+ }
37
+ type ToxicityCategory = 'hate' | 'harassment' | 'violence' | 'sexual' | 'self_harm' | 'dangerous';
38
+ interface FaithfulnessMetricConfig extends BaseMetricConfig {
39
+ model?: string;
40
+ checkFactualAccuracy?: boolean;
41
+ checkSourceAttribution?: boolean;
42
+ }
43
+ interface ContextRelevanceMetricConfig extends BaseMetricConfig {
44
+ model?: string;
45
+ minRelevantChunks?: number;
46
+ }
47
+ interface CustomMetricConfig extends BaseMetricConfig {
48
+ evaluateFn: (input: EvaluationInput) => Promise<MetricResult>;
49
+ }
50
+ interface MetricInterface {
51
+ readonly type: string;
52
+ readonly name: string;
53
+ evaluate(input: EvaluationInput): Promise<MetricResult>;
54
+ }
55
+ interface EvaluationInput {
56
+ input: string;
57
+ output: string;
58
+ expectedOutput?: string;
59
+ context?: string[];
60
+ reference?: string;
61
+ metadata?: Record<string, unknown>;
62
+ }
63
+ type JudgeType = 'llm' | 'rubric' | 'comparative' | 'consensus';
64
+ interface JudgeCriterion {
65
+ name: string;
66
+ prompt: string;
67
+ scoreRange?: ScoreRange;
68
+ weight?: number;
69
+ }
70
+ interface LLMJudgeConfig {
71
+ provider: LLMProviderInterface;
72
+ model: string;
73
+ criteria: JudgeCriterion[];
74
+ systemPrompt?: string;
75
+ temperature?: number;
76
+ maxRetries?: number;
77
+ }
78
+ interface LLMProviderInterface {
79
+ complete(params: {
80
+ model: string;
81
+ messages: Array<{
82
+ role: string;
83
+ content: string;
84
+ }>;
85
+ temperature?: number;
86
+ maxTokens?: number;
87
+ }): Promise<{
88
+ content: string;
89
+ }>;
90
+ }
91
+ interface RubricLevel {
92
+ score: number;
93
+ description: string;
94
+ examples?: string[];
95
+ }
96
+ interface RubricConfig {
97
+ criteria: string;
98
+ levels: RubricLevel[];
99
+ }
100
+ interface RubricJudgeConfig {
101
+ provider: LLMProviderInterface;
102
+ model?: string;
103
+ rubric: RubricConfig;
104
+ temperature?: number;
105
+ }
106
+ interface ComparativeJudgeConfig {
107
+ provider: LLMProviderInterface;
108
+ model?: string;
109
+ criteria: string[];
110
+ tieBreaker?: string;
111
+ temperature?: number;
112
+ }
113
+ interface ComparisonInput {
114
+ input: string;
115
+ responseA: string;
116
+ responseB: string;
117
+ context?: string[];
118
+ }
119
+ interface ComparisonResult {
120
+ winner: 'A' | 'B' | 'tie';
121
+ reasoning: string;
122
+ criteriaScores?: Record<string, {
123
+ A: number;
124
+ B: number;
125
+ }>;
126
+ confidence?: number;
127
+ }
128
+ interface ConsensusJudgeConfig {
129
+ judges: JudgeInterface[];
130
+ aggregation: 'majority' | 'average' | 'weighted';
131
+ weights?: number[];
132
+ minAgreement?: number;
133
+ }
134
+ interface JudgeInterface {
135
+ readonly type: JudgeType;
136
+ evaluate(input: EvaluationInput): Promise<JudgeResult>;
137
+ }
138
+ interface JudgeResult {
139
+ scores: Record<string, number>;
140
+ explanations: Record<string, string>;
141
+ overallScore?: number;
142
+ confidence?: number;
143
+ metadata?: Record<string, unknown>;
144
+ }
145
+ interface EvalDatasetItem {
146
+ id: string;
147
+ input: string;
148
+ expectedOutput?: string;
149
+ context?: string[];
150
+ reference?: string;
151
+ metadata?: Record<string, unknown>;
152
+ tags?: string[];
153
+ }
154
+ interface EvalDatasetConfig {
155
+ name?: string;
156
+ description?: string;
157
+ items: EvalDatasetItem[];
158
+ metadata?: Record<string, unknown>;
159
+ }
160
+ interface HFDatasetConfig {
161
+ split?: string;
162
+ subset?: string;
163
+ inputField?: string;
164
+ outputField?: string;
165
+ contextField?: string;
166
+ limit?: number;
167
+ }
168
+ interface EvaluationPipelineConfig {
169
+ metrics: MetricInterface[];
170
+ llmJudge?: JudgeInterface;
171
+ parallelism?: number;
172
+ timeout?: number;
173
+ retries?: number;
174
+ batchSize?: number;
175
+ }
176
+ interface PipelineEvaluationOptions {
177
+ dataset: EvalDatasetInterface;
178
+ generateFn: (input: string, context?: string[]) => Promise<string>;
179
+ onProgress?: (progress: EvaluationProgress) => void;
180
+ onError?: (error: EvaluationError) => void;
181
+ stopOnError?: boolean;
182
+ }
183
+ interface EvaluationProgress {
184
+ completed: number;
185
+ total: number;
186
+ currentItem?: string;
187
+ elapsedMs: number;
188
+ estimatedRemainingMs?: number;
189
+ }
190
+ interface EvaluationError {
191
+ itemId: string;
192
+ input: string;
193
+ error: Error;
194
+ phase: 'generation' | 'evaluation';
195
+ }
196
+ interface SingleEvaluationResult {
197
+ itemId: string;
198
+ input: string;
199
+ output: string;
200
+ expectedOutput?: string;
201
+ context?: string[];
202
+ scores: Record<string, number>;
203
+ explanations?: Record<string, string>;
204
+ judgeResult?: JudgeResult;
205
+ passed: boolean;
206
+ durationMs: number;
207
+ }
208
+ interface PipelineEvaluationResult {
209
+ results: SingleEvaluationResult[];
210
+ metrics: MetricsSummary;
211
+ failures: FailureAnalysis[];
212
+ summary: EvaluationSummary;
213
+ exportJSON(): string;
214
+ exportCSV(): string;
215
+ getFailures(options?: FailureFilterOptions): FailureAnalysis[];
216
+ }
217
+ interface MetricsSummary {
218
+ [metric: string]: {
219
+ mean: number;
220
+ std: number;
221
+ min: number;
222
+ max: number;
223
+ median: number;
224
+ p90: number;
225
+ p95: number;
226
+ passRate: number;
227
+ };
228
+ }
229
+ interface FailureAnalysis {
230
+ itemId: string;
231
+ input: string;
232
+ output: string;
233
+ expectedOutput?: string;
234
+ scores: Record<string, number>;
235
+ failedMetrics: string[];
236
+ explanation?: string;
237
+ }
238
+ interface FailureFilterOptions {
239
+ threshold?: number;
240
+ metric?: string;
241
+ limit?: number;
242
+ }
243
+ interface EvaluationSummary {
244
+ totalItems: number;
245
+ passedItems: number;
246
+ failedItems: number;
247
+ passRate: number;
248
+ avgScore: number;
249
+ totalDurationMs: number;
250
+ avgDurationMs: number;
251
+ timestamp: number;
252
+ }
253
+ interface EvalDatasetInterface {
254
+ readonly name: string;
255
+ readonly size: number;
256
+ getItems(): EvalDatasetItem[];
257
+ getItem(id: string): EvalDatasetItem | undefined;
258
+ filter(predicate: (item: EvalDatasetItem) => boolean): EvalDatasetInterface;
259
+ sample(count: number): EvalDatasetInterface;
260
+ split(ratio: number): [EvalDatasetInterface, EvalDatasetInterface];
261
+ }
262
+ interface EvalRunnerConfig {
263
+ parallelism?: number;
264
+ timeout?: number;
265
+ retries?: number;
266
+ onItemComplete?: (result: SingleEvaluationResult) => void;
267
+ onError?: (error: EvaluationError) => void;
268
+ }
269
+
270
+ declare abstract class BaseMetric implements MetricInterface {
271
+ abstract readonly type: string;
272
+ readonly name: string;
273
+ protected threshold: number;
274
+ protected weight: number;
275
+ protected scoreRange: ScoreRange;
276
+ constructor(config?: BaseMetricConfig);
277
+ protected initName(config: BaseMetricConfig): void;
278
+ abstract evaluate(input: EvaluationInput): Promise<MetricResult>;
279
+ passes(score: number): boolean;
280
+ protected normalizeScore(score: number): number;
281
+ protected createResult(score: number, explanation?: string, details?: Record<string, unknown>): MetricResult;
282
+ }
283
+
284
+ declare class Accuracy extends BaseMetric {
285
+ readonly type: "accuracy";
286
+ private matchType;
287
+ private caseSensitive;
288
+ private ignoreWhitespace;
289
+ constructor(config?: AccuracyMetricConfig);
290
+ evaluate(input: EvaluationInput): Promise<MetricResult>;
291
+ private preprocess;
292
+ private calculateFuzzySimilarity;
293
+ }
294
+ declare function createAccuracyMetric(config?: AccuracyMetricConfig): Accuracy;
295
+
296
+ declare class Relevance extends BaseMetric {
297
+ readonly type: "relevance";
298
+ private provider?;
299
+ private model;
300
+ private prompt?;
301
+ constructor(config?: RelevanceMetricConfig);
302
+ setProvider(provider: LLMProviderInterface): void;
303
+ evaluate(input: EvaluationInput): Promise<MetricResult>;
304
+ private evaluateHeuristic;
305
+ private evaluateWithLLM;
306
+ private getDefaultPrompt;
307
+ private extractKeywords;
308
+ private detectQuestionType;
309
+ private checkAnswerType;
310
+ }
311
+ declare function createRelevanceMetric(config?: RelevanceMetricConfig): Relevance;
312
+
313
+ declare class Coherence extends BaseMetric {
314
+ readonly type: "coherence";
315
+ private checkLogicalFlow;
316
+ private checkConsistency;
317
+ constructor(config?: CoherenceMetricConfig);
318
+ evaluate(input: EvaluationInput): Promise<MetricResult>;
319
+ private checkStructure;
320
+ private checkFlow;
321
+ private checkInternalConsistency;
322
+ private checkCompleteness;
323
+ private generateExplanation;
324
+ }
325
+ declare function createCoherenceMetric(config?: CoherenceMetricConfig): Coherence;
326
+
327
+ declare class Toxicity extends BaseMetric {
328
+ readonly type: "toxicity";
329
+ private categories;
330
+ private strictMode;
331
+ private static readonly TOXIC_PATTERNS;
332
+ constructor(config?: ToxicityMetricConfig);
333
+ evaluate(input: EvaluationInput): Promise<MetricResult>;
334
+ private checkCategory;
335
+ private generateExplanation;
336
+ passes(score: number): boolean;
337
+ }
338
+ declare function createToxicityMetric(config?: ToxicityMetricConfig): Toxicity;
339
+
340
+ declare class Faithfulness extends BaseMetric {
341
+ readonly type: "faithfulness";
342
+ private provider?;
343
+ private model;
344
+ constructor(config?: FaithfulnessMetricConfig);
345
+ setProvider(provider: LLMProviderInterface): void;
346
+ evaluate(input: EvaluationInput): Promise<MetricResult>;
347
+ private evaluateHeuristic;
348
+ private evaluateWithLLM;
349
+ private extractClaims;
350
+ private checkClaimSupport;
351
+ }
352
+ declare function createFaithfulnessMetric(config?: FaithfulnessMetricConfig): Faithfulness;
353
+
354
+ declare class ContextRelevance extends BaseMetric {
355
+ readonly type: "context_relevance";
356
+ private provider?;
357
+ private model;
358
+ private minRelevantChunks;
359
+ constructor(config?: ContextRelevanceMetricConfig);
360
+ setProvider(provider: LLMProviderInterface): void;
361
+ evaluate(input: EvaluationInput): Promise<MetricResult>;
362
+ private evaluateHeuristic;
363
+ private evaluateWithLLM;
364
+ private extractKeywords;
365
+ }
366
+ declare function createContextRelevanceMetric(config?: ContextRelevanceMetricConfig): ContextRelevance;
367
+
368
+ declare class CustomMetric extends BaseMetric {
369
+ readonly type: "custom";
370
+ private evaluateFn;
371
+ constructor(config: CustomMetricConfig);
372
+ evaluate(input: EvaluationInput): Promise<MetricResult>;
373
+ }
374
+ declare function createCustomMetric(config: CustomMetricConfig): CustomMetric;
375
+ declare function createSimpleMetric(name: string, scoreFn: (input: string, output: string, expected?: string) => number | Promise<number>, options?: {
376
+ threshold?: number;
377
+ weight?: number;
378
+ }): CustomMetric;
379
+ declare function createLengthMetric(options: {
380
+ minLength?: number;
381
+ maxLength?: number;
382
+ targetLength?: number;
383
+ tolerance?: number;
384
+ }): CustomMetric;
385
+ declare function createRegexMetric(options: {
386
+ pattern: RegExp;
387
+ name?: string;
388
+ shouldMatch?: boolean;
389
+ }): CustomMetric;
390
+ declare function createJSONMetric(options?: {
391
+ schema?: Record<string, unknown>;
392
+ }): CustomMetric;
393
+ declare function createContainsMetric(options: {
394
+ required?: string[];
395
+ forbidden?: string[];
396
+ caseSensitive?: boolean;
397
+ }): CustomMetric;
398
+
399
+ declare class LLMJudge implements JudgeInterface {
400
+ readonly type: "llm";
401
+ private provider;
402
+ private model;
403
+ private criteria;
404
+ private systemPrompt;
405
+ private temperature;
406
+ private maxRetries;
407
+ constructor(config: LLMJudgeConfig);
408
+ evaluate(input: EvaluationInput): Promise<JudgeResult>;
409
+ private evaluateCriterion;
410
+ private buildPrompt;
411
+ private parseResponse;
412
+ private calculateConfidence;
413
+ private getDefaultSystemPrompt;
414
+ addCriterion(criterion: JudgeCriterion): void;
415
+ removeCriterion(name: string): boolean;
416
+ getCriteria(): JudgeCriterion[];
417
+ }
418
+ declare function createLLMJudge(config: LLMJudgeConfig): LLMJudge;
419
+
420
+ declare class RubricJudge implements JudgeInterface {
421
+ readonly type: "rubric";
422
+ private provider;
423
+ private model;
424
+ private rubric;
425
+ private temperature;
426
+ constructor(config: RubricJudgeConfig);
427
+ evaluate(input: EvaluationInput): Promise<JudgeResult>;
428
+ private buildPrompt;
429
+ private getSystemPrompt;
430
+ private parseResponse;
431
+ getRubric(): RubricConfig;
432
+ setRubric(rubric: RubricConfig): void;
433
+ }
434
+ declare function createRubricJudge(config: RubricJudgeConfig): RubricJudge;
435
+ declare const QualityRubric: RubricConfig;
436
+ declare const CodeQualityRubric: RubricConfig;
437
+ declare const HelpfulnessRubric: RubricConfig;
438
+
439
+ declare class ComparativeJudge implements JudgeInterface {
440
+ readonly type: "comparative";
441
+ private provider;
442
+ private model;
443
+ private criteria;
444
+ private tieBreaker?;
445
+ private temperature;
446
+ constructor(config: ComparativeJudgeConfig);
447
+ evaluate(input: EvaluationInput): Promise<JudgeResult>;
448
+ compare(input: ComparisonInput): Promise<ComparisonResult>;
449
+ private buildComparisonPrompt;
450
+ private getSystemPrompt;
451
+ private parseComparisonResponse;
452
+ getCriteria(): string[];
453
+ setCriteria(criteria: string[]): void;
454
+ }
455
+ declare function createComparativeJudge(config: ComparativeJudgeConfig): ComparativeJudge;
456
+
457
+ declare class ConsensusJudge implements JudgeInterface {
458
+ readonly type: "consensus";
459
+ private judges;
460
+ private aggregation;
461
+ private weights?;
462
+ private minAgreement;
463
+ constructor(config: ConsensusJudgeConfig);
464
+ evaluate(input: EvaluationInput): Promise<JudgeResult>;
465
+ private aggregateMajority;
466
+ private aggregateAverage;
467
+ private aggregateWeighted;
468
+ addJudge(judge: JudgeInterface, weight?: number): void;
469
+ removeJudge(index: number): boolean;
470
+ getJudgeCount(): number;
471
+ }
472
+ declare function createConsensusJudge(config: ConsensusJudgeConfig): ConsensusJudge;
473
+
474
+ declare class EvalDataset implements EvalDatasetInterface {
475
+ readonly name: string;
476
+ private items;
477
+ private metadata?;
478
+ constructor(config: EvalDatasetConfig);
479
+ get size(): number;
480
+ getItems(): EvalDatasetItem[];
481
+ getItem(id: string): EvalDatasetItem | undefined;
482
+ filter(predicate: (item: EvalDatasetItem) => boolean): EvalDataset;
483
+ sample(count: number, seed?: number): EvalDataset;
484
+ split(ratio: number): [EvalDataset, EvalDataset];
485
+ filterByTags(tags: string[], mode?: 'any' | 'all'): EvalDataset;
486
+ getTags(): string[];
487
+ addItems(items: EvalDatasetItem[]): void;
488
+ removeItem(id: string): boolean;
489
+ private seededRandom;
490
+ toJSON(): string;
491
+ toJSONL(): string;
492
+ static fromJSON(data: Array<{
493
+ input: string;
494
+ expectedOutput?: string;
495
+ context?: string[];
496
+ reference?: string;
497
+ metadata?: Record<string, unknown>;
498
+ tags?: string[];
499
+ }>, name?: string): EvalDataset;
500
+ static fromJSONL(jsonl: string, name?: string): EvalDataset;
501
+ static fromHuggingFace(datasetName: string, config?: HFDatasetConfig): Promise<EvalDataset>;
502
+ static fromCSV(csv: string, options?: {
503
+ inputColumn?: string;
504
+ outputColumn?: string;
505
+ contextColumn?: string;
506
+ delimiter?: string;
507
+ }): EvalDataset;
508
+ }
509
+ declare function createEvalDataset(config: EvalDatasetConfig): EvalDataset;
510
+
511
+ declare class EvalRunner {
512
+ private parallelism;
513
+ private timeout;
514
+ private retries;
515
+ private onItemComplete?;
516
+ private onError?;
517
+ constructor(config?: EvalRunnerConfig);
518
+ run(dataset: EvalDatasetInterface, generateFn: (input: string, context?: string[]) => Promise<string>, metrics: MetricInterface[], judge?: JudgeInterface): Promise<SingleEvaluationResult[]>;
519
+ runStream(dataset: EvalDatasetInterface, generateFn: (input: string, context?: string[]) => Promise<string>, metrics: MetricInterface[], judge?: JudgeInterface): AsyncGenerator<SingleEvaluationResult, void, unknown>;
520
+ private evaluateItem;
521
+ private withTimeout;
522
+ }
523
+ declare function createEvalRunner(config?: EvalRunnerConfig): EvalRunner;
524
+
525
+ declare class EvaluationPipeline {
526
+ private metrics;
527
+ private llmJudge?;
528
+ private runner;
529
+ constructor(config: EvaluationPipelineConfig);
530
+ evaluate(options: PipelineEvaluationOptions): Promise<PipelineEvaluationResult>;
531
+ evaluateStream(options: PipelineEvaluationOptions): AsyncGenerator<SingleEvaluationResult, PipelineEvaluationResult, unknown>;
532
+ private calculateMetricsSummary;
533
+ private analyzeFailures;
534
+ private createSummary;
535
+ private createResult;
536
+ addMetric(metric: MetricInterface): void;
537
+ removeMetric(name: string): boolean;
538
+ setJudge(judge: JudgeInterface): void;
539
+ getMetrics(): MetricInterface[];
540
+ }
541
+ declare function createEvaluationPipeline(config: EvaluationPipelineConfig): EvaluationPipeline;
542
+
543
+ export { Coherence as $, type AccuracyMetricConfig as A, type BaseMetricConfig as B, type CoherenceMetricConfig as C, type FailureAnalysis as D, EvaluationPipeline as E, type FaithfulnessMetricConfig as F, type FailureFilterOptions as G, type HFDatasetConfig as H, type EvaluationSummary as I, type JudgeType as J, type EvalDatasetInterface as K, type LLMJudgeConfig as L, type MetricType as M, type EvalRunnerConfig as N, createEvalDataset as O, type PipelineEvaluationResult as P, EvalRunner as Q, type RelevanceMetricConfig as R, type ScoreRange as S, type ToxicityMetricConfig as T, createEvalRunner as U, createEvaluationPipeline as V, BaseMetric as W, Accuracy as X, createAccuracyMetric as Y, Relevance as Z, createRelevanceMetric as _, EvalDataset as a, createCoherenceMetric as a0, Toxicity as a1, createToxicityMetric as a2, Faithfulness as a3, createFaithfulnessMetric as a4, ContextRelevance as a5, createContextRelevanceMetric as a6, CustomMetric as a7, createCustomMetric as a8, createSimpleMetric as a9, createLengthMetric as aa, createRegexMetric as ab, createJSONMetric as ac, createContainsMetric as ad, LLMJudge as ae, createLLMJudge as af, RubricJudge as ag, createRubricJudge as ah, QualityRubric as ai, CodeQualityRubric as aj, HelpfulnessRubric as ak, ComparativeJudge as al, createComparativeJudge as am, ConsensusJudge as an, createConsensusJudge as ao, type MetricResult as b, type ToxicityCategory as c, type ContextRelevanceMetricConfig as d, type CustomMetricConfig as e, type MetricInterface as f, type EvaluationInput as g, type JudgeCriterion as h, type LLMProviderInterface as i, type RubricLevel as j, type RubricConfig as k, type RubricJudgeConfig as l, type ComparativeJudgeConfig as m, type ComparisonInput as n, type ComparisonResult as o, type ConsensusJudgeConfig as p, type JudgeInterface as q, type JudgeResult as r, type EvalDatasetItem as s, type EvalDatasetConfig as t, type EvaluationPipelineConfig as u, type PipelineEvaluationOptions as v, type EvaluationProgress as w, type EvaluationError as x, type SingleEvaluationResult as y, type MetricsSummary as z };