This commit is contained in:
2026-02-01 17:01:21 +03:00
commit 9575eaf8ee
144 changed files with 24025 additions and 0 deletions

51
docs/cpu-time-estimate.md Normal file
View File

@@ -0,0 +1,51 @@
# Оценка времени пайплайна на CPU (Ollama, qwen3:14b)
Оценка основана на архитектуре (этапы 14 — вызовы LLM) и замере: **один блок framework на CPU ≈ 15+ минут** (до ответа или до 500).
## Время на GPU (из ARCHITECTURE_SUMMARY)
| Этап | Вызовы | Время на GPU |
|------|--------|----------------|
| 1. Анализ по блокам | 4 (framework, insights, application, limitations) | ~25 мин на главу |
| 2. Валидация блоков | 4 | ~30 сек на блок → ~2 мин |
| 2b. Финальная валидация | 1 | ~3060 сек |
| 3. Извлечение тегов | 1 | ~12 мин |
| 4. Валидация тегов | 1 | ~2030 сек |
| 6. Эмбеддинги (bge-m3) | 1 | ~515 сек |
| **Итого на главу (GPU)** | | **~611 мин** |
## Коэффициент замедления CPU vs GPU
- **«Тяжёлые» вызовы** (длинный контекст: глава + промпт): на GPU ~0.51.5 мин, на CPU по замеру **≥15 мин** → ориентир **1525 мин** на один такой вызов на CPU.
- **«Лёгкие» вызовы** (валидация, короткий контекст): на GPU ~30 сек, на CPU грубо **36 мин** (в 610 раз дольше).
Используем для расчёта:
- тяжёлый вызов (этапы 1 и 3): **20 мин** на CPU;
- лёгкий вызов (этапы 2, 2b, 4): **4 мин** на CPU;
- эмбеддинги (bge-m3): **1 мин** на CPU.
## Время на одну главу (CPU)
| Этап | Кол-во вызовов | Тип | Время (CPU) |
|------|-----------------|-----|-------------|
| 1. Анализ по блокам | 4 | тяжёлый | 4 × 20 = **80 мин** |
| 2. Валидация блоков | 4 | лёгкий | 4 × 4 = **16 мин** |
| 2b. Финальная валидация | 1 | лёгкий | **4 мин** |
| 3. Извлечение тегов | 1 | тяжёлый | **20 мин** |
| 4. Валидация тегов | 1 | лёгкий | **4 мин** |
| 5. Мерж | — | без LLM | < 1 мин |
| 6. Эмбеддинги | 1 | bge-m3 | **1 мин** |
| 78. Qdrant, Postgres | | без LLM | < 1 мин |
| **Итого на одну главу** | | | ** 126 мин 2 ч 6 мин** |
Укрупнённо: **~22.5 часа на одну главу** на CPU (с запасом на retry и вариативность).
## Время на книгу (CPU)
| Глав в книге | Оценка времени (CPU) |
|--------------|----------------------|
| 10 | ~2025 ч |
| 20 | ~4050 ч |
| 30 | ~6075 ч |
Итого: **полная книга на CPU может занимать десятки часов**; один запуск на всю книгу без GPU обычно неудобен (дни работы, риск обрыва). Имеет смысл либо ставить GPU/Apple Silicon, либо гонять по одной главе и планировать долгие прогоны.