UNPKG

@arizeai/phoenix-evals

Version:
23 lines 1.05 kB
import { createEvaluator } from "../helpers/createEvaluator.js"; import { computePrecisionRecallFScore, } from "./classificationMetrics.js"; /** * Internal factory shared by `createPrecisionEvaluator`, `createRecallEvaluator`, * and `createFBetaEvaluator` — each is a thin wrapper that only differs in * which result field it reads and how its metric name is built. */ export function createClassificationMetricEvaluator(name, field, options, compute = computePrecisionRecallFScore) { return createEvaluator( // Pass `example` through by reference (rather than destructuring and // rebuilding a new object) so callers that share one computed result by // caching on object identity (e.g. `createPrecisionRecallFScoreEvaluators`) // actually get a cache hit. (example) => { const result = compute(example, options); return { score: result[field] }; }, { name, kind: "CODE", optimizationDirection: "MAXIMIZE", }); } //# sourceMappingURL=createClassificationMetricEvaluator.js.map