UNPKG

fastembed-web

Version:

Fork of https://github.com/Anush008/fastembed-js/LICENSE using onnxruntime-web for greater compatibility

51 lines (50 loc) 1.83 kB
export declare enum ExecutionProvider { CPU = "cpu", CUDA = "cuda", WebGL = "webgl", WASM = "wasm", XNNPACK = "xnnpack" } export declare enum EmbeddingModel { AllMiniLML6V2 = "fast-all-MiniLM-L6-v2", BGEBaseEN = "fast-bge-base-en", BGEBaseENV15 = "fast-bge-base-en-v1.5", BGESmallEN = "fast-bge-small-en", BGESmallENV15 = "fast-bge-small-en-v1.5", BGESmallZH = "fast-bge-small-zh-v1.5", MLE5Large = "fast-multilingual-e5-large" } interface InitOptions { model: EmbeddingModel; executionProviders: ExecutionProvider[]; maxLength: number; cacheDir: string; showDownloadProgress: boolean; } interface ModelInfo { model: EmbeddingModel; dim: number; description: string; } declare abstract class Embedding { abstract listSupportedModels(): ModelInfo[]; abstract embed(texts: string[], batchSize?: number): AsyncGenerator<number[][], void, unknown>; abstract passageEmbed(texts: string[], batchSize: number): AsyncGenerator<number[][], void, unknown>; abstract queryEmbed(query: string): Promise<number[]>; } export declare class FlagEmbedding extends Embedding { private tokenizer; private session; private model; private constructor(); static init({ model, executionProviders, maxLength, cacheDir, showDownloadProgress, }?: Partial<InitOptions>): Promise<FlagEmbedding>; private static loadTokenizer; private static downloadFileFromGCS; private static decompressToCache; private static retrieveModel; embed(textStrings: string[], batchSize?: number): AsyncGenerator<number[][], void, unknown>; passageEmbed(texts: string[], batchSize?: number): AsyncGenerator<number[][], void, unknown>; queryEmbed(query: string): Promise<number[]>; listSupportedModels(): ModelInfo[]; } export {};