Files
chunking_strategies_evaluation/docs/adr/0019-active-embedding-model-global.md

23 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Active Embedding Model is global, not an Experiment axis
**Status:** Superseded by [ADR-0024](0024-boundary-vs-corpus-embedding-models.md) — single Active Embedding Model replaced by **Boundary** + **Corpus** roles (query locked to Corpus).
Original decision retained for history:
The platform compares **Strategies** under controlled conditions. Embedding Model is a confounder, not a second experiment dimension: one **Active Embedding Model** applies to process, query, and new Experiments. The operator switches it from Admin among entries in a static **Embedding Model Registry** (Provider, stable id, vector dimension). Selection persists across restarts (config supplies the default only when unset). Every Experiment records which Embedding Model produced it; historical rows without provenance are treated as the default cloud model. A process, query, or Experiment **snapshots** the Active Embedding Model at start so a mid-flight Admin switch cannot mix models inside one operation.
## Considered Options
- **Global Active Embedding Model** — chosen; fair Strategy comparisons; A/B models via separate Experiments
- **Embedding Model as Experiment axis** — Strategy × model cross-product; richer science, much heavier data model/UI
- **Per-run choice with no Experiment coupling** — flexible, invites silent unfair comparisons
Switcher: **Admin UI** (not env-only, not read-only status). Catalog: **static registry** (not live Ollama discovery, not free-form). Local Provider host: **`OLLAMA_BASE_URL` in config only**. Cost Estimator: **$0 embedding line when Active Embedding Model is Local**; LLM costs unchanged. This carve-out does not reopen general `/admin/config` (ADR-0007 deferred).
## Consequences
- Introduce Provider adapters (Cloud OpenAI, Local Ollama) behind one embed API; callers bind a registry entry for the operation
- Dashboard Admin gains an Embedding Model switcher; Benchmarks/reports must show Experiment provenance
- `docs/out-of-scope-v1.md` “no embedding model from dashboard” is superseded for this focused control only
- Local Nomic registry entries use task prefixes (`search_document` / `search_query`); Cloud OpenAI entries do not