llmverify
Version:
AI Output Verification Toolkit — Local-first LLM safety, hallucination detection, PII redaction, prompt injection defense, and runtime monitoring. Zero telemetry. OWASP LLM Top 10 aligned.
48 lines • 6.21 kB
JavaScript
;
/**
* Classification Engine
*
* Comprehensive LLM output classification including intent detection,
* JSON repair, instruction-following evaluation, hallucination risk,
* and reasoning compression analysis.
*
* WHAT THIS DOES:
* ✅ Detects output intent (summary, code, list, etc.)
* ✅ Detects and repairs malformed JSON
* ✅ Evaluates instruction-following compliance
* ✅ Calculates hallucination risk indicators
* ✅ Detects reasoning compression
* ✅ Generates classification tags
*
* WHAT THIS DOES NOT DO:
* ❌ Guarantee hallucination detection (heuristic-based)
* ❌ Verify factual accuracy (no ground truth)
* ❌ Replace human review
*
* @module engines/classification
* @author Haiec
* @license MIT
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.classify = exports.ClassificationEngine = exports.getReasoningLabel = exports.calculateCompressionScore = exports.calculateCompressionMetrics = exports.getHallucinationLabel = exports.calculateHallucinationRisk = exports.calculateHallucinationSignals = exports.evaluateInstructionRules = exports.detectAndRepairJson = exports.getPrimaryIntent = exports.detectIntent = void 0;
// Sub-modules
var intent_1 = require("./intent");
Object.defineProperty(exports, "detectIntent", { enumerable: true, get: function () { return intent_1.detectIntent; } });
Object.defineProperty(exports, "getPrimaryIntent", { enumerable: true, get: function () { return intent_1.getPrimaryIntent; } });
var json_repair_1 = require("./json-repair");
Object.defineProperty(exports, "detectAndRepairJson", { enumerable: true, get: function () { return json_repair_1.detectAndRepairJson; } });
var instruction_eval_1 = require("./instruction-eval");
Object.defineProperty(exports, "evaluateInstructionRules", { enumerable: true, get: function () { return instruction_eval_1.evaluateInstructionRules; } });
var hallucination_1 = require("./hallucination");
Object.defineProperty(exports, "calculateHallucinationSignals", { enumerable: true, get: function () { return hallucination_1.calculateHallucinationSignals; } });
Object.defineProperty(exports, "calculateHallucinationRisk", { enumerable: true, get: function () { return hallucination_1.calculateHallucinationRisk; } });
Object.defineProperty(exports, "getHallucinationLabel", { enumerable: true, get: function () { return hallucination_1.getHallucinationLabel; } });
var compression_1 = require("./compression");
Object.defineProperty(exports, "calculateCompressionMetrics", { enumerable: true, get: function () { return compression_1.calculateCompressionMetrics; } });
Object.defineProperty(exports, "calculateCompressionScore", { enumerable: true, get: function () { return compression_1.calculateCompressionScore; } });
Object.defineProperty(exports, "getReasoningLabel", { enumerable: true, get: function () { return compression_1.getReasoningLabel; } });
// Main engine
var engine_1 = require("./engine");
Object.defineProperty(exports, "ClassificationEngine", { enumerable: true, get: function () { return engine_1.ClassificationEngine; } });
Object.defineProperty(exports, "classify", { enumerable: true, get: function () { return engine_1.classify; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZW5naW5lcy9jbGFzc2lmaWNhdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUJHOzs7QUFvQkgsY0FBYztBQUNkLG1DQUEwRDtBQUFqRCxzR0FBQSxZQUFZLE9BQUE7QUFBRSwwR0FBQSxnQkFBZ0IsT0FBQTtBQUN2Qyw2Q0FBb0Q7QUFBM0Msa0hBQUEsbUJBQW1CLE9BQUE7QUFDNUIsdURBQThEO0FBQXJELDRIQUFBLHdCQUF3QixPQUFBO0FBQ2pDLGlEQUl5QjtBQUh2Qiw4SEFBQSw2QkFBNkIsT0FBQTtBQUM3QiwySEFBQSwwQkFBMEIsT0FBQTtBQUMxQixzSEFBQSxxQkFBcUIsT0FBQTtBQUV2Qiw2Q0FJdUI7QUFIckIsMEhBQUEsMkJBQTJCLE9BQUE7QUFDM0Isd0hBQUEseUJBQXlCLE9BQUE7QUFDekIsZ0hBQUEsaUJBQWlCLE9BQUE7QUFHbkIsY0FBYztBQUNkLG1DQUEwRDtBQUFqRCw4R0FBQSxvQkFBb0IsT0FBQTtBQUFFLGtHQUFBLFFBQVEsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ2xhc3NpZmljYXRpb24gRW5naW5lXG4gKiBcbiAqIENvbXByZWhlbnNpdmUgTExNIG91dHB1dCBjbGFzc2lmaWNhdGlvbiBpbmNsdWRpbmcgaW50ZW50IGRldGVjdGlvbixcbiAqIEpTT04gcmVwYWlyLCBpbnN0cnVjdGlvbi1mb2xsb3dpbmcgZXZhbHVhdGlvbiwgaGFsbHVjaW5hdGlvbiByaXNrLFxuICogYW5kIHJlYXNvbmluZyBjb21wcmVzc2lvbiBhbmFseXNpcy5cbiAqIFxuICogV0hBVCBUSElTIERPRVM6XG4gKiDinIUgRGV0ZWN0cyBvdXRwdXQgaW50ZW50IChzdW1tYXJ5LCBjb2RlLCBsaXN0LCBldGMuKVxuICog4pyFIERldGVjdHMgYW5kIHJlcGFpcnMgbWFsZm9ybWVkIEpTT05cbiAqIOKchSBFdmFsdWF0ZXMgaW5zdHJ1Y3Rpb24tZm9sbG93aW5nIGNvbXBsaWFuY2VcbiAqIOKchSBDYWxjdWxhdGVzIGhhbGx1Y2luYXRpb24gcmlzayBpbmRpY2F0b3JzXG4gKiDinIUgRGV0ZWN0cyByZWFzb25pbmcgY29tcHJlc3Npb25cbiAqIOKchSBHZW5lcmF0ZXMgY2xhc3NpZmljYXRpb24gdGFnc1xuICogXG4gKiBXSEFUIFRISVMgRE9FUyBOT1QgRE86XG4gKiDinYwgR3VhcmFudGVlIGhhbGx1Y2luYXRpb24gZGV0ZWN0aW9uIChoZXVyaXN0aWMtYmFzZWQpXG4gKiDinYwgVmVyaWZ5IGZhY3R1YWwgYWNjdXJhY3kgKG5vIGdyb3VuZCB0cnV0aClcbiAqIOKdjCBSZXBsYWNlIGh1bWFuIHJldmlld1xuICogXG4gKiBAbW9kdWxlIGVuZ2luZXMvY2xhc3NpZmljYXRpb25cbiAqIEBhdXRob3IgSGFpZWNcbiAqIEBsaWNlbnNlIE1JVFxuICovXG5cbi8vIFR5cGVzXG5leHBvcnQgdHlwZSB7XG4gIEludGVudFRhZyxcbiAgSW50ZW50Q2FuZGlkYXRlLFxuICBJbnN0cnVjdGlvblJ1bGVUeXBlLFxuICBGb3JtYXRFeHBlY3RhdGlvbixcbiAgSW5zdHJ1Y3Rpb25SdWxlLFxuICBSdWxlUmVzdWx0LFxuICBIYWxsdWNpbmF0aW9uU2lnbmFscyxcbiAgSGFsbHVjaW5hdGlvbkxhYmVsLFxuICBDb21wcmVzc2lvbk1ldHJpY3MsXG4gIFJlYXNvbmluZ0xhYmVsLFxuICBKc29uUmVwYWlyU3RlcCxcbiAgQmFzZU1ldHJpY3MsXG4gIENsYXNzaWZpY2F0aW9uUG9saWN5LFxuICBDbGFzc2lmaWNhdGlvblJlc3VsdFxufSBmcm9tICcuL3R5cGVzJztcblxuLy8gU3ViLW1vZHVsZXNcbmV4cG9ydCB7IGRldGVjdEludGVudCwgZ2V0UHJpbWFyeUludGVudCB9IGZyb20gJy4vaW50ZW50JztcbmV4cG9ydCB7IGRldGVjdEFuZFJlcGFpckpzb24gfSBmcm9tICcuL2pzb24tcmVwYWlyJztcbmV4cG9ydCB7IGV2YWx1YXRlSW5zdHJ1Y3Rpb25SdWxlcyB9IGZyb20gJy4vaW5zdHJ1Y3Rpb24tZXZhbCc7XG5leHBvcnQgeyBcbiAgY2FsY3VsYXRlSGFsbHVjaW5hdGlvblNpZ25hbHMsIFxuICBjYWxjdWxhdGVIYWxsdWNpbmF0aW9uUmlzaywgXG4gIGdldEhhbGx1Y2luYXRpb25MYWJlbCBcbn0gZnJvbSAnLi9oYWxsdWNpbmF0aW9uJztcbmV4cG9ydCB7IFxuICBjYWxjdWxhdGVDb21wcmVzc2lvbk1ldHJpY3MsIFxuICBjYWxjdWxhdGVDb21wcmVzc2lvblNjb3JlLCBcbiAgZ2V0UmVhc29uaW5nTGFiZWwgXG59IGZyb20gJy4vY29tcHJlc3Npb24nO1xuXG4vLyBNYWluIGVuZ2luZVxuZXhwb3J0IHsgQ2xhc3NpZmljYXRpb25FbmdpbmUsIGNsYXNzaWZ5IH0gZnJvbSAnLi9lbmdpbmUnO1xuIl19