NODEDC_1C/llm_normalizer/backend/dist/services/assistantDeepTurnGuardRunti...

52 lines
2.8 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.applyAssistantDeepTurnRetrievalGuards = applyAssistantDeepTurnRetrievalGuards;
exports.applyAssistantDeepTurnGroundingEligibility = applyAssistantDeepTurnGroundingEligibility;
const assistantClaimBoundEvidence_1 = require("./assistantClaimBoundEvidence");
const assistantRuntimeGuards_1 = require("./assistantRuntimeGuards");
function applyAssistantDeepTurnRetrievalGuards(input) {
const applyDomainPolarityGuardSafe = input.applyDomainPolarityGuardFn ?? assistantRuntimeGuards_1.applyDomainPolarityGuardToRetrievalResults;
const applyTargetedEvidenceSafe = input.applyTargetedEvidenceFn ?? assistantClaimBoundEvidence_1.applyTargetedEvidenceAcquisition;
const applyEvidenceAdmissibilityGateSafe = input.applyEvidenceAdmissibilityGateFn ?? assistantRuntimeGuards_1.applyEvidenceAdmissibilityGate;
const polarityGuardResult = applyDomainPolarityGuardSafe({
retrievalResults: input.retrievalResults,
guard: input.domainPolarityGuardInitial
});
const targetedEvidenceResult = applyTargetedEvidenceSafe({
retrievalResults: polarityGuardResult.retrievalResults,
claimAudit: input.claimAnchorAudit
});
const evidenceGateResult = applyEvidenceAdmissibilityGateSafe({
retrievalResults: targetedEvidenceResult.retrievalResults,
temporal: input.temporalGuard,
focusDomainHint: input.focusDomainForGuards,
polarity: polarityGuardResult.audit.polarity,
companyAnchors: input.companyAnchors,
userMessage: input.userMessage
});
return {
retrievalResults: evidenceGateResult.retrievalResults,
polarityGuardResult,
targetedEvidenceResult,
evidenceGateResult
};
}
function applyAssistantDeepTurnGroundingEligibility(input) {
const evaluateGroundedAnswerEligibilitySafe = input.evaluateGroundedAnswerEligibilityFn ?? assistantRuntimeGuards_1.evaluateGroundedAnswerEligibility;
const applyEligibilityToGroundingCheckSafe = input.applyEligibilityToGroundingCheckFn ??
((groundingCheck, eligibility) => (0, assistantRuntimeGuards_1.applyEligibilityToGroundingCheck)(groundingCheck, eligibility));
const groundedAnswerEligibilityGuard = evaluateGroundedAnswerEligibilitySafe({
temporal: input.temporalGuard,
polarity: input.polarityAudit,
evidence: input.evidenceAudit,
claimAnchors: input.claimAnchorAudit,
targetedEvidenceHitRate: input.targetedEvidenceHitRate,
businessScopeResolved: input.businessScopeResolved
});
const groundingCheck = applyEligibilityToGroundingCheckSafe(input.groundingCheckBase, groundedAnswerEligibilityGuard);
return {
groundedAnswerEligibilityGuard,
groundingCheck
};
}