Solution published: update vectorstore.py

This commit is contained in:
2026-06-17 12:07:14 +00:00
parent 96e4110467
commit c5a0398c94
+5 -5
View File
@@ -1,30 +1,30 @@
from pathlib import Path from pathlib import Path
from uuid import uuid4 from uuid import uuid4
from langchain_chroma import Chroma from langchain_qdrant import Qdrant
from langchain_core.documents import Document from langchain_core.documents import Document
from langchain_ollama import OllamaEmbeddings from langchain_ollama import OllamaEmbeddings
from langchain_text_splitters import RecursiveCharacterTextSplitter from langchain_text_splitters import RecursiveCharacterTextSplitter
CHROMA_DIR = "./chroma_db" QDRANT_DIR = "./qdrant_db"
COLLECTION_NAME = "local_kb" COLLECTION_NAME = "local_kb"
EMBED_MODEL = "nomic-embed-text" EMBED_MODEL = "nomic-embed-text"
OLLAMA_BASE_URL = "http://127.0.0.1:11434" OLLAMA_BASE_URL = "http://127.0.0.1:11434"
def create_vectorstore(persist_directory: str = CHROMA_DIR) -> Chroma: def create_vectorstore(persist_directory: str = QDRANT_DIR) -> Qdrant:
embeddings = OllamaEmbeddings( embeddings = OllamaEmbeddings(
model=EMBED_MODEL, model=EMBED_MODEL,
base_url=OLLAMA_BASE_URL, base_url=OLLAMA_BASE_URL,
) )
return Chroma( return Qdrant(
collection_name=COLLECTION_NAME, collection_name=COLLECTION_NAME,
embedding_function=embeddings, embedding_function=embeddings,
persist_directory=persist_directory, persist_directory=persist_directory,
) )
def load_documents(directory: str, vectorstore: Chroma) -> int: def load_documents(directory: str, vectorstore: Qdrant) -> int:
splitter = RecursiveCharacterTextSplitter( splitter = RecursiveCharacterTextSplitter(
chunk_size=1000, chunk_size=1000,
chunk_overlap=200, chunk_overlap=200,