2.5 KiB
2.5 KiB
Normalizer v2 Spec
Назначение
Normalizer v2 переводит слой нормализации с single-intent модели на decomposition-first:
raw message -> fragments + scope + flags -> deterministic routing in code
LLM в v2 не выдает финальное route-решение как источник истины. LLM возвращает структурированную семантику, а маршрут выбирается правилами в коде.
Вход
- Сырое сообщение пользователя (в т.ч. длинное, multi-intent, шумное).
Выход
- JSON по схеме
normalized_query_v2. - Ключевые части:
message_in_scope,scope_confidencefragments[]discarded_fragments[]global_notes
Fragment Contract
Каждый фрагмент содержит:
- domain gating (
domain_relevance,business_scope); - semantic hints (
entity_hints,account_hints,document_hints,register_hints); time_scope;- route-critical flags;
candidate_labels(multi-label, без жесткого single-intent);confidence.
Deterministic Routing
Код применяет правила к flags:
asks_for_exact_object_trace=true->live_mcp_drilldownasks_for_ranking_or_top=trueилиasks_for_period_summary=true->batch_refresh_then_storehas_multi_entity_scope=trueиasks_for_chain_explanation=true->hybrid_store_plus_liveasks_for_rule_check=trueи нет causal-chain ->store_feature_riskasks_for_anomaly_scan=trueбез heavy/causal ->store_feature_risk- fragment
out_of_scope->no_route - остальное in-scope ->
store_canonical
Совместимость
v1иv2поддерживаются параллельно.- Выбор схемы:
promptVersion=normalizer_v2(илиschemaVersion=v2) ->normalized_query_v2- иначе ->
normalized_query_v1
UI-диагностика v2
Добавлены диагностические представления:
- Fragment View
- Scope View
- Flags View
- Route Simulation
Ограничения этапа
- Полноценный quality-eval v2 отдельно планируется (см.
reports/v2_pilot_eval_plan.md). - Старый eval runner метрик
intent/routeориентирован на v1 и не является основным приемочным контуром для v2.