haiku.rag/tests
Yiorgis Gozadinos 7be71ebbac
Order cross-database fusion by cosine similarity to the query
Retrieval scores are each database's own rank arithmetic; the databases
in a selection share an embedder, so similarity in that one space is the
signal comparable across databases by construction. Measured product to
product against score ordering: +8.3 to +16.6pp recall@5 across five
cells on two corpora, flat in collection count and corpus shape where
score ordering dips with both, closing roughly 60% of the gap to a
reranker; order-sensitivity residual 0.00pp in every cell. Exact ties
collapse from 51-81% of candidates to under 1%. Full-text-only searches
keep retrieval-score order, having no query vector. The vector column
already travels with every search result, so the similarity costs no
additional transfer; per-chunk embeddings are materialized only for the
federated path that reads them.
2026-09-01 15:26:42 +03:00
..
capabilities Finish the comment pass, and escape document fields everywhere Rich renders 2026-08-28 15:34:47 +03:00
cassettes Render collection identity only for multi-collection searches 2026-08-27 12:41:05 +03:00
chat Finish the comment pass, and escape document fields everywhere Rich renders 2026-08-28 15:34:47 +03:00
data Remove repliqa from test setup 2026-06-01 10:40:52 +03:00
docker Add a docker-compose for integration test services 2026-06-04 11:13:16 +03:00
ingester State what the code does, not what it replaced 2026-08-28 15:13:52 +03:00
multi_db Order cross-database fusion by cosine similarity to the query 2026-09-01 15:26:42 +03:00
sandbox Finish the comment pass, and escape document fields everywhere Rich renders 2026-08-28 15:34:47 +03:00
sources Resolve file:// URIs to paths through url2pathname 2026-08-21 10:22:26 +03:00
store Update lancedb to 0.37.1 2026-08-31 18:54:48 +03:00
tools Name the collection on a retrieved image, not only in the text 2026-08-28 12:02:16 +03:00
__init__.py
conftest.py State what the code does, not what it replaced 2026-08-28 15:13:52 +03:00
json_body_serializer.py Keep cross-encoder rerank scores apart when they saturate 2026-08-07 14:07:53 +03:00
services.py Add a docker-compose for integration test services 2026-06-04 11:13:16 +03:00
test_app.py Add --full-citations to ask and analyze 2026-08-31 16:31:09 +03:00
test_ask_images.py Accept images on ask/analyze 2026-07-25 10:23:55 +03:00
test_cascade_delete.py Resolve the databases a command works on, once 2026-08-25 15:48:47 +03:00
test_chunk.py Order cross-database fusion by cosine similarity to the query 2026-09-01 15:26:42 +03:00
test_chunker.py Reject unknown and out-of-range configuration values 2026-08-19 15:32:51 +03:00
test_cli.py Add --full-citations to ask and analyze 2026-08-31 16:31:09 +03:00
test_client.py Build the chunks FTS index on the first write instead of at table creation 2026-08-31 18:42:31 +03:00
test_client_analyze.py replace haiku.skills with native Pydantic AI capabilities 2026-07-24 15:26:17 +03:00
test_config.py Honor configured vector metric during search 2026-08-31 21:38:00 +08:00
test_context.py Type writing against one database 2026-08-25 10:09:23 +03:00
test_context_enhancement.py Type writing against one database 2026-08-25 10:09:23 +03:00
test_converters.py Add per-endpoint api_key to model and embedding config 2026-08-23 23:54:40 +03:00
test_database_autocreate.py Drop the indirection around what a client covers 2026-08-26 13:34:09 +03:00
test_database_scope.py State what the code does, not what it replaced 2026-08-28 15:13:52 +03:00
test_docling_serve_client.py Wire providers.docling_serve.timeout through to the client 2026-08-19 13:30:45 +03:00
test_doctor.py Guard against an FTS index that covers no rows 2026-08-31 18:42:31 +03:00
test_document.py Load document blobs only when asked 2026-08-06 13:04:51 +03:00
test_download_models.py Make get_config the only configuration lookup 2026-08-19 14:43:40 +03:00
test_duplicate_ingestion.py Re-check URI under the write lock to prevent duplicate ingestion 2026-07-08 11:26:45 +03:00
test_embedder.py Make get_config the only configuration lookup 2026-08-19 14:43:40 +03:00
test_embedder_config.py Add per-endpoint api_key to model and embedding config 2026-08-23 23:54:40 +03:00
test_enrichment_batching.py Stop the reranker fetch reading text it discards 2026-08-18 18:00:00 +03:00
test_filter.py Update lancedb to 0.37.1 2026-08-31 18:54:48 +03:00
test_info.py Finish the comment pass, and escape document fields everywhere Rich renders 2026-08-28 15:34:47 +03:00
test_inspector.py State what the code does, not what it replaced 2026-08-28 15:13:52 +03:00
test_lancedb_connection.py Make get_config the only configuration lookup 2026-08-19 14:43:40 +03:00
test_logging.py Additional tests 2026-02-13 18:08:46 +02:00
test_mcp.py Guard against an FTS index that covers no rows 2026-08-31 18:42:31 +03:00
test_pdf_attachments.py Type writing against one database 2026-08-25 10:09:23 +03:00
test_pdf_concurrency.py Serialize all in-process pdfium access under a shared lock 2026-06-14 10:50:42 +03:00
test_pdf_split.py Cover MCP, ingester and converter error paths 2026-07-26 19:14:26 +03:00
test_picture_description.py cover picture-description provider and rebuild edge cases 2026-05-05 14:20:37 +03:00
test_picture_in_context.py Type writing against one database 2026-08-25 10:09:23 +03:00
test_processing.py Resolve file:// URIs to paths through url2pathname 2026-08-21 10:22:26 +03:00
test_reader.py Make get_config the only configuration lookup 2026-08-19 14:43:40 +03:00
test_rebuild.py Repair an FTS index that covers no rows on write 2026-08-31 18:54:48 +03:00
test_reranker.py Accept a /v1 suffix on the vLLM reranker base_url 2026-08-28 15:46:42 +03:00
test_s3_integration.py State what the code does, not what it replaced 2026-08-28 15:13:52 +03:00
test_s3_source.py canonical metadata keys: source_revision + content_type, bump to 0.50.0 2026-05-26 11:43:30 +03:00
test_search.py Build one reranker for the databases searched together 2026-08-27 17:07:41 +03:00
test_search_phases.py Resolve the search type once per search 2026-08-24 15:28:21 +03:00
test_settings.py Move ConfigMismatchError to the store exceptions module 2026-08-24 10:03:46 +03:00
test_telemetry.py Route eval scripts through the shared telemetry configure 2026-07-10 11:38:33 +03:00
test_title_generation.py Type writing against one database 2026-08-25 10:09:23 +03:00
test_uri.py Resolve file:// URIs to paths through url2pathname 2026-08-21 10:22:26 +03:00
test_utils.py Add --full-citations to ask and analyze 2026-08-31 16:31:09 +03:00
test_vacuum_debounce.py Type writing against one database 2026-08-25 10:09:23 +03:00
test_versioning.py Ask the session which database an operation works on 2026-08-25 09:28:20 +03:00