NODEDC_1C/llm_normalizer/backend/dist/services/assistantDeepResponseAssemb...

41 lines
1.6 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildDeepAnswerArtifacts = buildDeepAnswerArtifacts;
exports.buildAssistantConversationItem = buildAssistantConversationItem;
const assistantAnswerPackageBuilder_1 = require("./assistantAnswerPackageBuilder");
function stripTechnicalTail(text) {
return String(text ?? "")
.replace(/(?:^|\n)\s*#{0,6}\s*(?:debug_payload_json|technical_breakdown_json)\b[\s\S]*$/gi, "")
.replace(/\b(?:debug_payload_json|technical_breakdown_json)\b[\s\S]*$/gi, "")
.trim();
}
function buildDeepAnswerArtifacts(input) {
const safeAssistantReply = stripTechnicalTail(input.safeAssistantReplyBase);
const answerStructureV11 = input.featureContractsV11
? input.featureAnswerPolicyV11 && input.compositionAnswerStructureV11
? input.compositionAnswerStructureV11
: (0, assistantAnswerPackageBuilder_1.buildAssistantAnswerStructureV11)({
assistantReply: safeAssistantReply,
coverageReport: input.coverageReport,
groundingCheck: input.groundingCheck,
retrievalResults: input.retrievalResults
})
: null;
return {
safeAssistantReply,
answerStructureV11
};
}
function buildAssistantConversationItem(input) {
return {
message_id: input.messageId,
session_id: input.sessionId,
role: "assistant",
text: input.text,
reply_type: input.replyType,
created_at: new Date().toISOString(),
trace_id: input.traceId,
debug: input.debug
};
}