@mastra/core
Version:
Mastra is a framework for building AI-powered applications and agents with a modern TypeScript stack.
72 lines (69 loc) • 1.5 kB
JavaScript
import { executeHook } from './chunk-TTELJD4F.js';
import { MastraError } from './chunk-PZUZNPFM.js';
// src/eval/metric.ts
var Metric = class {
};
// src/eval/evaluation.ts
async function evaluate({
agentName,
input,
metric,
output,
runId,
globalRunId,
testInfo,
instructions
}) {
const runIdToUse = runId || crypto.randomUUID();
let metricResult;
let metricName = metric.constructor.name;
try {
metricResult = await metric.measure(input.toString(), output);
} catch (e) {
throw new MastraError(
{
id: "EVAL_METRIC_MEASURE_EXECUTION_FAILED",
domain: "EVAL" /* EVAL */,
category: "USER" /* USER */,
details: {
agentName,
metricName,
globalRunId
}
},
e
);
}
const traceObject = {
input: input.toString(),
output,
result: metricResult,
agentName,
metricName,
instructions,
globalRunId,
runId: runIdToUse,
testInfo
};
try {
executeHook("onEvaluation" /* ON_EVALUATION */, traceObject);
} catch (e) {
throw new MastraError(
{
id: "EVAL_HOOK_EXECUTION_FAILED",
domain: "EVAL" /* EVAL */,
category: "USER" /* USER */,
details: {
agentName,
metricName,
globalRunId
}
},
e
);
}
return { ...metricResult, output };
}
export { Metric, evaluate };
//# sourceMappingURL=chunk-OIT3PCWA.js.map
//# sourceMappingURL=chunk-OIT3PCWA.js.map