Spaces:
Running
Running
| #!/usr/bin/env python | |
| """Quick test of retriever with re-ranking.""" | |
| from components.vector_store import VectorStore | |
| from components.embedder import HuggingFaceEmbedder | |
| from components.retriever import Retriever | |
| from app.config import VECTOR_DB_PATH | |
| # Create embedder and vector store | |
| embedder = HuggingFaceEmbedder() | |
| vs = VectorStore(embedder=embedder, index_path=VECTOR_DB_PATH) | |
| vs.load() | |
| # Create retriever with reranking enabled | |
| retriever = Retriever(vs, use_reranker=True) | |
| # Test query | |
| query = 'Tell me about the culture' | |
| results = retriever.retrieve(query) | |
| print(f'\n๐ Query: "{query}"') | |
| print(f'๐ Retrieved {len(results)} chunks (with cross-encoder re-ranking)\n') | |
| for i, (doc, score) in enumerate(results, 1): | |
| topic = doc.metadata.get('topic', 'untagged') | |
| source = doc.metadata.get('source', 'unknown') | |
| preview = doc.page_content[:80].replace('\n', ' ') | |
| print(f'{i}. [{topic:12}] Score: {score:.3f}') | |
| print(f' Source: {source}') | |
| print(f' Preview: {preview}...\n') | |
| print("\nโ Re-ranking test complete!") | |