84 lines
5.2 KiB
YAML
84 lines
5.2 KiB
YAML
# Скелет ядра C2: generate-then-select (Р2). Тот же раннер, что C1 — различия
|
||
# только в конфиге: fan-out N кандидатов + стадия select. Фаза 0 фиксирует
|
||
# СХЕМУ (парсится и валидируется); исполнение fan-out/селекции — механика
|
||
# раннера Фазы 2 (пилот 4 рук решает, войдёт ли C2 в прод).
|
||
core: C2
|
||
version: 1
|
||
|
||
defaults:
|
||
max_output_ratio: 2.2
|
||
min_max_tokens: 2048
|
||
|
||
context:
|
||
glossary_injection: selective
|
||
glossary_token_budget: 800
|
||
cache_ttl: "5m"
|
||
# STMDepth/OverlapTokens сняты (WS2 §2а — carryover не строим).
|
||
retries:
|
||
regenerate_before_escalate: 1
|
||
# Эхо-регенерация ДО эскалации — довод, замер и ОБА режима (budget_usd>0 против =0) в
|
||
# pipeline-c1.yaml. Кратко: эхо flash стохастично по вызову (D39.61), поэтому ре-ген на той же
|
||
# модели либо заменяет хоп (дороже в 5.40 раза по леджеру coldrun-v16), либо, когда эскалация
|
||
# выключена, выкупает дыру за один дешёвый вызов.
|
||
regenerate_echo_before_escalate: 1
|
||
|
||
stages:
|
||
- name: draft
|
||
role: translator
|
||
model: deepseek-v4-flash
|
||
prompt_version: v2-reflow-nogenre # D30.2 reflow (тот же translator.md, что в C1) — label-SHA дисциплина
|
||
temperature: 0.8 # C2: кандидаты сэмплируются горячее (Р2: T=0.6–1.0)
|
||
# D39.92 / row 112: "off" on deepseek-v4-flash is an ABSENT key ⇒ vendor default `high` ⇒ empty
|
||
# content, finish=length. Rationale in pipeline-c1.yaml.
|
||
reasoning: "low"
|
||
# Judge-селектор (пара судей, шкала Комиссарова) — Фаза 2; стадия объявлена,
|
||
# чтобы схема конфига не менялась: селектор получает N кандидатов от draft.
|
||
# Судья Р4 — Gemini (нативный адаптер, Фаза 2); провизорно glm-5, чтобы скелет
|
||
# валидировался (Anthropic убран из стека). C2 в Фазе 0 не исполняется.
|
||
- name: select
|
||
role: judge
|
||
model: glm-5
|
||
# Роль judge держит промпт judge-selector.md — имя файла НЕ совпадает с ролью, поэтому здесь
|
||
# осознанный prompt_override вместо конвенции prompts/<пара>/<роль>.md (пак-15).
|
||
prompt_override: ../prompts/zh-ru/judge-selector.md
|
||
prompt_version: v0-skeleton
|
||
temperature: 0
|
||
# ⚠ DO NOT FLIP. Row 112 and the standards prompt both address this line as "the draft stage"; it is
|
||
# stage `select` (judge, glm-5). On glm-5 control=extra_body_disable, so "off" is a LIVE thinking
|
||
# disable, and low|medium|high emits nothing (no on_extra_body) ⇒ thinking back ON ⇒ ×3 timeouts.
|
||
reasoning: "off"
|
||
- name: edit
|
||
role: editor
|
||
# C2 — неисполняемый скелет Фазы 0/1 (fan-out/select — механика Ф2). Модель/бамп следуют
|
||
# за C1: дефолт-редактор по D39.22 — deepseek-v4-pro ИНТЕРИМ (glm-5 — резерв, pipeline-arm-glm.yaml).
|
||
# reasoning:off = NO-OP на dspro (ReasoningNone) → thinking ON; floor 8000 из models.yaml. (Стадию
|
||
# select выше — judge/glm-5, Gemini-слот Ф2 — НЕ трогаем: это судья, не редактор.)
|
||
model: deepseek-v4-pro
|
||
# Бамп v2-bilingual-reflow→v3-discourse-reflow (label-SHA дисциплина: тот же editor.md, что в C1 —
|
||
# вшито P1a-ядро ДИСКУРС-ПЕРЕВЁРСТКИ, D37 §2а; лейбл обязан следовать за новым SHA файла).
|
||
prompt_version: v4-discourse-reflow-nogenre
|
||
temperature: 0.4
|
||
reasoning: "off" # NO-OP на deepseek-v4-pro (ReasoningNone) → thinking ON; НЕ вооружает эхо-мину
|
||
few_shot: false # deepseek-thinking CoT сбивается ручными примерами (exp14 §2а) — как в C1/dspro-арме
|
||
|
||
gates:
|
||
coverage:
|
||
enabled: false
|
||
sent_cov_min: 0.75
|
||
min_chunk_chars: 500
|
||
regression_guard:
|
||
# D38.4 п.5 (обязательство, не исполненное к rerun2 — D39.34). C2 несёт стадию edit, значит переход
|
||
# черновик→финал у него есть и гард не вырожден. Никогда не вердикт; флип не двигает снапшот.
|
||
enabled: true
|
||
|
||
escalation:
|
||
chains:
|
||
# ⚠️ ИНТЕРИМ-ЗАГЛУШКА, НЕ контракт. Ратифицированная D3: канал A deepseek-v4-pro →
|
||
# glm-5.1 → gemini-3.1-pro, канал B grok-4.3 (эти модели/провайдеры gemini/openai в
|
||
# models.yaml не заведены — цены/ключи; заводка — отдельный шаг). Провизорный kimi-k2.6.
|
||
default: [kimi-k2.6]
|
||
adult: [kimi-k2.6]
|
||
budget_usd: 0
|
||
|
||
fanout:
|
||
candidates: 3 # C2: N кандидатов (fan-out — механика раннера, N — конфиг)
|