From 05170b676429fa1ed7bf7335c517d9f1db3a4851 Mon Sep 17 00:00:00 2001 From: Harrison Chase Date: Mon, 1 May 2023 20:28:14 -0700 Subject: [PATCH] Harrison/from documents (#3919) Co-authored-by: Gabriel Altay --- langchain/indexes/vectorstore.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/langchain/indexes/vectorstore.py b/langchain/indexes/vectorstore.py index 194942fa..64293ce0 100644 --- a/langchain/indexes/vectorstore.py +++ b/langchain/indexes/vectorstore.py @@ -9,6 +9,7 @@ from langchain.embeddings.base import Embeddings from langchain.embeddings.openai import OpenAIEmbeddings from langchain.llms.base import BaseLLM from langchain.llms.openai import OpenAI +from langchain.schemas import Document from langchain.text_splitter import RecursiveCharacterTextSplitter, TextSplitter from langchain.vectorstores.base import VectorStore from langchain.vectorstores.chroma import Chroma @@ -67,7 +68,11 @@ class VectorstoreIndexCreator(BaseModel): docs = [] for loader in loaders: docs.extend(loader.load()) - sub_docs = self.text_splitter.split_documents(docs) + return self.from_documents(docs) + + def from_documents(self, documents: List[Document]) -> VectorStoreIndexWrapper: + """Create a vectorstore index from documents.""" + sub_docs = self.text_splitter.split_documents(documents) vectorstore = self.vectorstore_cls.from_documents( sub_docs, self.embedding, **self.vectorstore_kwargs )