UNPKG

@prism-lang/confidence

Version:

Confidence extraction library for Prism - standardized patterns for extracting confidence values from LLMs and other sources

79 lines 4.61 kB
"use strict"; /** * @prism-lang/confidence - Confidence extraction library for Prism * * Provides standardized patterns for extracting confidence values from LLMs and other sources */ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.calibrators = exports.confidence = exports.APIConfidenceExtractor = exports.SensorConfidenceExtractor = exports.TemporalConfidence = exports.DifferentialConfidenceManager = exports.ConfidenceContractManager = exports.ConfidenceBudgetManager = exports.ConfidenceEnsemble = exports.InteractiveCalibrator = exports.SecurityCalibrator = exports.DomainCalibrator = exports.ConfidenceExtractor = void 0; exports.smartExtract = smartExtract; __exportStar(require("./types"), exports); __exportStar(require("./extractor"), exports); __exportStar(require("./calibration"), exports); __exportStar(require("./ensemble"), exports); __exportStar(require("./patterns"), exports); __exportStar(require("./sources"), exports); // Re-export main classes for convenience var extractor_1 = require("./extractor"); Object.defineProperty(exports, "ConfidenceExtractor", { enumerable: true, get: function () { return extractor_1.ConfidenceExtractor; } }); var calibration_1 = require("./calibration"); Object.defineProperty(exports, "DomainCalibrator", { enumerable: true, get: function () { return calibration_1.DomainCalibrator; } }); Object.defineProperty(exports, "SecurityCalibrator", { enumerable: true, get: function () { return calibration_1.SecurityCalibrator; } }); Object.defineProperty(exports, "InteractiveCalibrator", { enumerable: true, get: function () { return calibration_1.InteractiveCalibrator; } }); var ensemble_1 = require("./ensemble"); Object.defineProperty(exports, "ConfidenceEnsemble", { enumerable: true, get: function () { return ensemble_1.ConfidenceEnsemble; } }); var patterns_1 = require("./patterns"); Object.defineProperty(exports, "ConfidenceBudgetManager", { enumerable: true, get: function () { return patterns_1.ConfidenceBudgetManager; } }); Object.defineProperty(exports, "ConfidenceContractManager", { enumerable: true, get: function () { return patterns_1.ConfidenceContractManager; } }); Object.defineProperty(exports, "DifferentialConfidenceManager", { enumerable: true, get: function () { return patterns_1.DifferentialConfidenceManager; } }); Object.defineProperty(exports, "TemporalConfidence", { enumerable: true, get: function () { return patterns_1.TemporalConfidence; } }); var sources_1 = require("./sources"); Object.defineProperty(exports, "SensorConfidenceExtractor", { enumerable: true, get: function () { return sources_1.SensorConfidenceExtractor; } }); Object.defineProperty(exports, "APIConfidenceExtractor", { enumerable: true, get: function () { return sources_1.APIConfidenceExtractor; } }); // Export a default instance for simple usage const extractor_2 = require("./extractor"); exports.confidence = new extractor_2.ConfidenceExtractor(); // Export pre-configured calibrators const calibration_2 = require("./calibration"); exports.calibrators = { security: new calibration_2.SecurityCalibrator() }; /** * Smart extract - tries to determine the best extraction method */ async function smartExtract(input) { const extractor = new extractor_2.ConfidenceExtractor(); if (typeof input === 'function') { // It's a sampler function, use consistency const result = await extractor.fromConsistency(input); return result.value; } else if (typeof input === 'string') { // It's a response, analyze it const result = await extractor.fromResponseAnalysis(input); return result.value; } else if (input && typeof input === 'object' && 'confidence' in input) { // It already has confidence return input.confidence; } else { // Default to 0.5 (maximum uncertainty) return 0.5; } } //# sourceMappingURL=index.js.map