diff --git a/TODO.md b/TODO.md index faed4bc2..64760d17 100644 --- a/TODO.md +++ b/TODO.md @@ -179,3 +179,20 @@ The preview works now, but it is currently all-or-nothing. Intended shape: interesting part: because preview deliberately has no identity, the transcript has to be held client-side and replayed on the first authenticated request, not looked up server-side. Size-cap it and drop it on sign-out. + +## PubMed as a search source of its own + +Web search reaches the open web through Tavily, Serper, Brave or a self-hosted +SearXNG. PubMed is a different kind of source and deserves its own tool rather +than being a site: filter on a search engine. + +- E-utilities (esearch then efetch) needs no key for modest use, and an + NCBI_API_KEY raises the rate limit. No commercial third party either way. +- It returns structured records — title, journal, year, PMID, abstract — so a + citation can be exact rather than reconstructed from a page title. That is the + real argument for a separate tool: the References section could carry a PMID. +- A separate tool, not a provider option, because the model should be able to + reach for "the literature" distinctly from "the web": one search per resource + each, and a resource may legitimately want both. +- Same guardrails as web search: admin-enabled, opt-in per generation, only the + query leaves, and hidden entirely when unavailable. diff --git a/docs/retrieval-tuning.md b/docs/retrieval-tuning.md index 9799e269..32d6fa6f 100644 --- a/docs/retrieval-tuning.md +++ b/docs/retrieval-tuning.md @@ -53,7 +53,7 @@ clamped on read so a bad value cannot break a search. | Feature | Keys | Default | Clamp | |---|---|---|---| -| Clinical Assistant | `clinical_assistant.search_limit`, `clinical_assistant.context_chars` | 8, 1400 | 3–20, 300–4000 | +| Clinical Assistant | `clinical_assistant.search_limit`, `clinical_assistant.context_chars` | 12, 1400 | 3–20, 300–4000 | | Learning Hub | `learning.search_limit`, `learning.context_chars` | 30, 2500 | 3–60, 300–8000 | | My Resources | *the same `learning.*` keys* | 30, 2500 | 3–60, 300–8000 |