+135
-168
@@ -25,23 +25,2 @@ "use strict"; | ||
| }; | ||
| var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
| function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
| return new (P || (P = Promise))(function (resolve, reject) { | ||
| function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
| function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
| function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
| step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
| }); | ||
| }; | ||
| var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); } | ||
| var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) { | ||
| if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); | ||
| var g = generator.apply(thisArg, _arguments || []), i, q = []; | ||
| return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; | ||
| function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } | ||
| function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } | ||
| function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } | ||
| function fulfill(value) { resume("next", value); } | ||
| function reject(value) { resume("throw", value); } | ||
| function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } | ||
| }; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
@@ -122,19 +101,17 @@ return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| } | ||
| static init({ model = EmbeddingModel.BGESmallENV15, executionProviders = [ExecutionProvider.CPU], maxLength = 512, cacheDir = "local_cache", showDownloadProgress = true, } = {}) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| const modelDir = yield FlagEmbedding.retrieveModel(model, cacheDir, showDownloadProgress); | ||
| const tokenizer = this.loadTokenizer(modelDir, maxLength); | ||
| const modelPath = path_1.default.join(modelDir.toString(), model === EmbeddingModel.MLE5Large || | ||
| model === EmbeddingModel.AllMiniLML6V2 | ||
| ? "model.onnx" | ||
| : "model_optimized.onnx"); | ||
| if (!fs_1.default.existsSync(modelPath)) { | ||
| throw new Error(`Model file not found at ${modelPath}`); | ||
| } | ||
| const session = yield ort.InferenceSession.create(modelPath, { | ||
| executionProviders, | ||
| graphOptimizationLevel: "all", | ||
| }); | ||
| return new FlagEmbedding(tokenizer, session, model); | ||
| static async init({ model = EmbeddingModel.BGESmallENV15, executionProviders = [ExecutionProvider.CPU], maxLength = 512, cacheDir = "local_cache", showDownloadProgress = true, } = {}) { | ||
| const modelDir = await FlagEmbedding.retrieveModel(model, cacheDir, showDownloadProgress); | ||
| const tokenizer = this.loadTokenizer(modelDir, maxLength); | ||
| const modelPath = path_1.default.join(modelDir.toString(), model === EmbeddingModel.MLE5Large || | ||
| model === EmbeddingModel.AllMiniLML6V2 | ||
| ? "model.onnx" | ||
| : "model_optimized.onnx"); | ||
| if (!fs_1.default.existsSync(modelPath)) { | ||
| throw new Error(`Model file not found at ${modelPath}`); | ||
| } | ||
| const session = await ort.InferenceSession.create(modelPath, { | ||
| executionProviders, | ||
| graphOptimizationLevel: "all", | ||
| }); | ||
| return new FlagEmbedding(tokenizer, session, model); | ||
| } | ||
@@ -185,139 +162,131 @@ static loadTokenizer(modelDir, maxLength) { | ||
| } | ||
| static downloadFileFromGCS(outputFilePath, model, showDownloadProgress = true) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| if (fs_1.default.existsSync(outputFilePath)) { | ||
| return outputFilePath; | ||
| } | ||
| // The AllMiniLML6V2 model URL doesn't follow the same naming convention as the other models | ||
| // So, we transform "fast-all-MiniLM-L6-v2" -> "sentence-transformers-all-MiniLM-L6-v2" in the download URL | ||
| // The model directory name in the GCS storage remains "fast-all-MiniLM-L6-v2" | ||
| if (model === EmbeddingModel.AllMiniLML6V2) { | ||
| model = "sentence-transformers" + model.substring(model.indexOf("-")); | ||
| } | ||
| const url = `https://storage.googleapis.com/qdrant-fastembed/${model}.tar.gz`; | ||
| const fileStream = fs_1.default.createWriteStream(outputFilePath); | ||
| return new Promise((resolve, reject) => { | ||
| https_1.default | ||
| .get(url, { headers: { "User-Agent": "Mozilla/5.0" } }, (response) => { | ||
| const totalSizeInBytes = parseInt(response.headers["content-length"] || "0", 10); | ||
| if (totalSizeInBytes === 0) { | ||
| console.warn(`Warning: Content-length header is missing or zero in the response from ${url}.`); | ||
| } | ||
| if (showDownloadProgress) { | ||
| const progressBar = new progress_1.default(`Downloading ${model} [:bar] :percent :etas`, { | ||
| complete: "=", | ||
| width: 20, | ||
| total: totalSizeInBytes, | ||
| }); | ||
| response.on("data", (chunk) => { | ||
| progressBar.tick(chunk.length, { speed: "N/A" }); | ||
| }); | ||
| } | ||
| response.on("error", (error) => { | ||
| reject(error); | ||
| static async downloadFileFromGCS(outputFilePath, model, showDownloadProgress = true) { | ||
| if (fs_1.default.existsSync(outputFilePath)) { | ||
| return outputFilePath; | ||
| } | ||
| // The AllMiniLML6V2 model URL doesn't follow the same naming convention as the other models | ||
| // So, we transform "fast-all-MiniLM-L6-v2" -> "sentence-transformers-all-MiniLM-L6-v2" in the download URL | ||
| // The model directory name in the GCS storage remains "fast-all-MiniLM-L6-v2" | ||
| if (model === EmbeddingModel.AllMiniLML6V2) { | ||
| model = "sentence-transformers" + model.substring(model.indexOf("-")); | ||
| } | ||
| const url = `https://storage.googleapis.com/qdrant-fastembed/${model}.tar.gz`; | ||
| const fileStream = fs_1.default.createWriteStream(outputFilePath); | ||
| return new Promise((resolve, reject) => { | ||
| https_1.default | ||
| .get(url, { headers: { "User-Agent": "Mozilla/5.0" } }, (response) => { | ||
| const totalSizeInBytes = parseInt(response.headers["content-length"] || "0", 10); | ||
| if (totalSizeInBytes === 0) { | ||
| console.warn(`Warning: Content-length header is missing or zero in the response from ${url}.`); | ||
| } | ||
| if (showDownloadProgress) { | ||
| const progressBar = new progress_1.default(`Downloading ${model} [:bar] :percent :etas`, { | ||
| complete: "=", | ||
| width: 20, | ||
| total: totalSizeInBytes, | ||
| }); | ||
| response.pipe(fileStream); | ||
| fileStream.on("finish", () => { | ||
| fileStream.close(); | ||
| resolve(outputFilePath); | ||
| response.on("data", (chunk) => { | ||
| progressBar.tick(chunk.length, { speed: "N/A" }); | ||
| }); | ||
| fileStream.on("error", (error) => { | ||
| reject(error); | ||
| }); | ||
| }) | ||
| .on("error", (error) => { | ||
| fs_1.default.unlink(outputFilePath, () => { | ||
| reject(error); | ||
| }); | ||
| } | ||
| response.on("error", (error) => { | ||
| reject(error); | ||
| }); | ||
| response.pipe(fileStream); | ||
| fileStream.on("finish", () => { | ||
| fileStream.close(); | ||
| resolve(outputFilePath); | ||
| }); | ||
| fileStream.on("error", (error) => { | ||
| reject(error); | ||
| }); | ||
| }) | ||
| .on("error", (error) => { | ||
| fs_1.default.unlink(outputFilePath, () => { | ||
| reject(error); | ||
| }); | ||
| }); | ||
| }); | ||
| } | ||
| static decompressToCache(targzPath, cacheDir) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| // Implementation for decompressing a .tar.gz file to a cache directory | ||
| if (path_1.default.extname(targzPath.toString()) === ".gz") { | ||
| yield tar_1.default.x({ | ||
| file: targzPath, | ||
| // @ts-ignore | ||
| cwd: cacheDir, | ||
| }); | ||
| } | ||
| else { | ||
| throw new Error(`Unsupported file extension: ${targzPath}`); | ||
| } | ||
| }); | ||
| static async decompressToCache(targzPath, cacheDir) { | ||
| // Implementation for decompressing a .tar.gz file to a cache directory | ||
| if (path_1.default.extname(targzPath.toString()) === ".gz") { | ||
| await tar_1.default.x({ | ||
| file: targzPath, | ||
| // @ts-ignore | ||
| cwd: cacheDir, | ||
| }); | ||
| } | ||
| else { | ||
| throw new Error(`Unsupported file extension: ${targzPath}`); | ||
| } | ||
| } | ||
| static retrieveModel(model, cacheDir, showDownloadProgress = true) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| if (!fs_1.default.existsSync(cacheDir)) { | ||
| fs_1.default.mkdirSync(cacheDir, { | ||
| mode: 0o777, | ||
| }); | ||
| } | ||
| const modelDir = path_1.default.join(cacheDir.toString(), model); | ||
| if (fs_1.default.existsSync(modelDir)) { | ||
| return modelDir; | ||
| } | ||
| const modelTarGz = path_1.default.join(cacheDir.toString(), `${model}.tar.gz`); | ||
| yield this.downloadFileFromGCS(modelTarGz, model, showDownloadProgress); | ||
| yield this.decompressToCache(modelTarGz, cacheDir); | ||
| fs_1.default.unlinkSync(modelTarGz); | ||
| static async retrieveModel(model, cacheDir, showDownloadProgress = true) { | ||
| if (!fs_1.default.existsSync(cacheDir)) { | ||
| fs_1.default.mkdirSync(cacheDir, { | ||
| mode: 0o777, | ||
| }); | ||
| } | ||
| const modelDir = path_1.default.join(cacheDir.toString(), model); | ||
| if (fs_1.default.existsSync(modelDir)) { | ||
| return modelDir; | ||
| }); | ||
| } | ||
| const modelTarGz = path_1.default.join(cacheDir.toString(), `${model}.tar.gz`); | ||
| await this.downloadFileFromGCS(modelTarGz, model, showDownloadProgress); | ||
| await this.decompressToCache(modelTarGz, cacheDir); | ||
| fs_1.default.unlinkSync(modelTarGz); | ||
| return modelDir; | ||
| } | ||
| embed(textStrings, batchSize = 256) { | ||
| return __asyncGenerator(this, arguments, function* embed_1() { | ||
| for (let i = 0; i < textStrings.length; i += batchSize) { | ||
| const batchTexts = textStrings.slice(i, i + batchSize); | ||
| const encodedTexts = yield __await(Promise.all(batchTexts.map((textString) => this.tokenizer.encode(textString)))); | ||
| const idsArray = []; | ||
| const maskArray = []; | ||
| const typeIdsArray = []; | ||
| encodedTexts.forEach((text) => { | ||
| const ids = text.getIds().map(BigInt); | ||
| const mask = text.getAttentionMask().map(BigInt); | ||
| const typeIds = text.getTypeIds().map(BigInt); | ||
| idsArray.push(ids); | ||
| maskArray.push(mask); | ||
| typeIdsArray.push(typeIds); | ||
| }); | ||
| const maxLength = idsArray[0].length; | ||
| const batchInputIds = new ort.Tensor("int64", idsArray.flat(), [batchTexts.length, maxLength]); | ||
| const batchAttentionMask = new ort.Tensor("int64", maskArray.flat(), [batchTexts.length, maxLength]); | ||
| const batchTokenTypeId = new ort.Tensor("int64", typeIdsArray.flat(), [batchTexts.length, maxLength]); | ||
| const inputs = { | ||
| input_ids: batchInputIds, | ||
| attention_mask: batchAttentionMask, | ||
| token_type_ids: batchTokenTypeId, | ||
| }; | ||
| // Exclude token_type_ids for MLE5Large | ||
| if (this.model === EmbeddingModel.MLE5Large) { | ||
| delete inputs.token_type_ids; | ||
| } | ||
| const output = yield __await(this.session.run(inputs)); | ||
| // Remove attention pooling | ||
| // Ref: https://github.com/qdrant/fastembed/commit/a335c8898f11042fdb311fce2dab3acf50c23011 | ||
| // const lastHiddenState: number[][][] = create3DArray( | ||
| // output.last_hidden_state.data as unknown[] as number[], | ||
| // output.last_hidden_state.dims as number[] | ||
| // ); | ||
| // const embeddings = lastHiddenState.map((layer, layerIdx) => { | ||
| // const weightedSum = layer.reduce((acc, tokenEmbedding, idx) => { | ||
| // const attentionWeight = maskArray[layerIdx][idx]; | ||
| // return acc.map( | ||
| // (val, i) => val + tokenEmbedding[i] * Number(attentionWeight) | ||
| // ); | ||
| // }, new Array(layer[0].length).fill(0)); | ||
| // const inputMaskSum = maskArray[layerIdx].reduce( | ||
| // (acc, attentionWeight) => acc + Number(attentionWeight), | ||
| // 0 | ||
| // ); | ||
| // return weightedSum.map((val) => val / Math.max(inputMaskSum, 1e-9)); | ||
| // }); | ||
| // const embeddings = lastHiddenState.map((sentence) => sentence[0]); | ||
| const embeddings = getEmbeddings(output.last_hidden_state.data, output.last_hidden_state.dims); | ||
| yield yield __await(embeddings.map(normalize)); | ||
| async *embed(textStrings, batchSize = 256) { | ||
| for (let i = 0; i < textStrings.length; i += batchSize) { | ||
| const batchTexts = textStrings.slice(i, i + batchSize); | ||
| const encodedTexts = await Promise.all(batchTexts.map((textString) => this.tokenizer.encode(textString))); | ||
| const idsArray = []; | ||
| const maskArray = []; | ||
| const typeIdsArray = []; | ||
| encodedTexts.forEach((text) => { | ||
| const ids = text.getIds().map(BigInt); | ||
| const mask = text.getAttentionMask().map(BigInt); | ||
| const typeIds = text.getTypeIds().map(BigInt); | ||
| idsArray.push(ids); | ||
| maskArray.push(mask); | ||
| typeIdsArray.push(typeIds); | ||
| }); | ||
| const maxLength = idsArray[0].length; | ||
| const batchInputIds = new ort.Tensor("int64", idsArray.flat(), [batchTexts.length, maxLength]); | ||
| const batchAttentionMask = new ort.Tensor("int64", maskArray.flat(), [batchTexts.length, maxLength]); | ||
| const batchTokenTypeId = new ort.Tensor("int64", typeIdsArray.flat(), [batchTexts.length, maxLength]); | ||
| const inputs = { | ||
| input_ids: batchInputIds, | ||
| attention_mask: batchAttentionMask, | ||
| token_type_ids: batchTokenTypeId, | ||
| }; | ||
| // Exclude token_type_ids for MLE5Large | ||
| if (this.model === EmbeddingModel.MLE5Large) { | ||
| delete inputs.token_type_ids; | ||
| } | ||
| }); | ||
| const output = await this.session.run(inputs); | ||
| // Remove attention pooling | ||
| // Ref: https://github.com/qdrant/fastembed/commit/a335c8898f11042fdb311fce2dab3acf50c23011 | ||
| // const lastHiddenState: number[][][] = create3DArray( | ||
| // output.last_hidden_state.data as unknown[] as number[], | ||
| // output.last_hidden_state.dims as number[] | ||
| // ); | ||
| // const embeddings = lastHiddenState.map((layer, layerIdx) => { | ||
| // const weightedSum = layer.reduce((acc, tokenEmbedding, idx) => { | ||
| // const attentionWeight = maskArray[layerIdx][idx]; | ||
| // return acc.map( | ||
| // (val, i) => val + tokenEmbedding[i] * Number(attentionWeight) | ||
| // ); | ||
| // }, new Array(layer[0].length).fill(0)); | ||
| // const inputMaskSum = maskArray[layerIdx].reduce( | ||
| // (acc, attentionWeight) => acc + Number(attentionWeight), | ||
| // 0 | ||
| // ); | ||
| // return weightedSum.map((val) => val / Math.max(inputMaskSum, 1e-9)); | ||
| // }); | ||
| // const embeddings = lastHiddenState.map((sentence) => sentence[0]); | ||
| const embeddings = getEmbeddings(output.last_hidden_state.data, output.last_hidden_state.dims); | ||
| yield embeddings.map(normalize); | ||
| } | ||
| } | ||
@@ -328,6 +297,4 @@ passageEmbed(texts, batchSize = 256) { | ||
| } | ||
| queryEmbed(query) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| return (yield this.embed([`query: ${query}`]).next()).value[0]; | ||
| }); | ||
| async queryEmbed(query) { | ||
| return (await this.embed([`query: ${query}`]).next()).value[0]; | ||
| } | ||
@@ -334,0 +301,0 @@ listSupportedModels() { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"fastembed.js","sourceRoot":"","sources":["../../src/fastembed.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"fastembed.js","sourceRoot":"","sources":["../../src/fastembed.ts"],"names":[],"mappings":"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"} |
@@ -1,3 +0,2 @@ | ||
| import { EmbeddingModel, ExecutionProvider, FlagEmbedding } from "./fastembed"; | ||
| export { EmbeddingModel, ExecutionProvider, FlagEmbedding }; | ||
| export { EmbeddingModel, ExecutionProvider, FlagEmbedding, } from "./fastembed.js"; | ||
| //# sourceMappingURL=index.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,aAAa,GACd,MAAM,gBAAgB,CAAC"} |
+4
-4
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.FlagEmbedding = exports.ExecutionProvider = exports.EmbeddingModel = void 0; | ||
| const fastembed_1 = require("./fastembed"); | ||
| Object.defineProperty(exports, "EmbeddingModel", { enumerable: true, get: function () { return fastembed_1.EmbeddingModel; } }); | ||
| Object.defineProperty(exports, "ExecutionProvider", { enumerable: true, get: function () { return fastembed_1.ExecutionProvider; } }); | ||
| Object.defineProperty(exports, "FlagEmbedding", { enumerable: true, get: function () { return fastembed_1.FlagEmbedding; } }); | ||
| var fastembed_js_1 = require("./fastembed.js"); | ||
| Object.defineProperty(exports, "EmbeddingModel", { enumerable: true, get: function () { return fastembed_js_1.EmbeddingModel; } }); | ||
| Object.defineProperty(exports, "ExecutionProvider", { enumerable: true, get: function () { return fastembed_js_1.ExecutionProvider; } }); | ||
| Object.defineProperty(exports, "FlagEmbedding", { enumerable: true, get: function () { return fastembed_js_1.FlagEmbedding; } }); | ||
| //# sourceMappingURL=index.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,2CAA+E;AACtE,+FADA,0BAAc,OACA;AAAE,kGADA,6BAAiB,OACA;AAAE,8FADA,yBAAa,OACA"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAIwB;AAHtB,8GAAA,cAAc,OAAA;AACd,iHAAA,iBAAiB,OAAA;AACjB,6GAAA,aAAa,OAAA"} |
+135
-168
@@ -1,22 +0,1 @@ | ||
| var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
| function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
| return new (P || (P = Promise))(function (resolve, reject) { | ||
| function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
| function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
| function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
| step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
| }); | ||
| }; | ||
| var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); } | ||
| var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) { | ||
| if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); | ||
| var g = generator.apply(thisArg, _arguments || []), i, q = []; | ||
| return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; | ||
| function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } | ||
| function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } | ||
| function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } | ||
| function fulfill(value) { resume("next", value); } | ||
| function reject(value) { resume("throw", value); } | ||
| function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } | ||
| }; | ||
| import fs from "fs"; | ||
@@ -92,19 +71,17 @@ import https from "https"; | ||
| } | ||
| static init({ model = EmbeddingModel.BGESmallENV15, executionProviders = [ExecutionProvider.CPU], maxLength = 512, cacheDir = "local_cache", showDownloadProgress = true, } = {}) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| const modelDir = yield FlagEmbedding.retrieveModel(model, cacheDir, showDownloadProgress); | ||
| const tokenizer = this.loadTokenizer(modelDir, maxLength); | ||
| const modelPath = path.join(modelDir.toString(), model === EmbeddingModel.MLE5Large || | ||
| model === EmbeddingModel.AllMiniLML6V2 | ||
| ? "model.onnx" | ||
| : "model_optimized.onnx"); | ||
| if (!fs.existsSync(modelPath)) { | ||
| throw new Error(`Model file not found at ${modelPath}`); | ||
| } | ||
| const session = yield ort.InferenceSession.create(modelPath, { | ||
| executionProviders, | ||
| graphOptimizationLevel: "all", | ||
| }); | ||
| return new FlagEmbedding(tokenizer, session, model); | ||
| static async init({ model = EmbeddingModel.BGESmallENV15, executionProviders = [ExecutionProvider.CPU], maxLength = 512, cacheDir = "local_cache", showDownloadProgress = true, } = {}) { | ||
| const modelDir = await FlagEmbedding.retrieveModel(model, cacheDir, showDownloadProgress); | ||
| const tokenizer = this.loadTokenizer(modelDir, maxLength); | ||
| const modelPath = path.join(modelDir.toString(), model === EmbeddingModel.MLE5Large || | ||
| model === EmbeddingModel.AllMiniLML6V2 | ||
| ? "model.onnx" | ||
| : "model_optimized.onnx"); | ||
| if (!fs.existsSync(modelPath)) { | ||
| throw new Error(`Model file not found at ${modelPath}`); | ||
| } | ||
| const session = await ort.InferenceSession.create(modelPath, { | ||
| executionProviders, | ||
| graphOptimizationLevel: "all", | ||
| }); | ||
| return new FlagEmbedding(tokenizer, session, model); | ||
| } | ||
@@ -155,139 +132,131 @@ static loadTokenizer(modelDir, maxLength) { | ||
| } | ||
| static downloadFileFromGCS(outputFilePath, model, showDownloadProgress = true) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| if (fs.existsSync(outputFilePath)) { | ||
| return outputFilePath; | ||
| } | ||
| // The AllMiniLML6V2 model URL doesn't follow the same naming convention as the other models | ||
| // So, we transform "fast-all-MiniLM-L6-v2" -> "sentence-transformers-all-MiniLM-L6-v2" in the download URL | ||
| // The model directory name in the GCS storage remains "fast-all-MiniLM-L6-v2" | ||
| if (model === EmbeddingModel.AllMiniLML6V2) { | ||
| model = "sentence-transformers" + model.substring(model.indexOf("-")); | ||
| } | ||
| const url = `https://storage.googleapis.com/qdrant-fastembed/${model}.tar.gz`; | ||
| const fileStream = fs.createWriteStream(outputFilePath); | ||
| return new Promise((resolve, reject) => { | ||
| https | ||
| .get(url, { headers: { "User-Agent": "Mozilla/5.0" } }, (response) => { | ||
| const totalSizeInBytes = parseInt(response.headers["content-length"] || "0", 10); | ||
| if (totalSizeInBytes === 0) { | ||
| console.warn(`Warning: Content-length header is missing or zero in the response from ${url}.`); | ||
| } | ||
| if (showDownloadProgress) { | ||
| const progressBar = new Progress(`Downloading ${model} [:bar] :percent :etas`, { | ||
| complete: "=", | ||
| width: 20, | ||
| total: totalSizeInBytes, | ||
| }); | ||
| response.on("data", (chunk) => { | ||
| progressBar.tick(chunk.length, { speed: "N/A" }); | ||
| }); | ||
| } | ||
| response.on("error", (error) => { | ||
| reject(error); | ||
| static async downloadFileFromGCS(outputFilePath, model, showDownloadProgress = true) { | ||
| if (fs.existsSync(outputFilePath)) { | ||
| return outputFilePath; | ||
| } | ||
| // The AllMiniLML6V2 model URL doesn't follow the same naming convention as the other models | ||
| // So, we transform "fast-all-MiniLM-L6-v2" -> "sentence-transformers-all-MiniLM-L6-v2" in the download URL | ||
| // The model directory name in the GCS storage remains "fast-all-MiniLM-L6-v2" | ||
| if (model === EmbeddingModel.AllMiniLML6V2) { | ||
| model = "sentence-transformers" + model.substring(model.indexOf("-")); | ||
| } | ||
| const url = `https://storage.googleapis.com/qdrant-fastembed/${model}.tar.gz`; | ||
| const fileStream = fs.createWriteStream(outputFilePath); | ||
| return new Promise((resolve, reject) => { | ||
| https | ||
| .get(url, { headers: { "User-Agent": "Mozilla/5.0" } }, (response) => { | ||
| const totalSizeInBytes = parseInt(response.headers["content-length"] || "0", 10); | ||
| if (totalSizeInBytes === 0) { | ||
| console.warn(`Warning: Content-length header is missing or zero in the response from ${url}.`); | ||
| } | ||
| if (showDownloadProgress) { | ||
| const progressBar = new Progress(`Downloading ${model} [:bar] :percent :etas`, { | ||
| complete: "=", | ||
| width: 20, | ||
| total: totalSizeInBytes, | ||
| }); | ||
| response.pipe(fileStream); | ||
| fileStream.on("finish", () => { | ||
| fileStream.close(); | ||
| resolve(outputFilePath); | ||
| response.on("data", (chunk) => { | ||
| progressBar.tick(chunk.length, { speed: "N/A" }); | ||
| }); | ||
| fileStream.on("error", (error) => { | ||
| reject(error); | ||
| }); | ||
| }) | ||
| .on("error", (error) => { | ||
| fs.unlink(outputFilePath, () => { | ||
| reject(error); | ||
| }); | ||
| } | ||
| response.on("error", (error) => { | ||
| reject(error); | ||
| }); | ||
| response.pipe(fileStream); | ||
| fileStream.on("finish", () => { | ||
| fileStream.close(); | ||
| resolve(outputFilePath); | ||
| }); | ||
| fileStream.on("error", (error) => { | ||
| reject(error); | ||
| }); | ||
| }) | ||
| .on("error", (error) => { | ||
| fs.unlink(outputFilePath, () => { | ||
| reject(error); | ||
| }); | ||
| }); | ||
| }); | ||
| } | ||
| static decompressToCache(targzPath, cacheDir) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| // Implementation for decompressing a .tar.gz file to a cache directory | ||
| if (path.extname(targzPath.toString()) === ".gz") { | ||
| yield tar.x({ | ||
| file: targzPath, | ||
| // @ts-ignore | ||
| cwd: cacheDir, | ||
| }); | ||
| } | ||
| else { | ||
| throw new Error(`Unsupported file extension: ${targzPath}`); | ||
| } | ||
| }); | ||
| static async decompressToCache(targzPath, cacheDir) { | ||
| // Implementation for decompressing a .tar.gz file to a cache directory | ||
| if (path.extname(targzPath.toString()) === ".gz") { | ||
| await tar.x({ | ||
| file: targzPath, | ||
| // @ts-ignore | ||
| cwd: cacheDir, | ||
| }); | ||
| } | ||
| else { | ||
| throw new Error(`Unsupported file extension: ${targzPath}`); | ||
| } | ||
| } | ||
| static retrieveModel(model, cacheDir, showDownloadProgress = true) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| if (!fs.existsSync(cacheDir)) { | ||
| fs.mkdirSync(cacheDir, { | ||
| mode: 0o777, | ||
| }); | ||
| } | ||
| const modelDir = path.join(cacheDir.toString(), model); | ||
| if (fs.existsSync(modelDir)) { | ||
| return modelDir; | ||
| } | ||
| const modelTarGz = path.join(cacheDir.toString(), `${model}.tar.gz`); | ||
| yield this.downloadFileFromGCS(modelTarGz, model, showDownloadProgress); | ||
| yield this.decompressToCache(modelTarGz, cacheDir); | ||
| fs.unlinkSync(modelTarGz); | ||
| static async retrieveModel(model, cacheDir, showDownloadProgress = true) { | ||
| if (!fs.existsSync(cacheDir)) { | ||
| fs.mkdirSync(cacheDir, { | ||
| mode: 0o777, | ||
| }); | ||
| } | ||
| const modelDir = path.join(cacheDir.toString(), model); | ||
| if (fs.existsSync(modelDir)) { | ||
| return modelDir; | ||
| }); | ||
| } | ||
| const modelTarGz = path.join(cacheDir.toString(), `${model}.tar.gz`); | ||
| await this.downloadFileFromGCS(modelTarGz, model, showDownloadProgress); | ||
| await this.decompressToCache(modelTarGz, cacheDir); | ||
| fs.unlinkSync(modelTarGz); | ||
| return modelDir; | ||
| } | ||
| embed(textStrings, batchSize = 256) { | ||
| return __asyncGenerator(this, arguments, function* embed_1() { | ||
| for (let i = 0; i < textStrings.length; i += batchSize) { | ||
| const batchTexts = textStrings.slice(i, i + batchSize); | ||
| const encodedTexts = yield __await(Promise.all(batchTexts.map((textString) => this.tokenizer.encode(textString)))); | ||
| const idsArray = []; | ||
| const maskArray = []; | ||
| const typeIdsArray = []; | ||
| encodedTexts.forEach((text) => { | ||
| const ids = text.getIds().map(BigInt); | ||
| const mask = text.getAttentionMask().map(BigInt); | ||
| const typeIds = text.getTypeIds().map(BigInt); | ||
| idsArray.push(ids); | ||
| maskArray.push(mask); | ||
| typeIdsArray.push(typeIds); | ||
| }); | ||
| const maxLength = idsArray[0].length; | ||
| const batchInputIds = new ort.Tensor("int64", idsArray.flat(), [batchTexts.length, maxLength]); | ||
| const batchAttentionMask = new ort.Tensor("int64", maskArray.flat(), [batchTexts.length, maxLength]); | ||
| const batchTokenTypeId = new ort.Tensor("int64", typeIdsArray.flat(), [batchTexts.length, maxLength]); | ||
| const inputs = { | ||
| input_ids: batchInputIds, | ||
| attention_mask: batchAttentionMask, | ||
| token_type_ids: batchTokenTypeId, | ||
| }; | ||
| // Exclude token_type_ids for MLE5Large | ||
| if (this.model === EmbeddingModel.MLE5Large) { | ||
| delete inputs.token_type_ids; | ||
| } | ||
| const output = yield __await(this.session.run(inputs)); | ||
| // Remove attention pooling | ||
| // Ref: https://github.com/qdrant/fastembed/commit/a335c8898f11042fdb311fce2dab3acf50c23011 | ||
| // const lastHiddenState: number[][][] = create3DArray( | ||
| // output.last_hidden_state.data as unknown[] as number[], | ||
| // output.last_hidden_state.dims as number[] | ||
| // ); | ||
| // const embeddings = lastHiddenState.map((layer, layerIdx) => { | ||
| // const weightedSum = layer.reduce((acc, tokenEmbedding, idx) => { | ||
| // const attentionWeight = maskArray[layerIdx][idx]; | ||
| // return acc.map( | ||
| // (val, i) => val + tokenEmbedding[i] * Number(attentionWeight) | ||
| // ); | ||
| // }, new Array(layer[0].length).fill(0)); | ||
| // const inputMaskSum = maskArray[layerIdx].reduce( | ||
| // (acc, attentionWeight) => acc + Number(attentionWeight), | ||
| // 0 | ||
| // ); | ||
| // return weightedSum.map((val) => val / Math.max(inputMaskSum, 1e-9)); | ||
| // }); | ||
| // const embeddings = lastHiddenState.map((sentence) => sentence[0]); | ||
| const embeddings = getEmbeddings(output.last_hidden_state.data, output.last_hidden_state.dims); | ||
| yield yield __await(embeddings.map(normalize)); | ||
| async *embed(textStrings, batchSize = 256) { | ||
| for (let i = 0; i < textStrings.length; i += batchSize) { | ||
| const batchTexts = textStrings.slice(i, i + batchSize); | ||
| const encodedTexts = await Promise.all(batchTexts.map((textString) => this.tokenizer.encode(textString))); | ||
| const idsArray = []; | ||
| const maskArray = []; | ||
| const typeIdsArray = []; | ||
| encodedTexts.forEach((text) => { | ||
| const ids = text.getIds().map(BigInt); | ||
| const mask = text.getAttentionMask().map(BigInt); | ||
| const typeIds = text.getTypeIds().map(BigInt); | ||
| idsArray.push(ids); | ||
| maskArray.push(mask); | ||
| typeIdsArray.push(typeIds); | ||
| }); | ||
| const maxLength = idsArray[0].length; | ||
| const batchInputIds = new ort.Tensor("int64", idsArray.flat(), [batchTexts.length, maxLength]); | ||
| const batchAttentionMask = new ort.Tensor("int64", maskArray.flat(), [batchTexts.length, maxLength]); | ||
| const batchTokenTypeId = new ort.Tensor("int64", typeIdsArray.flat(), [batchTexts.length, maxLength]); | ||
| const inputs = { | ||
| input_ids: batchInputIds, | ||
| attention_mask: batchAttentionMask, | ||
| token_type_ids: batchTokenTypeId, | ||
| }; | ||
| // Exclude token_type_ids for MLE5Large | ||
| if (this.model === EmbeddingModel.MLE5Large) { | ||
| delete inputs.token_type_ids; | ||
| } | ||
| }); | ||
| const output = await this.session.run(inputs); | ||
| // Remove attention pooling | ||
| // Ref: https://github.com/qdrant/fastembed/commit/a335c8898f11042fdb311fce2dab3acf50c23011 | ||
| // const lastHiddenState: number[][][] = create3DArray( | ||
| // output.last_hidden_state.data as unknown[] as number[], | ||
| // output.last_hidden_state.dims as number[] | ||
| // ); | ||
| // const embeddings = lastHiddenState.map((layer, layerIdx) => { | ||
| // const weightedSum = layer.reduce((acc, tokenEmbedding, idx) => { | ||
| // const attentionWeight = maskArray[layerIdx][idx]; | ||
| // return acc.map( | ||
| // (val, i) => val + tokenEmbedding[i] * Number(attentionWeight) | ||
| // ); | ||
| // }, new Array(layer[0].length).fill(0)); | ||
| // const inputMaskSum = maskArray[layerIdx].reduce( | ||
| // (acc, attentionWeight) => acc + Number(attentionWeight), | ||
| // 0 | ||
| // ); | ||
| // return weightedSum.map((val) => val / Math.max(inputMaskSum, 1e-9)); | ||
| // }); | ||
| // const embeddings = lastHiddenState.map((sentence) => sentence[0]); | ||
| const embeddings = getEmbeddings(output.last_hidden_state.data, output.last_hidden_state.dims); | ||
| yield embeddings.map(normalize); | ||
| } | ||
| } | ||
@@ -298,6 +267,4 @@ passageEmbed(texts, batchSize = 256) { | ||
| } | ||
| queryEmbed(query) { | ||
| return __awaiter(this, void 0, void 0, function* () { | ||
| return (yield this.embed([`query: ${query}`]).next()).value[0]; | ||
| }); | ||
| async queryEmbed(query) { | ||
| return (await this.embed([`query: ${query}`]).next()).value[0]; | ||
| } | ||
@@ -304,0 +271,0 @@ listSupportedModels() { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"fastembed.js","sourceRoot":"","sources":["../../src/fastembed.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"fastembed.js","sourceRoot":"","sources":["../../src/fastembed.ts"],"names":[],"mappings":"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"} |
@@ -1,3 +0,2 @@ | ||
| import { EmbeddingModel, ExecutionProvider, FlagEmbedding } from "./fastembed"; | ||
| export { EmbeddingModel, ExecutionProvider, FlagEmbedding }; | ||
| export { EmbeddingModel, ExecutionProvider, FlagEmbedding, } from "./fastembed.js"; | ||
| //# sourceMappingURL=index.d.ts.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC"} | ||
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,aAAa,GACd,MAAM,gBAAgB,CAAC"} |
+1
-2
@@ -1,3 +0,2 @@ | ||
| import { EmbeddingModel, ExecutionProvider, FlagEmbedding } from "./fastembed"; | ||
| export { EmbeddingModel, ExecutionProvider, FlagEmbedding }; | ||
| export { EmbeddingModel, ExecutionProvider, FlagEmbedding, } from "./fastembed.js"; | ||
| //# sourceMappingURL=index.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,aAAa,GACd,MAAM,gBAAgB,CAAC"} |
+2
-1
| { | ||
| "name": "fastembed", | ||
| "version": "1.14.2", | ||
| "version": "1.14.3", | ||
| "description": "NodeJS implementation of @Qdrant/fastembed", | ||
@@ -33,2 +33,3 @@ "keywords": [ | ||
| ], | ||
| "sideEffects": false, | ||
| "scripts": { | ||
@@ -35,0 +36,0 @@ "prepublishOnly": "npm run tsc", |
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
AI-detected potential code anomaly
Supply chain riskAI has identified unusual behaviors that may pose a security risk.
4
-20%64706
-8.36%772
-8.2%