UNPKG

mongodb-rag-core

Version:

Common elements used by MongoDB Chatbot Framework components.

21 lines 973 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.extractDeterministicSampleOfDocuments = exports.MUST_HAVE_AT_LEAST_ONE_EXAMPLE_DOCUMENT_ERROR = void 0; const assert_1 = require("assert"); exports.MUST_HAVE_AT_LEAST_ONE_EXAMPLE_DOCUMENT_ERROR = "Must have at least one example document"; /** Extract deterministic sample of documents for a given collection. */ async function extractDeterministicSampleOfDocuments({ collection, limit = 5, }) { const documents = await collection .aggregate([ { $addFields: { hash: { $toHashedIndexKey: "$_id" } } }, { $sort: { hash: 1 } }, { $limit: limit }, ]) .toArray(); (0, assert_1.strict)(documents.length > 0, exports.MUST_HAVE_AT_LEAST_ONE_EXAMPLE_DOCUMENT_ERROR); return documents; } exports.extractDeterministicSampleOfDocuments = extractDeterministicSampleOfDocuments; //# sourceMappingURL=extractDeterministicSampleOfDocuments.js.map