---
name: prompt-optim
description: Оценка и оптимизация промптов по методологии PQS и экономике API-вызовов LLM. Рассчитывает токены, стоимость вызова, вероятность retry и выдаёт переписанный промпт с сравнительными таблицами.
---

# Prompt-Optim

Используй этот skill, когда нужно оценить качество промпта, посчитать стоимость вызова и месячные расходы, предсказать длину выхода, сравнить варианты до/после и выдать оптимизированную версию.

## Когда применять

- Аудит существующего промпта: «посчитай, сколько это стоит», «PQS», «оптимизируй этот промпт».
- Сравнение двух версий промпта по стоимости и качеству.
- Переписывание длинного/короткого промпта с явным обоснованием экономии.
- Подготовка production-промпта к массовому использованию (10k+ вызовов в день).

Если задача — спроектировать промпт с нуля без расчётов — используй skill `prompt`. Этот skill добавляет поверх него числовую оценку и стоимостную модель.

## Встроенные параметры методологии

### Тарифы GPT-4o

- Входные токены: `$2.50` за `1 000 000`
- Выходные токены: `$10.00` за `1 000 000`

### Оценка токенов

- Английский: 1 слово ≈ 1.5 токена
- Русский: 1 слово ≈ 2.5 токена
- Код: 1 элемент ≈ 1.0–1.5 токена

### Семь смысловых блоков

`👤 Роль`, `📦 Контекст`, `⚡ Задание`, `🚫 Ограничения`, `📐 Формат`, `📎 Образец`, `✓ Самопроверка`

### Формула PQS

```
PQS = 0.20×SCS + 0.25×DI + 0.15×II + 0.25×CSI + 0.15×SCoS
```

- `SCS` = (присутствующих блоков из 7) / 7
- `DI` = (однозначных ключевых терминов) / (всего ключевых терминов)
- `II` = (явных запретов) / (всех инструкций)
- `CSI` = (присутствующих элементов контекста из 6) / 6 — язык, версия, существующий код, архитектура, тесты, стиль
- `SCoS` = 1.00 — без противоречий; −0.30 за каждое найденное

### Шкала PQS и retry

- `0.00–0.40` → 🔴 retry ≈ 50–90%
- `0.40–0.70` → 🟡 retry ≈ 20–50%
- `0.70–0.85` → 🟢 retry ≈ 5–20%
- `0.85–1.00` → 🟢 retry < 5%

### Формула предсказания выхода

```
Выход_токены = Base × DI_mult × Format_mult × II_mult × Temp_mult × Exmpl_mult
```

**Base по типу задачи:**

- Простая функция → 400
- Функция + тесты → 600
- Эндпоинт + тесты → 800
- Код-ревью → 600
- SQL-запрос → 200
- Классификация / одно значение → 50

**Множители:**

- `DI_mult = 1.5 − (DI × 0.7)`
- `II_mult = 1.2 − (II × 0.4)`
- `Format_mult`: свободный текст → 1.00; код без объяснений → 0.80; JSON+код → 0.70; чистый JSON → 0.55; Markdown-таблица → 0.60; одно значение → 0.10
- `Temp_mult`: t=0.0 → 0.85; t=0.3 → 0.92; t=0.7 → 1.00; t=1.0 → 1.10 (по умолчанию t=0.7, если явно не указано)
- `Exmpl_mult`: нет образца → 1.00; короткий (1–2 стр) → 0.85; длинный (10+ стр) → 1.20

### Полная формула стоимости

```
C_in     = токены_входа × $2.50 / 1 000 000
C_out    = токены_выхода × $10.00 / 1 000 000
C_retry  = (1 − PQS) × (C_in + C_out) × 1.5
C_total  = C_in + C_out + C_retry
C_month  = C_total × 10 000 вызовов/день × 30 дней
```

### ROI оптимизации

```
ROI = экономия_в_месяц / дополнительная_стоимость_входа × 100%
```

## Алгоритм работы

Выполняй строго последовательно пять шагов. Для каждой строки расчёта показывай `[формула] → [подстановка] → [результат]`. Не округляй промежуточные значения; финальные суммы — до 6 знаков за вызов и до 2 знаков за месяц.

### Шаг 1. Анализ исходного промпта

1. **Подсчёт токенов.** Считай слова по языку (ru / en / код), применяй коэффициент, зафиксируй итог.
2. **Карта смысловых блоков.** Для каждого из 7 блоков: статус (✅ / ⚠️ / ❌), цитата или «—», краткий комментарий.
3. **Компоненты PQS.** Для каждого (SCS, DI, II, CSI, SCoS): перечисли обнаруженные элементы с цитатами, покажи дробь, запиши значение.
4. **Итоговый PQS.** Подставь значения в формулу; укажи зону шкалы и вероятность retry.
5. **Тип задачи и Base.** Если тип неоднозначен — зафиксируй предположение.
6. **Множители выхода.** Определи все 5 текущих множителей с кратким обоснованием каждого.

### Шаг 2. Расчёт стоимости исходного промпта

Пошагово:

