mongodb-chatbot-server
Version:
A chatbot server for retrieval augmented generation (RAG).
42 lines • 1.76 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.makeVerifiedAnswerGenerateUserPrompt = void 0;
/**
Constructs a GenerateUserPromptFunc that searches for verified answers for the
user query. If no verified answer can be found for the given query, the
onNoVerifiedAnswerFound GenerateUserPromptFunc is called instead.
*/
const makeVerifiedAnswerGenerateUserPrompt = ({ findVerifiedAnswer, onVerifiedAnswerFound, onNoVerifiedAnswerFound, }) => {
return async (args) => {
const { userMessageText } = args;
const { answer: foundVerifiedAnswer, queryEmbedding } = await findVerifiedAnswer({
query: userMessageText,
});
if (foundVerifiedAnswer === undefined) {
return await onNoVerifiedAnswerFound(args);
}
const verifiedAnswer = onVerifiedAnswerFound?.(foundVerifiedAnswer) ?? foundVerifiedAnswer;
return {
userMessage: {
embedding: queryEmbedding,
content: userMessageText,
role: "user",
},
references: verifiedAnswer.references,
staticResponse: {
metadata: {
verifiedAnswer: {
_id: verifiedAnswer._id,
created: verifiedAnswer.created,
updated: verifiedAnswer.updated,
},
},
references: verifiedAnswer.references,
content: verifiedAnswer.answer,
role: "assistant",
},
};
};
};
exports.makeVerifiedAnswerGenerateUserPrompt = makeVerifiedAnswerGenerateUserPrompt;
//# sourceMappingURL=makeVerifiedAnswerGenerateUserPrompt.js.map