From c4861e17c1f4d89ea5a4520ed4415c030c7a51f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Tue, 23 Jun 2026 00:37:48 +0400 Subject: [PATCH] =?UTF-8?q?doc:=20=D0=BC=D0=BE=D0=B9=20=D0=B0=D0=BD=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=20+=20=D0=BE=D1=82=D0=BA=D1=80=D1=8B=D1=82?= =?UTF-8?q?=D1=8B=D0=B5=20=D0=B2=D0=BE=D0=BF=D1=80=D0=BE=D1=81=D1=8B=20?= =?UTF-8?q?=D0=BA=20Opus?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- History/my-analysis.md | 62 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 History/my-analysis.md diff --git a/History/my-analysis.md b/History/my-analysis.md new file mode 100644 index 0000000..9ff837d --- /dev/null +++ b/History/my-analysis.md @@ -0,0 +1,62 @@ +# Мой анализ ответов Opus (раунды 1 и 2) + +**Дата:** 2026-06-23 + +--- + +## Раунд 1: Архитектурные вопросы + +### Что взяли в работу (v1.0.108) +- Advisory lock для seq ✅ +- NFKC-нормализация name_hash ✅ +- ID-суррогаты r1..rN в промпте вместо хэшей ✅ +- Обогащение ops именами из spec_current ✅ + +### Что отложили +- Параллельные вызовы LLM — семантически нельзя (допники кумулятивны) +- Таблица-счётчик для seq — advisory lock проще +- Эмбеддинги — NFKC достаточно +- Мульти-юзеры — преждевременно + +--- + +## Раунд 2: Видение и неизведанное + +### Что можно сделать прямо сейчас (v1.0.109) + +| # | Что | Почему | +|---|-----|--------| +| 1 | `source_document_id` FK в spec_events | Костяк provenance. Связь интерпретации с исходным документом | +| 2 | `source_quote` в каждой op от LLM | Точная цитата из документа. Юрист видит источник | +| 3 | `confidence` 0.0-1.0 в каждой op | Self-reported моделью. Ниже 0.7 → перепроверить | +| 4 | `prompt_version` в spec_events | Какая версия промпта дала этот результат | +| 5 | `raw_llm_response` JSONB | Полный ответ модели для аудита | + +### Что отложить на потом + +| # | Что | Когда | +|---|-----|-------| +| 1 | Temporal UI (ползунок по датам) | После provenance, когда продукт показываем | +| 2 | Human-correction как событие | После базового UI | +| 3 | Confidence-gating (N прогонов → консенсус) | Когда точность станет критичной | +| 4 | Prompt CI (тесты для промптов) | Когда будет >1 версии промпта | +| 5 | Двухслойный лог (факты vs интерпретация) | v2.0 | +| 6 | Эмбеддинги (pgvector) | Только при доказанных промахах NFKC | + +--- + +## Архитектурные принципы (выработанные) + +1. **Сначала данные, потом UI.** source_document_id + source_quote дают основу. Красивый UI — потом. +2. **Минимальными средствами.** Одна FK-колонка вместо двухслойного лога. Self-confidence вместо сложного consensus. +3. **Домен решает.** Облачный провайдер + ЦОД — названия услуг копируются дословно. NFKC достаточно. +4. **Бесплатная LLM меняет экономику.** Можно делать N прогонов, не считая токены. Но лучше умно (только low-confidence). + +--- + +## Открытые вопросы к Opus (будущие раунды) + +1. **Prompt engineering для source_quote:** как попросить LLM вернуть точную цитату? Нужен пример промпта. +2. **Confidence calibration:** насколько self-reported confidence от gpt-oss-120b коррелирует с реальной точностью? Стоит ли калибровать? +3. **Temporal UI реализация:** как технически строить «спецификацию на дату» из spec_events? Реплей с фильтром по seq? +4. **Масштабирование LLM:** когда 120B станет узким горлышком, какие варианты? Fine-tune? Distill? Переход на большую модель?