-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathqdrant test.py
More file actions
51 lines (40 loc) · 1.29 KB
/
qdrant test.py
File metadata and controls
51 lines (40 loc) · 1.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain_community.embeddings import OllamaEmbeddings
from langchain_community.document_loaders import UnstructuredFileLoader
from langchain_qdrant import Qdrant
import time
import os
from dotenv import load_dotenv
_ = load_dotenv(dotenv_path=".env")
text_splitter = RecursiveCharacterTextSplitter(
chunk_size=1000,
chunk_overlap=200,
length_function=len,
is_separator_regex=False,
)
ollama_emb = OllamaEmbeddings(
model=os.environ["OLLAMA_EMBEDDING_MODEL"],
model_kwargs={"keep_alive": 1},
)
with open("temp.txt", "r", encoding="utf-8") as f:
part = f.read() # str
chunks = text_splitter.create_documents([part]) # Chunks ready for RAG | List of Documents
# qdrant loading time
start = time.time()
# qdrant = Qdrant.from_documents(
# documents=chunks,
# embedding=ollama_emb,
# path="./embeddings/Qdrant",
# collection_name="CoFi",
# )
qdrant = Qdrant.from_existing_collection(
path="./embeddings/Qdrant",
collection_name="CoFi",
embedding=ollama_emb,
)
t = time.time() - start
print(f"Qdrant loading time: {t:.2f} seconds")
query = ""
retriever = qdrant.as_retriever()
docs = retriever.invoke("JEBA REZWANA and MARY LOU MAHER")
print([doc.page_content for doc in docs])