Enterprise Generative Search — Azure and Open Source · View 11 of 41 · Structure
Decisions
- Authorisation is resolved here, before retrieval, because the group set is an input to both the index filter and the cache key. Resolving it later would make the cache unsafe and the filter a post-processing step.
- Query rewriting uses a small open-weight model, not the synthesis model. Rewriting is a 90 ms task on the critical path of every query, and paying frontier prices for it is the commonest cost mistake in this pattern.
- Domain synonyms are curated, not learned. A learned synonym table silently changes retrieval behaviour with no review and no rollback.
The low-confidence exit
- Below 0.45 classification confidence the request leaves the pipeline and returns a clarification or a ranked result list. It costs nothing and is right more often than a guess.
- The exit rate is a watched metric: a rise usually means the corpus has a gap rather than that the classifier has degraded.
Assumptions
- Conversation state is capped at 30 turns and 30 days. Longer memory was rejected as a privacy surface with little measured benefit.
- Fourteen languages are detected; retrieval is multilingual through BGE-M3, but answers are generated in the language of the question.