UNPKG

judgeval

Version:

Judgment SDK for TypeScript/JavaScript

72 lines 2.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ScoringResultBuilder = exports.ScoringResult = void 0; class ScoringResult { constructor(options) { this.dataObject = options.dataObject; this.scorersData = options.scorersData; this.error = options.error; } /** * Builder pattern for creating a ScoringResult */ static builder() { return new ScoringResultBuilder(); } /** * Convert the scoring result to a plain object */ toJSON() { var _a; const dataObjectSnake = this.dataObject ? this.dataObject.toJSON() : null; return { success: this.scorersData ? this.scorersData.every(scorer => scorer.success) : false, scorers_data: this.scorersData ? this.scorersData.map(scorer => ({ name: scorer.name, threshold: scorer.threshold, success: scorer.success, score: scorer.score, reason: scorer.reason, strict_mode: scorer.strict_mode, evaluation_model: scorer.evaluation_model, error: scorer.error, evaluation_cost: scorer.evaluation_cost, verbose_logs: scorer.verbose_logs, additional_metadata: scorer.additional_metadata })) : null, data_object: dataObjectSnake, trace_id: ((_a = this.dataObject) === null || _a === void 0 ? void 0 : _a.traceId) || null, error: this.error || null }; } } exports.ScoringResult = ScoringResult; /** * Builder for creating ScoringResult instances */ class ScoringResultBuilder { dataObject(dataObject) { this._dataObject = dataObject; return this; } scorersData(scorersData) { this._scorersData = scorersData; return this; } error(error) { this._error = error; return this; } build() { if (!this._dataObject) { throw new Error('Data object is required for a ScoringResult'); } return new ScoringResult({ dataObject: this._dataObject, scorersData: this._scorersData, error: this._error, }); } } exports.ScoringResultBuilder = ScoringResultBuilder; //# sourceMappingURL=result.js.map