Download tests/unit/test_memory.py from Punit1/Enterprise-AI-Copilot: direct link, hf CLI and curl.
- Browser
- Download file 1.15 kB
-
https://huggingface.co/spaces/Punit1/Enterprise-AI-Copilot/resolve/main/tests/unit/test_memory.py
- Command line
-
hf download hf://spaces/Punit1/Enterprise-AI-Copilot/tests/unit/test_memory.py
-
curl -L -o test_memory.py https://huggingface.co/spaces/Punit1/Enterprise-AI-Copilot/resolve/main/tests/unit/test_memory.py
1.15 kB
| """ | |
| Unit tests for Long-Term User Memory, Reciprocal Rank Fusion (RRF), and Semantic Cache. | |
| """ | |
| from __future__ import annotations | |
| import pytest | |
| import numpy as np | |
| from services.rrf_service import compute_rrf | |
| from services.reranker import RankedChunk | |
| from services.cache import cache_service | |
| def test_rrf_fusion(): | |
| c1 = RankedChunk("Text A", 0.9, "doc1", "a.txt", 1, "hr") | |
| c2 = RankedChunk("Text B", 0.8, "doc2", "b.txt", 1, "hr") | |
| dense = [c1, c2] | |
| sparse = [c2, c1] | |
| merged = compute_rrf(dense, sparse, k=60, top_n=2) | |
| assert len(merged) == 2 | |
| assert merged[0].score > 0.0 | |
| def test_semantic_cache(): | |
| v1 = [1.0, 0.0, 0.0] | |
| v2 = [0.99, 0.01, 0.0] # High similarity with v1 | |
| v3 = [0.0, 1.0, 0.0] # Low similarity with v1 | |
| res_data = {"response": "Cached answer"} | |
| cache_service.set_semantic(v1, res_data) | |
| # High similarity query hit | |
| hit = cache_service.get_semantic(v2, similarity_threshold=0.90) | |
| assert hit is not None | |
| assert hit["response"] == "Cached answer" | |
| # Low similarity query miss | |
| miss = cache_service.get_semantic(v3, similarity_threshold=0.90) | |
| assert miss is None | |