UNPKG

hnswsqlite

Version:

Vector search with HNSWlib and SQLite in TypeScript.

34 lines (33 loc) 1.2 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.addDocument = addDocument; const inquirer_1 = __importDefault(require("inquirer")); async function addDocument(store, text, embedding) { let vector = []; // If embedding is not provided, ask if user wants to generate one if (!embedding || embedding.length === 0) { const { useDummy } = await inquirer_1.default.prompt([{ type: 'confirm', name: 'useDummy', message: 'No embedding provided. Use dummy embedding?', default: true }]); if (useDummy) { // Create a dummy embedding of the correct dimension const dim = store['dim']; vector = new Array(dim).fill(0.1); } else { throw new Error('Embedding is required'); } } else { // Parse the provided embedding vector = embedding.map(Number); } // Add the document to the store return store.addDocument(text, vector); }