mongodb-chatbot-server
Version:
A chatbot server for retrieval augmented generation (RAG).
21 lines • 966 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.makeFilterNPreviousMessages = void 0;
const assert_1 = require("assert");
/**
Creates a filter that only includes the previous n messages in the conversations.
The first message in the conversation **must** be the system prompt.
@param n - Number of previous messages to include.
*/
const makeFilterNPreviousMessages = (n) => {
return async (conversation) => {
(0, assert_1.strict)(conversation.messages[0]?.role === "system", "First message must be system prompt");
// Always include the system prompt.
const systemPrompt = conversation.messages[0];
// Get the n latest messages.
const nLatestMessages = conversation.messages.slice(1).slice(-n);
return [systemPrompt, ...nLatestMessages];
};
};
exports.makeFilterNPreviousMessages = makeFilterNPreviousMessages;
//# sourceMappingURL=makeFilterNPreviousMessages.js.map