Issurance_Agent_Rag / retriever.py
Rivalcoder
Update The Model issues and Prompt
eb87b3b
raw
history blame
1.22 kB
from sentence_transformers import SentenceTransformer
import numpy as np
import time
from embedder import get_model
# Use the preloaded model from embedder instead of creating a new instance
def retrieve_chunks(index, texts, query, k=5):
start_time = time.time()
print(f"Retrieving chunks for query: '{query[:50]}...'")
# Time query embedding
embed_start = time.time()
model = get_model() # Use the preloaded model
query_vec = model.encode([query])
embed_time = time.time() - embed_start
print(f"Query embedding took: {embed_time:.3f} seconds")
# Time FAISS search
search_start = time.time()
distances, indices = index.search(np.array(query_vec), k)
search_time = time.time() - search_start
print(f"FAISS search took: {search_time:.3f} seconds")
# Time result processing
process_start = time.time()
results = [texts[i] for i in indices[0]]
process_time = time.time() - process_start
print(f"Result processing took: {process_time:.3f} seconds")
total_time = time.time() - start_time
print(f"Total chunk retrieval took: {total_time:.3f} seconds")
print(f"Retrieved {len(results)} chunks")
return results