index: VectorStoreIndex = load_index_from_storage(...)
index = load_index_from_storage(...) if not isinstance(index, VectorStoreIndex): raise ValueError("unexpected index type loaded")
def load_index_from_storage(
storage_context: StorageContext,
index_id: Optional[str] = None,
**kwargs: Any,
) -> BaseIndex:
return cast(VectorStoreIndex, load_index_from_storage(storage_context=storage_context))
def create_index(self) -> VectorStoreIndex:
vector_store = self._get_vector_store()
storage_context = StorageContext.from_defaults(vector_store=vector_store)
documents = self.reader.load_data()
logging.info("Loaded %d documents into vector store", len(documents))
vecstore_index = VectorStoreIndex.from_documents(documents, storage_context, embed_model=self.embed_model)
if self.persist_dir:
storage_context.persist(self.persist_dir)
return vecstore_index
def load_index(self) -> VectorStoreIndex:
if not Path(self.persist_dir).exists():
raise FileNotFoundError(f"Persist dir [{self.persist_dir}] does not exist")
logging.info("Loading index from dir: %s", self.persist_dir)
storage_context = StorageContext.from_defaults(persist_dir=self.persist_dir,
vector_store=self._get_vector_store())
return cast(VectorStoreIndex, load_index_from_storage(storage_context=storage_context))
load_index_from_storage(storage_context, embed_model=embed_model)