Update rag_tools
This commit is contained in:
+4
-1
@@ -3,6 +3,7 @@ from qdrant_client import QdrantClient
|
|||||||
from langchain.embeddings.ollama import OllamaEmbeddings
|
from langchain.embeddings.ollama import OllamaEmbeddings
|
||||||
from langchain.vectorstores.qdrant import QdrantVectorStore
|
from langchain.vectorstores.qdrant import QdrantVectorStore
|
||||||
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
||||||
|
from langchain.schema import Document
|
||||||
|
|
||||||
# Initialize embeddings and vector store
|
# Initialize embeddings and vector store
|
||||||
embeddings = OllamaEmbeddings(model="nomic-embed-text")
|
embeddings = OllamaEmbeddings(model="nomic-embed-text")
|
||||||
@@ -10,7 +11,9 @@ client = QdrantClient(host="localhost", port=6333)
|
|||||||
collection_name = "knowledge_base"
|
collection_name = "knowledge_base"
|
||||||
# Ensure collection exists
|
# Ensure collection exists
|
||||||
if not client.has_collection(collection_name):
|
if not client.has_collection(collection_name):
|
||||||
client.create_collection(name=collection_name, vectors_config={"size": embeddings.embed_query(["test"]).shape[1], "distance": "Cosine"})
|
# Determine embedding dimension by embedding a dummy text
|
||||||
|
dim = embeddings.embed_query(["test"])[0].shape[0]
|
||||||
|
client.create_collection(name=collection_name, vectors_config={"size": dim, "distance": "Cosine"})
|
||||||
vector_store = QdrantVectorStore(client=client, collection_name=collection_name, embedding=embeddings)
|
vector_store = QdrantVectorStore(client=client, collection_name=collection_name, embedding=embeddings)
|
||||||
|
|
||||||
# Text splitter
|
# Text splitter
|
||||||
|
|||||||
Reference in New Issue
Block a user