UNPKG

mongodb-rag-core

Version:

Common elements used by MongoDB Chatbot Framework components.

52 lines 2.25 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.wrapNoTrace = exports.getDatasetFromBraintrust = exports.uploadDatasetToBraintrust = exports.makeBraintrustLogger = void 0; const braintrust_1 = require("braintrust"); __exportStar(require("braintrust"), exports); const makeBraintrustLogger = (params) => (0, braintrust_1.initLogger)(params); exports.makeBraintrustLogger = makeBraintrustLogger; async function uploadDatasetToBraintrust({ apiKey, datasetName, projectName, description, dataset, metadata, }) { const btDataset = (0, braintrust_1.initDataset)({ apiKey, dataset: datasetName, description, project: projectName, metadata, }); dataset.forEach((d) => btDataset.insert(d)); const res = await btDataset.summarize(); return res; } exports.uploadDatasetToBraintrust = uploadDatasetToBraintrust; async function getDatasetFromBraintrust({ datasetName, projectName, datasetRowSchema, }) { const dataset = await (0, braintrust_1.initDataset)({ project: projectName, dataset: datasetName, }); const datasetRows = (await dataset.fetchedData()).map((d) => datasetRowSchema.parse(d)); return datasetRows; } exports.getDatasetFromBraintrust = getDatasetFromBraintrust; function wrapNoTrace(fn) { return async function (...args) { return (0, braintrust_1.withCurrent)(new braintrust_1.NoopSpan(), async () => { return fn(...args); }); }; } exports.wrapNoTrace = wrapNoTrace; //# sourceMappingURL=braintrust.js.map