Storage Context

LlamaIndex offers core abstractions around storage of Nodes, indices, and vectors. A key abstraction is the StorageContext - this contains the underlying BaseDocumentStore (for nodes), BaseIndexStore (for indices), and VectorStore (for vectors).

The Document/Node and index stores rely on a common KVStore abstraction, which is also detailed below.

We show the API references for the Storage Classes, loading indices from the Storage Context, and the Storage Context class itself below.

Loading Indices

class BaseDocumentStore, index_store: BaseIndexStore, vector_stores: Dict[str, VectorStore], graph_store: GraphStore)

Storage context.

The storage context container is a utility container for storing nodes, indices, and vectors. It contains the following: - docstore: BaseDocumentStore - index_store: BaseIndexStore - vector_store: VectorStore - graph_store: GraphStore

add_vector_store(vector_store: VectorStore, namespace: str) None

Add a vector store to the storage context.

classmethod from_defaults(docstore: Optional[BaseDocumentStore] = None, index_store: Optional[BaseIndexStore] = None, vector_store: Optional[VectorStore] = None, vector_stores: Optional[Dict[str, VectorStore]] = None, graph_store: Optional[GraphStore] = None, persist_dir: Optional[str] = None, fs: Optional[AbstractFileSystem] = None) StorageContext

Create a StorageContext from defaults.

  • docstore (Optional[BaseDocumentStore]) – document store

  • index_store (Optional[BaseIndexStore]) – index store

  • vector_store (Optional[VectorStore]) – vector store

  • graph_store (Optional[GraphStore]) – graph store

classmethod from_dict(save_dict: dict) StorageContext

Create a StorageContext from dict.

persist(persist_dir: Union[str, PathLike] = './storage', docstore_fname: str = 'docstore.json', index_store_fname: str = 'index_store.json', vector_store_fname: str = 'vector_store.json', image_store_fname: str = 'image_store.json', graph_store_fname: str = 'graph_store.json', fs: Optional[AbstractFileSystem] = None) None

Persist the storage context.


persist_dir (str) – directory to persist the storage context

property vector_store: VectorStore

Backwrds compatibility for vector_store property.