from db.vector_store import VectorStore from src.modelling.embed import DalaEmbedder from typing import List class SemanticSearcher: """ Perform semantic search over embedded Kazakh text. """ def __init__(self): self.embedder = DalaEmbedder() self.vector_store = VectorStore() def search(self, query: str, top_k: int = 5) -> List[dict]: """ Embed the query and retrieve the most relevant chunks. """ query_embedding = self.embedder.embed_text(query) results = self.vector_store.search(query_embedding, top_k = top_k) return results