vectra 0.12.2 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +92 -100
- package/bin/vectra.js +3 -0
- package/lib/BrowserWebFetcher.d.ts +75 -0
- package/lib/BrowserWebFetcher.d.ts.map +1 -0
- package/lib/BrowserWebFetcher.js +290 -0
- package/lib/BrowserWebFetcher.js.map +1 -0
- package/lib/FileFetcher.d.ts +5 -0
- package/lib/FileFetcher.d.ts.map +1 -0
- package/lib/FileFetcher.js +89 -0
- package/lib/FileFetcher.js.map +1 -0
- package/lib/FileFetcher.spec.d.ts +2 -0
- package/lib/FileFetcher.spec.d.ts.map +1 -0
- package/lib/FileFetcher.spec.js +244 -0
- package/lib/FileFetcher.spec.js.map +1 -0
- package/lib/FolderWatcher.d.ts +91 -0
- package/lib/FolderWatcher.d.ts.map +1 -0
- package/lib/FolderWatcher.js +304 -0
- package/lib/FolderWatcher.js.map +1 -0
- package/lib/FolderWatcher.spec.d.ts +2 -0
- package/lib/FolderWatcher.spec.d.ts.map +1 -0
- package/lib/FolderWatcher.spec.js +308 -0
- package/lib/FolderWatcher.spec.js.map +1 -0
- package/lib/GPT3Tokenizer.d.ts +9 -0
- package/lib/GPT3Tokenizer.spec.d.ts +2 -0
- package/lib/GPT3Tokenizer.spec.d.ts.map +1 -0
- package/lib/GPT3Tokenizer.spec.js +45 -0
- package/lib/GPT3Tokenizer.spec.js.map +1 -0
- package/lib/ItemSelector.d.ts +41 -0
- package/lib/ItemSelector.d.ts.map +1 -0
- package/lib/ItemSelector.js +179 -0
- package/lib/ItemSelector.js.map +1 -0
- package/lib/ItemSelector.spec.d.ts +2 -0
- package/lib/ItemSelector.spec.d.ts.map +1 -0
- package/lib/ItemSelector.spec.js +204 -0
- package/lib/ItemSelector.spec.js.map +1 -0
- package/lib/LocalDocument.d.ts +54 -0
- package/lib/LocalDocument.d.ts.map +1 -1
- package/lib/LocalDocument.js +116 -0
- package/lib/LocalDocument.js.map +1 -0
- package/lib/LocalDocument.spec.d.ts +2 -0
- package/lib/LocalDocument.spec.d.ts.map +1 -0
- package/lib/LocalDocument.spec.js +214 -0
- package/lib/LocalDocument.spec.js.map +1 -0
- package/lib/LocalDocumentIndex.d.ts +152 -0
- package/lib/LocalDocumentIndex.d.ts.map +1 -1
- package/lib/LocalDocumentIndex.js +420 -0
- package/lib/LocalDocumentIndex.js.map +1 -0
- package/lib/LocalDocumentIndex.spec.d.ts +2 -0
- package/lib/LocalDocumentIndex.spec.d.ts.map +1 -0
- package/lib/LocalDocumentIndex.spec.js +494 -0
- package/lib/LocalDocumentIndex.spec.js.map +1 -0
- package/lib/LocalDocumentResult.d.ts +66 -0
- package/lib/LocalDocumentResult.d.ts.map +1 -1
- package/lib/LocalDocumentResult.js +376 -0
- package/lib/LocalDocumentResult.js.map +1 -0
- package/lib/LocalDocumentResult.spec.d.ts +2 -0
- package/lib/LocalDocumentResult.spec.d.ts.map +1 -0
- package/lib/LocalDocumentResult.spec.js +373 -0
- package/lib/LocalDocumentResult.spec.js.map +1 -0
- package/lib/LocalEmbeddings.d.ts +59 -0
- package/lib/LocalEmbeddings.d.ts.map +1 -0
- package/lib/LocalEmbeddings.js +101 -0
- package/lib/LocalEmbeddings.js.map +1 -0
- package/lib/LocalEmbeddings.spec.d.ts +2 -0
- package/lib/LocalEmbeddings.spec.d.ts.map +1 -0
- package/lib/LocalEmbeddings.spec.js +155 -0
- package/lib/LocalEmbeddings.spec.js.map +1 -0
- package/lib/LocalIndex.d.ts +159 -0
- package/lib/LocalIndex.d.ts.map +1 -1
- package/lib/LocalIndex.js +519 -0
- package/lib/LocalIndex.js.map +1 -0
- package/lib/LocalIndex.spec.d.ts +2 -0
- package/lib/LocalIndex.spec.js +611 -9
- package/lib/LocalIndex.spec.js.map +1 -1
- package/lib/OpenAIEmbeddings.d.ts +124 -0
- package/lib/OpenAIEmbeddings.d.ts.map +1 -0
- package/lib/OpenAIEmbeddings.js +166 -0
- package/lib/OpenAIEmbeddings.js.map +1 -0
- package/lib/OpenAIEmbeddings.spec.d.ts +2 -0
- package/lib/OpenAIEmbeddings.spec.d.ts.map +1 -0
- package/lib/OpenAIEmbeddings.spec.js +298 -0
- package/lib/OpenAIEmbeddings.spec.js.map +1 -0
- package/lib/TextSplitter.d.ts +21 -0
- package/lib/TextSplitter.d.ts.map +1 -1
- package/lib/TextSplitter.js +500 -0
- package/lib/TextSplitter.js.map +1 -0
- package/lib/TextSplitter.spec.d.ts +2 -0
- package/lib/TextSplitter.spec.d.ts.map +1 -0
- package/lib/TextSplitter.spec.js +337 -0
- package/lib/TextSplitter.spec.js.map +1 -0
- package/lib/TransformersEmbeddings.d.ts +121 -0
- package/lib/TransformersEmbeddings.d.ts.map +1 -0
- package/lib/TransformersEmbeddings.js +176 -0
- package/lib/TransformersEmbeddings.js.map +1 -0
- package/lib/TransformersEmbeddings.spec.d.ts +2 -0
- package/lib/TransformersEmbeddings.spec.d.ts.map +1 -0
- package/lib/TransformersEmbeddings.spec.js +198 -0
- package/lib/TransformersEmbeddings.spec.js.map +1 -0
- package/lib/TransformersTokenizer.d.ts +33 -0
- package/lib/TransformersTokenizer.d.ts.map +1 -0
- package/lib/TransformersTokenizer.js +44 -0
- package/lib/TransformersTokenizer.js.map +1 -0
- package/lib/TransformersTokenizer.spec.d.ts +2 -0
- package/lib/TransformersTokenizer.spec.d.ts.map +1 -0
- package/lib/TransformersTokenizer.spec.js +112 -0
- package/lib/TransformersTokenizer.spec.js.map +1 -0
- package/lib/WebFetcher.d.ts +14 -0
- package/lib/WebFetcher.d.ts.map +1 -0
- package/lib/WebFetcher.js +238 -0
- package/lib/WebFetcher.js.map +1 -0
- package/lib/WebFetcher.spec.d.ts +2 -0
- package/lib/WebFetcher.spec.d.ts.map +1 -0
- package/lib/WebFetcher.spec.js +263 -0
- package/lib/WebFetcher.spec.js.map +1 -0
- package/lib/browser.d.ts +30 -0
- package/lib/browser.d.ts.map +1 -0
- package/lib/browser.js +52 -0
- package/lib/browser.js.map +1 -0
- package/lib/codecs/IndexCodec.d.ts +37 -0
- package/lib/codecs/IndexCodec.d.ts.map +1 -0
- package/lib/codecs/IndexCodec.js +3 -0
- package/lib/codecs/IndexCodec.js.map +1 -0
- package/lib/codecs/JsonCodec.d.ts +19 -0
- package/lib/codecs/JsonCodec.d.ts.map +1 -0
- package/lib/codecs/JsonCodec.js +35 -0
- package/lib/codecs/JsonCodec.js.map +1 -0
- package/lib/codecs/JsonCodec.spec.d.ts +2 -0
- package/lib/codecs/JsonCodec.spec.d.ts.map +1 -0
- package/lib/codecs/JsonCodec.spec.js +66 -0
- package/lib/codecs/JsonCodec.spec.js.map +1 -0
- package/lib/codecs/LocalIndex.protobuf.spec.d.ts +2 -0
- package/lib/codecs/LocalIndex.protobuf.spec.d.ts.map +1 -0
- package/lib/codecs/LocalIndex.protobuf.spec.js +108 -0
- package/lib/codecs/LocalIndex.protobuf.spec.js.map +1 -0
- package/lib/codecs/ProtobufCodec.d.ts +20 -0
- package/lib/codecs/ProtobufCodec.d.ts.map +1 -0
- package/lib/codecs/ProtobufCodec.js +225 -0
- package/lib/codecs/ProtobufCodec.js.map +1 -0
- package/lib/codecs/ProtobufCodec.spec.d.ts +2 -0
- package/lib/codecs/ProtobufCodec.spec.d.ts.map +1 -0
- package/lib/codecs/ProtobufCodec.spec.js +155 -0
- package/lib/codecs/ProtobufCodec.spec.js.map +1 -0
- package/lib/codecs/index.d.ts +5 -0
- package/lib/codecs/index.d.ts.map +1 -0
- package/lib/codecs/index.js +21 -0
- package/lib/codecs/index.js.map +1 -0
- package/lib/codecs/migrateIndex.d.ts +24 -0
- package/lib/codecs/migrateIndex.d.ts.map +1 -0
- package/lib/codecs/migrateIndex.js +119 -0
- package/lib/codecs/migrateIndex.js.map +1 -0
- package/lib/codecs/migrateIndex.spec.d.ts +2 -0
- package/lib/codecs/migrateIndex.spec.d.ts.map +1 -0
- package/lib/codecs/migrateIndex.spec.js +151 -0
- package/lib/codecs/migrateIndex.spec.js.map +1 -0
- package/lib/codecs/schemas/index.proto +34 -0
- package/lib/index.d.ts +20 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +36 -0
- package/lib/index.js.map +1 -0
- package/lib/internals/Colorize.d.ts +14 -0
- package/lib/internals/Colorize.d.ts.map +1 -0
- package/lib/internals/Colorize.js +69 -0
- package/lib/internals/Colorize.js.map +1 -0
- package/lib/internals/index.d.ts +3 -0
- package/lib/internals/index.d.ts.map +1 -0
- package/lib/internals/index.js +19 -0
- package/lib/internals/index.js.map +1 -0
- package/lib/internals/types.d.ts +43 -0
- package/lib/internals/types.d.ts.map +1 -0
- package/lib/internals/types.js +3 -0
- package/lib/internals/types.js.map +1 -0
- package/lib/server/IndexManager.d.ts +78 -0
- package/lib/server/IndexManager.d.ts.map +1 -0
- package/lib/server/IndexManager.js +259 -0
- package/lib/server/IndexManager.js.map +1 -0
- package/lib/server/VectraServer.d.ts +40 -0
- package/lib/server/VectraServer.d.ts.map +1 -0
- package/lib/server/VectraServer.js +151 -0
- package/lib/server/VectraServer.js.map +1 -0
- package/lib/server/VectraServer.spec.d.ts +2 -0
- package/lib/server/VectraServer.spec.d.ts.map +1 -0
- package/lib/server/VectraServer.spec.js +322 -0
- package/lib/server/VectraServer.spec.js.map +1 -0
- package/lib/server/handlers/documentHandlers.d.ts +15 -0
- package/lib/server/handlers/documentHandlers.d.ts.map +1 -0
- package/lib/server/handlers/documentHandlers.js +95 -0
- package/lib/server/handlers/documentHandlers.js.map +1 -0
- package/lib/server/handlers/helpers.d.ts +23 -0
- package/lib/server/handlers/helpers.d.ts.map +1 -0
- package/lib/server/handlers/helpers.js +138 -0
- package/lib/server/handlers/helpers.js.map +1 -0
- package/lib/server/handlers/index.d.ts +8 -0
- package/lib/server/handlers/index.d.ts.map +1 -0
- package/lib/server/handlers/index.js +22 -0
- package/lib/server/handlers/index.js.map +1 -0
- package/lib/server/handlers/indexHandlers.d.ts +14 -0
- package/lib/server/handlers/indexHandlers.d.ts.map +1 -0
- package/lib/server/handlers/indexHandlers.js +85 -0
- package/lib/server/handlers/indexHandlers.js.map +1 -0
- package/lib/server/handlers/itemHandlers.d.ts +34 -0
- package/lib/server/handlers/itemHandlers.d.ts.map +1 -0
- package/lib/server/handlers/itemHandlers.js +166 -0
- package/lib/server/handlers/itemHandlers.js.map +1 -0
- package/lib/server/handlers/lifecycleHandlers.d.ts +11 -0
- package/lib/server/handlers/lifecycleHandlers.d.ts.map +1 -0
- package/lib/server/handlers/lifecycleHandlers.js +31 -0
- package/lib/server/handlers/lifecycleHandlers.js.map +1 -0
- package/lib/server/handlers/queryHandlers.d.ts +27 -0
- package/lib/server/handlers/queryHandlers.d.ts.map +1 -0
- package/lib/server/handlers/queryHandlers.js +135 -0
- package/lib/server/handlers/queryHandlers.js.map +1 -0
- package/lib/server/handlers/statsHandlers.d.ts +17 -0
- package/lib/server/handlers/statsHandlers.d.ts.map +1 -0
- package/lib/server/handlers/statsHandlers.js +81 -0
- package/lib/server/handlers/statsHandlers.js.map +1 -0
- package/lib/server/index.d.ts +4 -0
- package/lib/server/index.d.ts.map +1 -0
- package/lib/server/index.js +23 -0
- package/lib/server/index.js.map +1 -0
- package/lib/storage/FileStorage.d.ts +92 -0
- package/lib/storage/FileStorage.d.ts.map +1 -0
- package/lib/storage/FileStorage.js +3 -0
- package/lib/storage/FileStorage.js.map +1 -0
- package/lib/storage/FileStorageUtilities.d.ts +36 -0
- package/lib/storage/FileStorageUtilities.d.ts.map +1 -0
- package/lib/storage/FileStorageUtilities.js +91 -0
- package/lib/storage/FileStorageUtilities.js.map +1 -0
- package/lib/storage/FileStorageUtilities.spec.d.ts +2 -0
- package/lib/storage/FileStorageUtilities.spec.d.ts.map +1 -0
- package/lib/storage/FileStorageUtilities.spec.js +98 -0
- package/lib/storage/FileStorageUtilities.spec.js.map +1 -0
- package/lib/storage/FileType.d.ts +29 -0
- package/lib/storage/FileType.d.ts.map +1 -0
- package/lib/storage/FileType.js +38 -0
- package/lib/storage/FileType.js.map +1 -0
- package/lib/storage/IndexedDBStorage.d.ts +47 -0
- package/lib/storage/IndexedDBStorage.d.ts.map +1 -0
- package/lib/storage/IndexedDBStorage.js +347 -0
- package/lib/storage/IndexedDBStorage.js.map +1 -0
- package/lib/storage/LocalFileStorage.browser.d.ts +19 -0
- package/lib/storage/LocalFileStorage.browser.d.ts.map +1 -0
- package/lib/storage/LocalFileStorage.browser.js +43 -0
- package/lib/storage/LocalFileStorage.browser.js.map +1 -0
- package/lib/storage/LocalFileStorage.d.ts +23 -0
- package/lib/storage/LocalFileStorage.d.ts.map +1 -0
- package/lib/storage/LocalFileStorage.js +152 -0
- package/lib/storage/LocalFileStorage.js.map +1 -0
- package/lib/storage/LocalFileStorage.spec.d.ts +2 -0
- package/lib/storage/LocalFileStorage.spec.d.ts.map +1 -0
- package/lib/storage/LocalFileStorage.spec.js +249 -0
- package/lib/storage/LocalFileStorage.spec.js.map +1 -0
- package/lib/storage/VirtualFileStorage.d.ts +18 -0
- package/lib/storage/VirtualFileStorage.d.ts.map +1 -0
- package/lib/storage/VirtualFileStorage.js +178 -0
- package/lib/storage/VirtualFileStorage.js.map +1 -0
- package/lib/storage/VirtualFileStorage.spec.d.ts +2 -0
- package/lib/storage/VirtualFileStorage.spec.d.ts.map +1 -0
- package/lib/storage/VirtualFileStorage.spec.js +302 -0
- package/lib/storage/VirtualFileStorage.spec.js.map +1 -0
- package/lib/storage/index.d.ts +6 -0
- package/lib/storage/index.d.ts.map +1 -0
- package/lib/storage/index.js +22 -0
- package/lib/storage/index.js.map +1 -0
- package/lib/templates/templates/csharp/README.md +48 -0
- package/lib/templates/templates/csharp/VectraClient.cs +234 -0
- package/lib/templates/templates/go/README.md +71 -0
- package/lib/templates/templates/go/vectra_client.go +322 -0
- package/lib/templates/templates/java/README.md +81 -0
- package/lib/templates/templates/java/VectraClient.java +232 -0
- package/lib/templates/templates/python/README.md +37 -0
- package/lib/templates/templates/python/vectra_client.py +279 -0
- package/lib/templates/templates/rust/Cargo.toml +14 -0
- package/lib/templates/templates/rust/README.md +39 -0
- package/lib/templates/templates/rust/build.rs +4 -0
- package/lib/templates/templates/rust/lib.rs +284 -0
- package/lib/templates/templates/typescript/README.md +96 -0
- package/lib/templates/templates/typescript/VectraClient.ts +374 -0
- package/lib/templates/typescript/VectraClient.d.ts +114 -0
- package/lib/templates/typescript/VectraClient.d.ts.map +1 -0
- package/lib/templates/typescript/VectraClient.js +328 -0
- package/lib/templates/typescript/VectraClient.js.map +1 -0
- package/lib/types.d.ts +153 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +3 -0
- package/lib/types.js.map +1 -0
- package/lib/utils/index.d.ts +2 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/index.js +18 -0
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/pathUtils.d.ts +40 -0
- package/lib/utils/pathUtils.d.ts.map +1 -0
- package/lib/utils/pathUtils.js +98 -0
- package/lib/utils/pathUtils.js.map +1 -0
- package/lib/vectra-cli.d.ts +2 -0
- package/lib/vectra-cli.d.ts.map +1 -1
- package/lib/vectra-cli.generate.spec.d.ts +2 -0
- package/lib/vectra-cli.generate.spec.d.ts.map +1 -0
- package/lib/vectra-cli.generate.spec.js +112 -0
- package/lib/vectra-cli.generate.spec.js.map +1 -0
- package/lib/vectra-cli.js +760 -0
- package/lib/vectra-cli.js.map +1 -0
- package/lib/vectra-cli.spec.d.ts +1 -0
- package/lib/vectra-cli.spec.d.ts.map +1 -0
- package/lib/vectra-cli.spec.js +2 -0
- package/lib/vectra-cli.spec.js.map +1 -0
- package/package.json +91 -16
- package/proto/vectra_service.proto +276 -0
- package/src/BrowserWebFetcher.ts +345 -0
- package/src/FileFetcher.spec.ts +234 -0
- package/src/FileFetcher.ts +37 -25
- package/src/FolderWatcher.spec.ts +288 -0
- package/src/FolderWatcher.ts +304 -0
- package/src/GPT3Tokenizer.spec.ts +50 -0
- package/src/ItemSelector.spec.ts +252 -0
- package/src/ItemSelector.ts +163 -150
- package/src/LocalDocument.spec.ts +211 -0
- package/src/LocalDocument.ts +88 -94
- package/src/LocalDocumentIndex.spec.ts +481 -0
- package/src/LocalDocumentIndex.ts +39 -40
- package/src/LocalDocumentResult.spec.ts +373 -0
- package/src/LocalDocumentResult.ts +489 -319
- package/src/LocalEmbeddings.spec.ts +138 -0
- package/src/LocalEmbeddings.ts +120 -0
- package/src/LocalIndex.spec.ts +808 -66
- package/src/LocalIndex.ts +479 -429
- package/src/OpenAIEmbeddings.spec.ts +354 -0
- package/src/OpenAIEmbeddings.ts +26 -27
- package/src/TextSplitter.spec.ts +342 -0
- package/src/TextSplitter.ts +517 -532
- package/src/TransformersEmbeddings.spec.ts +188 -0
- package/src/TransformersEmbeddings.ts +232 -0
- package/src/TransformersTokenizer.spec.ts +143 -0
- package/src/TransformersTokenizer.ts +45 -0
- package/src/WebFetcher.spec.ts +288 -0
- package/src/WebFetcher.ts +184 -186
- package/src/browser.ts +69 -0
- package/src/codecs/IndexCodec.ts +40 -0
- package/src/codecs/JsonCodec.spec.ts +70 -0
- package/src/codecs/JsonCodec.ts +37 -0
- package/src/codecs/LocalIndex.protobuf.spec.ts +115 -0
- package/src/codecs/ProtobufCodec.spec.ts +166 -0
- package/src/codecs/ProtobufCodec.ts +193 -0
- package/src/codecs/index.ts +4 -0
- package/src/codecs/migrateIndex.spec.ts +176 -0
- package/src/codecs/migrateIndex.ts +125 -0
- package/src/codecs/schemas/index.proto +34 -0
- package/src/index.ts +9 -1
- package/src/internals/Colorize.ts +19 -16
- package/src/server/IndexManager.ts +243 -0
- package/src/server/VectraServer.spec.ts +303 -0
- package/src/server/VectraServer.ts +156 -0
- package/src/server/handlers/documentHandlers.ts +59 -0
- package/src/server/handlers/helpers.ts +93 -0
- package/src/server/handlers/index.ts +7 -0
- package/src/server/handlers/indexHandlers.ts +44 -0
- package/src/server/handlers/itemHandlers.ts +140 -0
- package/src/server/handlers/lifecycleHandlers.ts +26 -0
- package/src/server/handlers/queryHandlers.ts +96 -0
- package/src/server/handlers/statsHandlers.ts +38 -0
- package/src/server/index.ts +3 -0
- package/src/storage/FileStorage.ts +105 -0
- package/src/storage/FileStorageUtilities.spec.ts +106 -0
- package/src/storage/FileStorageUtilities.ts +77 -0
- package/src/storage/FileType.ts +61 -0
- package/src/storage/IndexedDBStorage.ts +365 -0
- package/src/storage/LocalFileStorage.browser.ts +52 -0
- package/src/storage/LocalFileStorage.spec.ts +292 -0
- package/src/storage/LocalFileStorage.ts +98 -0
- package/src/storage/VirtualFileStorage.spec.ts +307 -0
- package/src/storage/VirtualFileStorage.ts +169 -0
- package/src/storage/index.ts +5 -0
- package/src/templates/csharp/README.md +48 -0
- package/src/templates/csharp/VectraClient.cs +234 -0
- package/src/templates/go/README.md +71 -0
- package/src/templates/go/vectra_client.go +322 -0
- package/src/templates/java/README.md +81 -0
- package/src/templates/java/VectraClient.java +232 -0
- package/src/templates/python/README.md +37 -0
- package/src/templates/python/vectra_client.py +279 -0
- package/src/templates/rust/Cargo.toml +14 -0
- package/src/templates/rust/README.md +39 -0
- package/src/templates/rust/build.rs +4 -0
- package/src/templates/rust/lib.rs +284 -0
- package/src/templates/typescript/README.md +96 -0
- package/src/templates/typescript/VectraClient.ts +374 -0
- package/src/types.ts +131 -123
- package/src/utils/index.ts +1 -0
- package/src/utils/pathUtils.ts +106 -0
- package/src/vectra-cli.generate.spec.ts +72 -0
- package/src/vectra-cli.spec.ts +0 -0
- package/src/vectra-cli.ts +687 -246
package/lib/index.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./codecs"), exports);
|
|
18
|
+
__exportStar(require("./storage"), exports);
|
|
19
|
+
__exportStar(require("./FileFetcher"), exports);
|
|
20
|
+
__exportStar(require("./FolderWatcher"), exports);
|
|
21
|
+
__exportStar(require("./GPT3Tokenizer"), exports);
|
|
22
|
+
__exportStar(require("./ItemSelector"), exports);
|
|
23
|
+
__exportStar(require("./LocalEmbeddings"), exports);
|
|
24
|
+
__exportStar(require("./LocalIndex"), exports);
|
|
25
|
+
__exportStar(require("./LocalDocument"), exports);
|
|
26
|
+
__exportStar(require("./LocalDocumentIndex"), exports);
|
|
27
|
+
__exportStar(require("./LocalDocumentResult"), exports);
|
|
28
|
+
__exportStar(require("./TextSplitter"), exports);
|
|
29
|
+
__exportStar(require("./OpenAIEmbeddings"), exports);
|
|
30
|
+
__exportStar(require("./TransformersEmbeddings"), exports);
|
|
31
|
+
__exportStar(require("./TransformersTokenizer"), exports);
|
|
32
|
+
__exportStar(require("./types"), exports);
|
|
33
|
+
__exportStar(require("./WebFetcher"), exports);
|
|
34
|
+
__exportStar(require("./server"), exports);
|
|
35
|
+
__exportStar(require("./utils/pathUtils"), exports);
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,4CAA0B;AAC1B,gDAA8B;AAC9B,kDAAgC;AAChC,kDAAgC;AAChC,iDAA+B;AAC/B,oDAAkC;AAClC,+CAA6B;AAC7B,kDAAgC;AAChC,uDAAqC;AACrC,wDAAsC;AACtC,iDAA+B;AAC/B,qDAAmC;AACnC,2DAAyC;AACzC,0DAAwC;AACxC,0CAAwB;AACxB,+CAA6B;AAC7B,2CAAyB;AACzB,oDAAkC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @private
|
|
3
|
+
*/
|
|
4
|
+
export declare class Colorize {
|
|
5
|
+
static replaceLine(text: string): string;
|
|
6
|
+
static error(error: Error | string): string;
|
|
7
|
+
static output(output: object | string, isBm25?: boolean, quote?: string, units?: string): string;
|
|
8
|
+
static progress(message: string): string;
|
|
9
|
+
static success(message: string): string;
|
|
10
|
+
static title(title: string): string;
|
|
11
|
+
static value(field: string, value: any, units?: string): string;
|
|
12
|
+
static warning(warning: string): string;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=Colorize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Colorize.d.ts","sourceRoot":"","sources":["../../src/internals/Colorize.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,qBAAa,QAAQ;WACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;WAIjC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAC,MAAM,GAAG,MAAM;WAQlC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,GAAE,OAAe,EAAE,KAAK,GAAE,MAAW,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM;WA4BxG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;WAIjC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;WAIhC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;WAI5B,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM;WAI5D,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAGjD"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.Colorize = void 0;
|
|
5
|
+
const colorizerModule = require('json-colorizer');
|
|
6
|
+
const colorizeFn = (_a = colorizerModule === null || colorizerModule === void 0 ? void 0 : colorizerModule.default) !== null && _a !== void 0 ? _a : colorizerModule;
|
|
7
|
+
/**
|
|
8
|
+
* @private
|
|
9
|
+
*/
|
|
10
|
+
class Colorize {
|
|
11
|
+
static replaceLine(text) {
|
|
12
|
+
return '\x1b[A\x1b[2K' + text;
|
|
13
|
+
}
|
|
14
|
+
static error(error) {
|
|
15
|
+
if (typeof error === 'string') {
|
|
16
|
+
return `\x1b[31;1m${error}\x1b[0m`;
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
return `\x1b[31;1m${error.message}\x1b[0m`;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
static output(output, isBm25 = false, quote = '', units = '') {
|
|
23
|
+
if (typeof output === 'string') {
|
|
24
|
+
return isBm25 ? `\x1b[34m${quote}${output}${quote}\x1b[0m` : `\x1b[32m${quote}${output}${quote}\x1b[0m`;
|
|
25
|
+
}
|
|
26
|
+
else if (typeof output === 'object' && output !== null) {
|
|
27
|
+
if (typeof colorizeFn === 'function') {
|
|
28
|
+
return colorizeFn(output, {
|
|
29
|
+
pretty: true,
|
|
30
|
+
colors: {
|
|
31
|
+
BRACE: 'white',
|
|
32
|
+
BRACKET: 'white',
|
|
33
|
+
COLON: 'white',
|
|
34
|
+
COMMA: 'white',
|
|
35
|
+
STRING_KEY: 'white',
|
|
36
|
+
STRING_LITERAL: 'green',
|
|
37
|
+
NUMBER_LITERAL: 'blue',
|
|
38
|
+
BOOLEAN_LITERAL: 'blue',
|
|
39
|
+
NULL_LITERAL: 'blue'
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
return JSON.stringify(output, null, 2);
|
|
44
|
+
}
|
|
45
|
+
else if (typeof output == 'number') {
|
|
46
|
+
return `\x1b[34m${output}${units}\x1b[0m`;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
return `\x1b[34m${output}\x1b[0m`;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
static progress(message) {
|
|
53
|
+
return message;
|
|
54
|
+
}
|
|
55
|
+
static success(message) {
|
|
56
|
+
return `\x1b[32;1m${message}\x1b[0m`;
|
|
57
|
+
}
|
|
58
|
+
static title(title) {
|
|
59
|
+
return `\x1b[35;1m${title}\x1b[0m`;
|
|
60
|
+
}
|
|
61
|
+
static value(field, value, units = '') {
|
|
62
|
+
return `${field}: ${Colorize.output(value, false, '"', units)}`;
|
|
63
|
+
}
|
|
64
|
+
static warning(warning) {
|
|
65
|
+
return `\x1b[33m${warning}\x1b[0m`;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.Colorize = Colorize;
|
|
69
|
+
//# sourceMappingURL=Colorize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Colorize.js","sourceRoot":"","sources":["../../src/internals/Colorize.ts"],"names":[],"mappings":";;;;AAAA,MAAM,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAClD,MAAM,UAAU,GAAG,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,OAAO,mCAAI,eAAe,CAAC;AAE/D;;GAEG;AACH,MAAa,QAAQ;IACV,MAAM,CAAC,WAAW,CAAC,IAAY;QAClC,OAAO,eAAe,GAAG,IAAI,CAAC;IAClC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAmB;QACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,aAAa,KAAK,SAAS,CAAC;QACvC,CAAC;aAAM,CAAC;YACJ,OAAO,aAAa,KAAK,CAAC,OAAO,SAAS,CAAC;QAC/C,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,MAAuB,EAAE,SAAkB,KAAK,EAAE,QAAgB,EAAE,EAAE,QAAgB,EAAE;QACzG,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,MAAM,CAAC,CAAC,CAAC,WAAW,KAAK,GAAG,MAAM,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,KAAK,GAAG,MAAM,GAAG,KAAK,SAAS,CAAC;QAC5G,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACvD,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;gBACnC,OAAO,UAAU,CAAC,MAAM,EAAE;oBACtB,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE;wBACJ,KAAK,EAAE,OAAO;wBACd,OAAO,EAAE,OAAO;wBAChB,KAAK,EAAE,OAAO;wBACd,KAAK,EAAE,OAAO;wBACd,UAAU,EAAE,OAAO;wBACnB,cAAc,EAAE,OAAO;wBACvB,cAAc,EAAE,MAAM;wBACtB,eAAe,EAAE,MAAM;wBACvB,YAAY,EAAE,MAAM;qBACvB;iBACJ,CAAC,CAAC;YACP,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC3C,CAAC;aAAM,IAAI,OAAO,MAAM,IAAI,QAAQ,EAAE,CAAC;YACnC,OAAO,WAAW,MAAM,GAAG,KAAK,SAAS,CAAC;QAC9C,CAAC;aAAM,CAAC;YACJ,OAAO,WAAW,MAAM,SAAS,CAAC;QACtC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,OAAe;QAClC,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,OAAe;QACjC,OAAO,aAAa,OAAO,SAAS,CAAC;IACzC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAa;QAC7B,OAAO,aAAa,KAAK,SAAS,CAAC;IACvC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAa,EAAE,KAAU,EAAE,QAAgB,EAAE;QAC7D,OAAO,GAAG,KAAK,KAAK,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;IACpE,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,OAAe;QACjC,OAAO,WAAW,OAAO,SAAS,CAAC;IACvC,CAAC;CACJ;AA5DD,4BA4DC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/internals/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./Colorize"), exports);
|
|
18
|
+
__exportStar(require("./types"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internals/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,0CAAwB"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @private
|
|
3
|
+
*/
|
|
4
|
+
export interface CreateEmbeddingRequest {
|
|
5
|
+
input: CreateEmbeddingRequestInput;
|
|
6
|
+
dimensions?: number;
|
|
7
|
+
user?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @private
|
|
11
|
+
*/
|
|
12
|
+
export interface OpenAICreateEmbeddingRequest extends CreateEmbeddingRequest {
|
|
13
|
+
model: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* @private
|
|
17
|
+
*/
|
|
18
|
+
export interface CreateEmbeddingResponse {
|
|
19
|
+
object: string;
|
|
20
|
+
model: string;
|
|
21
|
+
data: Array<CreateEmbeddingResponseDataInner>;
|
|
22
|
+
usage: CreateEmbeddingResponseUsage;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @private
|
|
26
|
+
*/
|
|
27
|
+
export interface CreateEmbeddingResponseDataInner {
|
|
28
|
+
index: number;
|
|
29
|
+
object: string;
|
|
30
|
+
embedding: Array<number>;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* @private
|
|
34
|
+
*/
|
|
35
|
+
export interface CreateEmbeddingResponseUsage {
|
|
36
|
+
prompt_tokens: number;
|
|
37
|
+
total_tokens: number;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* @private
|
|
41
|
+
*/
|
|
42
|
+
export type CreateEmbeddingRequestInput = Array<any> | Array<number> | Array<string> | string;
|
|
43
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/internals/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,KAAK,EAAE,2BAA2B,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,sBAAsB;IACxE,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAC9C,KAAK,EAAE,4BAA4B,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/internals/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { LocalIndex } from '../LocalIndex';
|
|
2
|
+
import { LocalDocumentIndex } from '../LocalDocumentIndex';
|
|
3
|
+
import { EmbeddingsModel } from '../types';
|
|
4
|
+
export interface ManagedIndex {
|
|
5
|
+
name: string;
|
|
6
|
+
index: LocalIndex | LocalDocumentIndex;
|
|
7
|
+
isDocumentIndex: boolean;
|
|
8
|
+
format: string;
|
|
9
|
+
}
|
|
10
|
+
export interface IndexManagerConfig {
|
|
11
|
+
/** Single index path (mutually exclusive with rootDir). */
|
|
12
|
+
indexPath?: string;
|
|
13
|
+
/** Root directory containing multiple index subdirectories. */
|
|
14
|
+
rootDir?: string;
|
|
15
|
+
/** Embeddings model for server-side embedding computation. */
|
|
16
|
+
embeddings?: EmbeddingsModel;
|
|
17
|
+
/** Polling interval in ms for auto-detecting new indexes (default: 3000). */
|
|
18
|
+
scanInterval?: number;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Manages loaded indexes for the gRPC server.
|
|
22
|
+
* Supports single-index and multi-index modes with auto-detection of new indexes.
|
|
23
|
+
*/
|
|
24
|
+
export declare class IndexManager {
|
|
25
|
+
private readonly _config;
|
|
26
|
+
private readonly _indexes;
|
|
27
|
+
private _scanTimer?;
|
|
28
|
+
private _singleMode;
|
|
29
|
+
constructor(config: IndexManagerConfig);
|
|
30
|
+
/** Returns all currently loaded indexes. */
|
|
31
|
+
get indexes(): Map<string, ManagedIndex>;
|
|
32
|
+
/** Returns true if running in single-index mode. */
|
|
33
|
+
get isSingleMode(): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Initializes the index manager: loads existing indexes and starts auto-detection.
|
|
36
|
+
*/
|
|
37
|
+
initialize(): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Shuts down the index manager: stops scanning and flushes all indexes.
|
|
40
|
+
*/
|
|
41
|
+
shutdown(): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Gets a managed index by name.
|
|
44
|
+
* In single-index mode, any name (or empty string) returns the single index.
|
|
45
|
+
*/
|
|
46
|
+
getIndex(name: string): ManagedIndex | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Gets a managed index, throwing NOT_FOUND-appropriate error if missing.
|
|
49
|
+
*/
|
|
50
|
+
requireIndex(name: string): ManagedIndex;
|
|
51
|
+
/**
|
|
52
|
+
* Gets a managed document index, throwing if missing or not a document index.
|
|
53
|
+
*/
|
|
54
|
+
requireDocumentIndex(name: string): {
|
|
55
|
+
managed: ManagedIndex;
|
|
56
|
+
docIndex: LocalDocumentIndex;
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Creates a new index on disk and loads it.
|
|
60
|
+
*/
|
|
61
|
+
createIndex(name: string, format: string, isDocumentIndex: boolean, documentConfig?: {
|
|
62
|
+
version?: number;
|
|
63
|
+
chunkSize?: number;
|
|
64
|
+
chunkOverlap?: number;
|
|
65
|
+
}): Promise<ManagedIndex>;
|
|
66
|
+
/**
|
|
67
|
+
* Deletes an index from disk and unloads it.
|
|
68
|
+
*/
|
|
69
|
+
deleteIndex(name: string): Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* Lists all loaded indexes.
|
|
72
|
+
*/
|
|
73
|
+
listIndexes(): ManagedIndex[];
|
|
74
|
+
private loadSingleIndex;
|
|
75
|
+
private scanRootDir;
|
|
76
|
+
private loadIndex;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=IndexManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IndexManager.d.ts","sourceRoot":"","sources":["../../src/server/IndexManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAqB,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAA4B,MAAM,uBAAuB,CAAC;AAGrF,OAAO,EAAE,eAAe,EAAiB,MAAM,UAAU,CAAC;AAG1D,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,GAAG,kBAAkB,CAAC;IACvC,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IAC/B,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,qBAAa,YAAY;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwC;IACjE,OAAO,CAAC,UAAU,CAAC,CAAiC;IACpD,OAAO,CAAC,WAAW,CAAU;gBAEjB,MAAM,EAAE,kBAAkB;IAKtC,4CAA4C;IAC5C,IAAW,OAAO,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAE9C;IAED,oDAAoD;IACpD,IAAW,YAAY,IAAI,OAAO,CAEjC;IAED;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAaxC;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAStC;;;OAGG;IACI,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IASvD;;OAEG;IACI,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY;IAQ/C;;OAEG;IACI,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,YAAY,CAAC;QAAC,QAAQ,EAAE,kBAAkB,CAAA;KAAE;IAQlG;;OAEG;IACU,WAAW,CACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,OAAO,EACxB,cAAc,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GACjF,OAAO,CAAC,YAAY,CAAC;IA+CxB;;OAEG;IACU,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrD;;OAEG;IACI,WAAW,IAAI,YAAY,EAAE;YAItB,eAAe;YAKf,WAAW;YAmBX,SAAS;CAgC1B"}
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
36
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
37
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
38
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
39
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
40
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
41
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
+
exports.IndexManager = void 0;
|
|
46
|
+
const path = __importStar(require("path"));
|
|
47
|
+
const fs = __importStar(require("fs"));
|
|
48
|
+
const LocalIndex_1 = require("../LocalIndex");
|
|
49
|
+
const LocalDocumentIndex_1 = require("../LocalDocumentIndex");
|
|
50
|
+
const LocalFileStorage_1 = require("../storage/LocalFileStorage");
|
|
51
|
+
const codecs_1 = require("../codecs");
|
|
52
|
+
/**
|
|
53
|
+
* Manages loaded indexes for the gRPC server.
|
|
54
|
+
* Supports single-index and multi-index modes with auto-detection of new indexes.
|
|
55
|
+
*/
|
|
56
|
+
class IndexManager {
|
|
57
|
+
constructor(config) {
|
|
58
|
+
this._indexes = new Map();
|
|
59
|
+
this._config = config;
|
|
60
|
+
this._singleMode = !!config.indexPath;
|
|
61
|
+
}
|
|
62
|
+
/** Returns all currently loaded indexes. */
|
|
63
|
+
get indexes() {
|
|
64
|
+
return this._indexes;
|
|
65
|
+
}
|
|
66
|
+
/** Returns true if running in single-index mode. */
|
|
67
|
+
get isSingleMode() {
|
|
68
|
+
return this._singleMode;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Initializes the index manager: loads existing indexes and starts auto-detection.
|
|
72
|
+
*/
|
|
73
|
+
initialize() {
|
|
74
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
+
var _a;
|
|
76
|
+
if (this._singleMode && this._config.indexPath) {
|
|
77
|
+
yield this.loadSingleIndex(this._config.indexPath);
|
|
78
|
+
}
|
|
79
|
+
else if (this._config.rootDir) {
|
|
80
|
+
yield this.scanRootDir();
|
|
81
|
+
// Start periodic scanning for new indexes
|
|
82
|
+
const interval = (_a = this._config.scanInterval) !== null && _a !== void 0 ? _a : 3000;
|
|
83
|
+
this._scanTimer = setInterval(() => {
|
|
84
|
+
this.scanRootDir().catch(() => { });
|
|
85
|
+
}, interval);
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Shuts down the index manager: stops scanning and flushes all indexes.
|
|
91
|
+
*/
|
|
92
|
+
shutdown() {
|
|
93
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
94
|
+
if (this._scanTimer) {
|
|
95
|
+
clearInterval(this._scanTimer);
|
|
96
|
+
this._scanTimer = undefined;
|
|
97
|
+
}
|
|
98
|
+
// No special flush needed — LocalIndex writes on endUpdate()
|
|
99
|
+
this._indexes.clear();
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Gets a managed index by name.
|
|
104
|
+
* In single-index mode, any name (or empty string) returns the single index.
|
|
105
|
+
*/
|
|
106
|
+
getIndex(name) {
|
|
107
|
+
if (this._singleMode) {
|
|
108
|
+
// Return the single loaded index regardless of the name provided
|
|
109
|
+
const entries = Array.from(this._indexes.values());
|
|
110
|
+
return entries[0];
|
|
111
|
+
}
|
|
112
|
+
return this._indexes.get(name);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Gets a managed index, throwing NOT_FOUND-appropriate error if missing.
|
|
116
|
+
*/
|
|
117
|
+
requireIndex(name) {
|
|
118
|
+
const managed = this.getIndex(name);
|
|
119
|
+
if (!managed) {
|
|
120
|
+
throw new Error(`Index not found: ${name}`);
|
|
121
|
+
}
|
|
122
|
+
return managed;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Gets a managed document index, throwing if missing or not a document index.
|
|
126
|
+
*/
|
|
127
|
+
requireDocumentIndex(name) {
|
|
128
|
+
const managed = this.requireIndex(name);
|
|
129
|
+
if (!managed.isDocumentIndex) {
|
|
130
|
+
throw new Error(`Index "${name}" is not a document index`);
|
|
131
|
+
}
|
|
132
|
+
return { managed, docIndex: managed.index };
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Creates a new index on disk and loads it.
|
|
136
|
+
*/
|
|
137
|
+
createIndex(name, format, isDocumentIndex, documentConfig) {
|
|
138
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
139
|
+
if (this._indexes.has(name)) {
|
|
140
|
+
throw new Error(`Index already exists: ${name}`);
|
|
141
|
+
}
|
|
142
|
+
const rootDir = this._config.rootDir;
|
|
143
|
+
if (!rootDir && !this._singleMode) {
|
|
144
|
+
throw new Error('Cannot create index: no root directory configured');
|
|
145
|
+
}
|
|
146
|
+
const folderPath = rootDir ? path.join(rootDir, name) : name;
|
|
147
|
+
const storage = new LocalFileStorage_1.LocalFileStorage();
|
|
148
|
+
const codec = format === 'protobuf' ? new codecs_1.ProtobufCodec() : new codecs_1.JsonCodec();
|
|
149
|
+
let index;
|
|
150
|
+
if (isDocumentIndex) {
|
|
151
|
+
const config = {
|
|
152
|
+
folderPath,
|
|
153
|
+
storage,
|
|
154
|
+
codec,
|
|
155
|
+
embeddings: this._config.embeddings,
|
|
156
|
+
chunkingConfig: {
|
|
157
|
+
chunkSize: (documentConfig === null || documentConfig === void 0 ? void 0 : documentConfig.chunkSize) || 512,
|
|
158
|
+
chunkOverlap: (documentConfig === null || documentConfig === void 0 ? void 0 : documentConfig.chunkOverlap) || 0,
|
|
159
|
+
},
|
|
160
|
+
};
|
|
161
|
+
index = new LocalDocumentIndex_1.LocalDocumentIndex(config);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
index = new LocalIndex_1.LocalIndex(folderPath, undefined, storage, codec);
|
|
165
|
+
}
|
|
166
|
+
const createConfig = {
|
|
167
|
+
version: (documentConfig === null || documentConfig === void 0 ? void 0 : documentConfig.version) || 1,
|
|
168
|
+
deleteIfExists: false,
|
|
169
|
+
};
|
|
170
|
+
yield index.createIndex(createConfig);
|
|
171
|
+
const managed = {
|
|
172
|
+
name,
|
|
173
|
+
index,
|
|
174
|
+
isDocumentIndex,
|
|
175
|
+
format: format || 'json',
|
|
176
|
+
};
|
|
177
|
+
this._indexes.set(name, managed);
|
|
178
|
+
return managed;
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Deletes an index from disk and unloads it.
|
|
183
|
+
*/
|
|
184
|
+
deleteIndex(name) {
|
|
185
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
186
|
+
const managed = this.requireIndex(name);
|
|
187
|
+
yield managed.index.deleteIndex();
|
|
188
|
+
this._indexes.delete(name);
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Lists all loaded indexes.
|
|
193
|
+
*/
|
|
194
|
+
listIndexes() {
|
|
195
|
+
return Array.from(this._indexes.values());
|
|
196
|
+
}
|
|
197
|
+
loadSingleIndex(indexPath) {
|
|
198
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
199
|
+
const name = path.basename(indexPath);
|
|
200
|
+
yield this.loadIndex(name, indexPath);
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
scanRootDir() {
|
|
204
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
205
|
+
const rootDir = this._config.rootDir;
|
|
206
|
+
if (!fs.existsSync(rootDir))
|
|
207
|
+
return;
|
|
208
|
+
const entries = fs.readdirSync(rootDir, { withFileTypes: true });
|
|
209
|
+
for (const entry of entries) {
|
|
210
|
+
if (!entry.isDirectory())
|
|
211
|
+
continue;
|
|
212
|
+
if (entry.name.startsWith('.'))
|
|
213
|
+
continue;
|
|
214
|
+
if (this._indexes.has(entry.name))
|
|
215
|
+
continue;
|
|
216
|
+
const folderPath = path.join(rootDir, entry.name);
|
|
217
|
+
try {
|
|
218
|
+
yield this.loadIndex(entry.name, folderPath);
|
|
219
|
+
}
|
|
220
|
+
catch (_a) {
|
|
221
|
+
// Skip directories that aren't valid indexes
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
loadIndex(name, folderPath) {
|
|
227
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
228
|
+
const storage = new LocalFileStorage_1.LocalFileStorage();
|
|
229
|
+
// Detect codec — throws if no index file found
|
|
230
|
+
const codec = yield (0, codecs_1.detectCodec)(folderPath, storage);
|
|
231
|
+
const format = codec.extension === '.pb' ? 'protobuf' : 'json';
|
|
232
|
+
// Detect if it's a document index (has catalog file)
|
|
233
|
+
const hasCatalogJson = yield storage.pathExists(path.join(folderPath, 'catalog.json'));
|
|
234
|
+
const hasCatalogPb = yield storage.pathExists(path.join(folderPath, 'catalog.pb'));
|
|
235
|
+
const isDocumentIndex = hasCatalogJson || hasCatalogPb;
|
|
236
|
+
let index;
|
|
237
|
+
if (isDocumentIndex) {
|
|
238
|
+
index = new LocalDocumentIndex_1.LocalDocumentIndex({
|
|
239
|
+
folderPath,
|
|
240
|
+
storage,
|
|
241
|
+
codec,
|
|
242
|
+
embeddings: this._config.embeddings,
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
index = new LocalIndex_1.LocalIndex(folderPath, undefined, storage, codec);
|
|
247
|
+
}
|
|
248
|
+
const managed = {
|
|
249
|
+
name,
|
|
250
|
+
index,
|
|
251
|
+
isDocumentIndex,
|
|
252
|
+
format,
|
|
253
|
+
};
|
|
254
|
+
this._indexes.set(name, managed);
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
exports.IndexManager = IndexManager;
|
|
259
|
+
//# sourceMappingURL=IndexManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IndexManager.js","sourceRoot":"","sources":["../../src/server/IndexManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import * as grpc from '@grpc/grpc-js';
|
|
2
|
+
import { IndexManager } from './IndexManager';
|
|
3
|
+
import { EmbeddingsModel } from '../types';
|
|
4
|
+
export interface VectraServerConfig {
|
|
5
|
+
/** Port to bind the gRPC server on (default: 50051). */
|
|
6
|
+
port?: number;
|
|
7
|
+
/** Single index path (mutually exclusive with rootDir). */
|
|
8
|
+
indexPath?: string;
|
|
9
|
+
/** Root directory containing multiple index subdirectories. */
|
|
10
|
+
rootDir?: string;
|
|
11
|
+
/** Embeddings model for server-side embedding computation. */
|
|
12
|
+
embeddings?: EmbeddingsModel;
|
|
13
|
+
/** Polling interval in ms for auto-detecting new indexes (default: 3000). */
|
|
14
|
+
scanInterval?: number;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* gRPC server that exposes Vectra indexes over the VectraService proto.
|
|
18
|
+
*/
|
|
19
|
+
export declare class VectraServer {
|
|
20
|
+
private readonly _config;
|
|
21
|
+
private readonly _indexManager;
|
|
22
|
+
private _server?;
|
|
23
|
+
private _startTime;
|
|
24
|
+
private _shutdownPromise?;
|
|
25
|
+
constructor(config: VectraServerConfig);
|
|
26
|
+
/** The underlying IndexManager. */
|
|
27
|
+
get indexManager(): IndexManager;
|
|
28
|
+
/** The underlying gRPC server instance. */
|
|
29
|
+
get server(): grpc.Server | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* Starts the gRPC server and loads indexes.
|
|
32
|
+
* @returns The port the server is listening on.
|
|
33
|
+
*/
|
|
34
|
+
start(): Promise<number>;
|
|
35
|
+
/**
|
|
36
|
+
* Gracefully shuts down the server with a 5s draining timeout.
|
|
37
|
+
*/
|
|
38
|
+
shutdown(): Promise<void>;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=VectraServer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VectraServer.d.ts","sourceRoot":"","sources":["../../src/server/VectraServer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAsB,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAU3C,MAAM,WAAW,kBAAkB;IAC/B,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAID;;GAEG;AACH,qBAAa,YAAY;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,gBAAgB,CAAC,CAAgB;gBAE7B,MAAM,EAAE,kBAAkB;IAWtC,mCAAmC;IACnC,IAAW,YAAY,IAAI,YAAY,CAEtC;IAED,2CAA2C;IAC3C,IAAW,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,CAE3C;IAED;;;OAGG;IACU,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IA6DrC;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CA2BzC"}
|