search_semantic
Pure semantic (vector) search — best for paraphrased queries, concept exploration, "papers arguing X" type questions. Uses dense vector similarity via Gemini or SPECTER2 embeddings. Skips BM25 fusion which can introduce term-matching noise. For exact terms use "search_keyword". For mixed queries use "search".
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results to return | |
| query | Yes | Search query — concepts, paraphrased ideas, "papers arguing X" | |
| dateTo | No | Filter: published on or before (ISO date) | |
| detail | No | 'minimal' = id+title+snippet+score. 'standard' = adds metadata + chunkContext. 'full' = adds entities/selfContained/scores/licenses map | standard |
| facets | No | If true, return facets block: count breakdown by contentType + top entities mentioned | |
| run_id | No | Optional. The active methodist run_id (as returned by the methodist diagnose / get_current_dose door). Pass it whenever you call this tool while working inside a run, so the call is attributed to that run for the §8 usage crosscheck — attribution is run-anchored, so it stays correct even if your access token refreshes mid-run. Must be YOUR run: a run_id owned by a different principal, or a non-existent run_id, is rejected. | |
| dateFrom | No | Filter: published on or after (ISO date) | |
| entities | No | Soft filter by entity (method names like "BERT", datasets like "SQuAD", metrics like "BLEU"), case-insensitive. Matching chunks rank first; chunks with no entities recorded (legacy gap) fall to the bottom rather than being dropped; chunks with non-matching entities are excluded. | |
| strategy | No | 'fast' (~1s) skips reranker; 'rerank' (~10s) applies cross-encoder for higher relevance | fast |
| categories | No | Filter by arXiv categories (e.g. cs.AI, cs.LG) | |
| contentType | No | Filter chunks by type. Use [methodology] for HOW researchers approach a problem; [results] for OUTCOMES; [survey, background] for context | |
| diversifyBy | No | 'document' (default): max N chunks per paper. 'keyConcept': diversify by main idea. 'contentType': mix methodology/results/etc. | document |
| vectorModel | No | 'gemini' for general semantic queries (default); 'specter2' for scientific paper similarity. ★ COVERAGE DIFFERS: the specter2 space does not cover the whole corpus — 77,782 chunks carry no vector in it and are therefore INVISIBLE to a specter2 search, not merely ranked lower. An empty result there means 'not indexed in this space', which is indistinguishable from 'nothing similar exists'. Use gemini when completeness matters; use specter2 to re-rank or corroborate. | gemini |
| maxPerDocument | No | Max chunks per single key (only when diversifyBy=document) |