Spaces:
Build error
Build error
| import os | |
| from langchain.text_splitter import RecursiveCharacterTextSplitter | |
| from langchain_community.document_loaders import PyPDFLoader, DirectoryLoader, PDFMinerLoader | |
| from langchain_community.embeddings import SentenceTransformerEmbeddings | |
| from langchain_community.vectorstores import FAISS | |
| def main(): | |
| documents = [] | |
| for root, dirs, files in os.walk("docs"): | |
| for file in files: | |
| if file.endswith(".pdf"): | |
| print(file) | |
| loader = PDFMinerLoader(os.path.join(root, file)) | |
| documents = loader.load() | |
| text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=500) | |
| texts = text_splitter.split_documents(documents) | |
| # Create embeddings | |
| embeddings = SentenceTransformerEmbeddings(model_name="all-MiniLM-L6-v2") | |
| # Create FAISS index | |
| db = FAISS.from_documents(texts, embeddings) | |
| # Save the index | |
| db.save_local("faiss_index") | |
| if __name__ == "__main__": | |
| main() |