Spaces:
Sleeping
Sleeping
| from langchain_community.embeddings import HuggingFaceEmbeddings | |
| from langchain_community.vectorstores import FAISS | |
| from langchain_community.document_loaders import PyPDFLoader, DirectoryLoader | |
| from langchain.text_splitter import RecursiveCharacterTextSplitter | |
| from dotenv import load_dotenv | |
| import os | |
| import logging | |
| load_dotenv() | |
| logging.basicConfig(level=logging.INFO) | |
| logger = logging.getLogger(__name__) | |
| def load_embeddings(): | |
| return HuggingFaceEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2", model_kwargs={"device": "cpu"}) | |
| def load_vector_database(embeddings): | |
| try: | |
| db = FAISS.load_local("vectorstore/db_faiss", embeddings, allow_dangerous_deserialization=True) | |
| logger.info("Vector database loaded successfully!") | |
| return db | |
| except Exception as e: | |
| logger.error(f"Failed to load vector database: {e}") | |
| raise e | |
| embeddings = load_embeddings() | |
| vector_db = load_vector_database(embeddings) | |