- `C_in = токены_входа × $2.50 / 1 000 000`
- `Выход = Base × DI_mult × Format_mult × II_mult × Temp_mult × Exmpl_mult` (показывай перемножение пошагово)
- `C_out = Выход_токены × $10.00 / 1 000 000`
- `C_retry = (1 − PQS) × (C_in + C_out) × 1.5`
- `C_total = C_in + C_out + C_retry`
- `C_month = C_total × 10 000 × 30`

### Шаг 3. Оптимизация

1. **Таблица рычагов.** Для каждого из 5 рычагов (формат, DI, II, temperature, образец): текущее / целевое значение, ожидаемый эффект на выход (%), конкретное действие.
2. **Блоки к добавлению/усилению.** Для каждого отсутствующего/слабого — что именно добавить и почему.
3. **Языковая оптимизация.** Если промпт на русском — укажи, что перевести на английский, и оцени экономию в токенах.
4. **Полный оптимизированный промпт** в блоке кода. Все 7 блоков обязательно.
5. **Токены оптимизированного промпта** (по правилам шага 1.1).

### Шаг 4. Расчёт стоимости оптимизированного промпта

Повтори все расчёты шага 2 с новыми значениями 5 множителей и нового PQS.

### Шаг 5. Сравнительные таблицы

Три таблицы в Markdown:

- **Таблица A** — анализ и PQS (блоки и компоненты качества).
- **Таблица B** — детальный расчёт стоимости (все строки формулы).
- **Таблица C** — итоговое сравнение и экономия с ROI.

## Ограничения

- Используй **только** формулы, тарифы и числа из этого skill; не выдумывай альтернативные метрики.
- Показывай каждый промежуточный шаг расчёта.
- Temperature по умолчанию = 0.7, если явно не указана; зафиксируй допущение.
- Если тип задачи неоднозначен — выбери наиболее близкий Base и обоснуй.
- Не добавляй в оптимизированный промпт содержание, не следующее из логики задачи; не меняй суть — только структуру и форму.
- Не округляй промежуточные значения; округляй только финальные денежные суммы (6 знаков за вызов, 2 за месяц).

## Формат вывода

```
## 🔍 Шаг 1. Анализ исходного промпта
### 1.1 Подсчёт токенов
### 1.2 Карта смысловых блоков
### 1.3–1.4 Компоненты и итог PQS
### 1.5–1.6 Тип задачи и множители выхода

## 💰 Шаг 2. Стоимость исходного промпта
(расчёт построчно)

## ⚙️ Шаг 3. Оптимизация
### 3.1 Таблица рычагов оптимизации
### 3.2 Добавляемые и усиливаемые блоки
### 3.3 Языковая оптимизация
### 3.4 Оптимизированный промпт (блок кода)
### 3.5 Токены оптимизированного промпта

## 💰 Шаг 4. Стоимость оптимизированного промпта
(расчёт построчно)

## 📊 Шаг 5. Сравнительные таблицы
### Таблица A — Анализ промптов
### Таблица B — Детальный расчёт стоимости
### Таблица C — Итоговое сравнение и экономия
```

## Образец Таблицы B

Числа вымышленные, формат — целевой:

| Статья расходов | Формула | Исходный | Оптимизированный |
| --- | --- | --- | --- |
| Токены входа | слова × коэфф. | 45 | 120 |
| **C_in** | токены × $2.50/1M | $0.000113 | $0.000300 |
| Base (тип задачи) | — | 600 | 600 |
| DI_mult | 1.5 − DI×0.7 | 1.290 | 0.835 |
| Format_mult | по таблице | 1.000 | 0.700 |
| II_mult | 1.2 − II×0.4 | 1.200 | 1.000 |
| Temp_mult | t=0.7 / t=0.0 | 1.000 | 0.850 |
| Exmpl_mult | нет / короткий | 1.000 | 0.850 |
| Выход (токены) | Base × множители | 929 | 214 |
| **C_out** | выход × $10.00/1M | $0.009290 | $0.002140 |
| PQS | формула | 0.30 🔴 | 0.87 🟢 |
| Вероятность retry | 1 − PQS | 0.70 | 0.13 |
| **C_retry** | (1−PQS)×(C_in+C_out)×1.5 | $0.009820 | $0.000444 |
| **ИТОГО / вызов** | C_in + C_out + C_retry | **$0.019223** | **$0.002884** |
| **ИТОГО / месяц** | итого × 10 000 × 30 | **$5,767** | **$865** |
| **Экономия / месяц** | — | — | **$4,902 (85%)** |

## Самопроверка

Перед выдачей ответа пройди чек-лист:

1. Сумма весов PQS = `0.20 + 0.25 + 0.15 + 0.25 + 0.15 = 1.00`?
2. Все 5 множителей выхода **перемножены**, а не сложены?
3. Retry = `(1 − PQS) × (C_in + C_out) × 1.5`, а не только от `C_out`?
4. `C_month = C_total × 10 000 × 30`?
5. Оптимизированный промпт содержит все 7 блоков?
6. Temperature по умолчанию = 0.7 зафиксирована, если не указана?
7. Все предположения о типе задачи и языке явно зафиксированы?
8. Таблицы A, B, C корректно отформатированы?
9. ROI в таблице C рассчитан и выражен в процентах?
10. Числа в таблице B согласованы с пошаговыми расчётами из шагов 2 и 4?
