From 69dd6d4efafc00f4dcd23d13bddaaad5f6ea0f39 Mon Sep 17 00:00:00 2001 From: Yi Ding <yi.s.ding@gmail.com> Date: Tue, 4 Jul 2023 08:54:22 -0700 Subject: [PATCH] make persistence optional --- packages/core/src/BaseIndex.ts | 7 ++++- packages/core/src/storage/StorageContext.ts | 33 +++++++++++---------- 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/packages/core/src/BaseIndex.ts b/packages/core/src/BaseIndex.ts index f6e099eeb..0889be758 100644 --- a/packages/core/src/BaseIndex.ts +++ b/packages/core/src/BaseIndex.ts @@ -171,7 +171,12 @@ export class VectorStoreIndex extends BaseIndex<IndexDict> { vectorStore.add(embeddingResults); - throw new Error("not implemented"); + const indexDict = new IndexDict(); + for (const { node } of embeddingResults) { + indexDict.addNode(node); + } + + return indexDict; } static async fromDocuments( diff --git a/packages/core/src/storage/StorageContext.ts b/packages/core/src/storage/StorageContext.ts index d7c5e03bc..d5c51c8d2 100644 --- a/packages/core/src/storage/StorageContext.ts +++ b/packages/core/src/storage/StorageContext.ts @@ -32,21 +32,24 @@ export async function storageContextFromDefaults({ persistDir, fs, }: BuilderParams): Promise<StorageContext> { - persistDir = persistDir || DEFAULT_PERSIST_DIR; - - fs = fs || DEFAULT_FS; - - docStore = - docStore || - (await SimpleDocumentStore.fromPersistDir( - persistDir, - DEFAULT_NAMESPACE, - fs - )); - indexStore = - indexStore || (await SimpleIndexStore.fromPersistDir(persistDir, fs)); - vectorStore = - vectorStore || (await SimpleVectorStore.fromPersistDir(persistDir, fs)); + if (!persistDir) { + docStore = docStore || new SimpleDocumentStore(); + indexStore = indexStore || new SimpleIndexStore(); + vectorStore = vectorStore || new SimpleVectorStore(); + } else { + fs = fs || DEFAULT_FS; + docStore = + docStore || + (await SimpleDocumentStore.fromPersistDir( + persistDir, + DEFAULT_NAMESPACE, + fs + )); + indexStore = + indexStore || (await SimpleIndexStore.fromPersistDir(persistDir, fs)); + vectorStore = + vectorStore || (await SimpleVectorStore.fromPersistDir(persistDir, fs)); + } return { docStore, -- GitLab