closevector-web
Version:
CloseVector is fundamentally a vector database. We have made dedicated libraries available for both browsers and node.js, aiming for easy integration no matter your platform. One feature we've been working on is its potential for scalability. Instead of b
49 lines (48 loc) • 1.96 kB
JavaScript
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.loadHnswlibWasm = exports.isIndexedDBSupport = exports.isWasmSupport = void 0;
const closevector_hnswlib_wasm_1 = require("closevector-hnswlib-wasm");
__exportStar(require("./lib"), exports);
__exportStar(require("./closeVectorEmbedding"), exports);
__exportStar(require("./hnswlibWasm"), exports);
__exportStar(require("./loader"), exports);
__exportStar(require("./embeddings"), exports);
__exportStar(require("./manager"), exports);
function isWasmSupport() {
return typeof WebAssembly === 'object' && typeof WebAssembly.instantiate === 'function';
}
exports.isWasmSupport = isWasmSupport;
function isIndexedDBSupport() {
return typeof indexedDB === 'object';
}
exports.isIndexedDBSupport = isIndexedDBSupport;
async function loadHnswlibWasm(options = {
debug: false,
}) {
if (!isWasmSupport()) {
throw new Error('WebAssembly is not supported');
}
if (!isIndexedDBSupport()) {
throw new Error('IndexedDB is not supported');
}
const lib = await (0, closevector_hnswlib_wasm_1.loadHnswlib)();
if (options.debug) {
lib.EmscriptenFileSystemManager.setDebugLogs(true);
}
return lib;
}
exports.loadHnswlibWasm = loadHnswlibWasm;
;