@arizeai/phoenix-evals
Version:
A library for running evaluations for AI use cases
19 lines • 1.05 kB
TypeScript
import type { CreateEvaluatorArgs, EvaluationKind, EvaluationResult, EvaluatorInterface, OptimizationDirection, TelemetryConfig } from "../types/index.js";
import type { ObjectMapping } from "../types/data.js";
/**
* Base class for all evaluators
*/
export declare abstract class EvaluatorBase<RecordType extends Record<string, unknown>> implements EvaluatorInterface<RecordType> {
readonly name: string;
readonly kind: EvaluationKind;
readonly optimizationDirection?: OptimizationDirection;
readonly inputMapping?: ObjectMapping<RecordType>;
readonly telemetry?: TelemetryConfig;
constructor({ name, kind, optimizationDirection, inputMapping, telemetry, }: CreateEvaluatorArgs<RecordType>);
abstract evaluate(_example: RecordType): Promise<EvaluationResult>;
/**
* Binds the input mapping to the evaluator. It makes a a copy of the evaluator and returns it.
*/
abstract bindInputMapping(inputMapping: ObjectMapping<RecordType>): EvaluatorBase<RecordType>;
}
//# sourceMappingURL=EvaluatorBase.d.ts.map