3.2 KiB
3.2 KiB
Оценка времени пайплайна на CPU (Ollama, qwen3:14b)
Оценка основана на архитектуре (этапы 1–4 — вызовы LLM) и замере: один блок framework на CPU ≈ 15+ минут (до ответа или до 500).
Время на GPU (из ARCHITECTURE_SUMMARY)
| Этап | Вызовы | Время на GPU |
|---|---|---|
| 1. Анализ по блокам | 4 (framework, insights, application, limitations) | ~2–5 мин на главу |
| 2. Валидация блоков | 4 | ~30 сек на блок → ~2 мин |
| 2b. Финальная валидация | 1 | ~30–60 сек |
| 3. Извлечение тегов | 1 | ~1–2 мин |
| 4. Валидация тегов | 1 | ~20–30 сек |
| 6. Эмбеддинги (bge-m3) | 1 | ~5–15 сек |
| Итого на главу (GPU) | ~6–11 мин |
Коэффициент замедления CPU vs GPU
- «Тяжёлые» вызовы (длинный контекст: глава + промпт): на GPU ~0.5–1.5 мин, на CPU по замеру ≥15 мин → ориентир 15–25 мин на один такой вызов на CPU.
- «Лёгкие» вызовы (валидация, короткий контекст): на GPU ~30 сек, на CPU грубо 3–6 мин (в 6–10 раз дольше).
Используем для расчёта:
- тяжёлый вызов (этапы 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 мин |
| 7–8. Qdrant, Postgres | — | без LLM | < 1 мин |
| Итого на одну главу | ≈ 126 мин ≈ 2 ч 6 мин |
Укрупнённо: ~2–2.5 часа на одну главу на CPU (с запасом на retry и вариативность).
Время на книгу (CPU)
| Глав в книге | Оценка времени (CPU) |
|---|---|
| 10 | ~20–25 ч |
| 20 | ~40–50 ч |
| 30 | ~60–75 ч |
Итого: полная книга на CPU может занимать десятки часов; один запуск на всю книгу без GPU обычно неудобен (дни работы, риск обрыва). Имеет смысл либо ставить GPU/Apple Silicon, либо гонять по одной главе и планировать долгие прогоны.