← Все статьи

Cost-per-Outcome маршрутизация ИИ: как перейти от цены за токен к полезному интеллекту на доллар

Цена за токен — неверная метрика для маршрутизации ИИ в продакшене. Мы разбираем scorecard Useful Intelligence per Dollar от OpenAI и показываем, как применить cost-per-outcome подход к конфигурации routing — с формулами, деревом решений для выбора модели и FAQ с практическими вопросами, которые реально задают операторы gateway.

· TheRouter

Модель с ценой $0.50 за миллион input-токенов выглядит дешевле, чем модель за $3.00 — пока дешёвая модель не потребует трёх попыток для правильного ответа, а дорогая не справится с первого раза. Если учесть повторные попытки, проверку человеком и потраченные вычисления, «дорогая» модель часто обходится дешевле за каждую успешную задачу.

В этом суть cost-per-outcome (CPO) routing: оптимизировать полную стоимость получения успешного результата, а не цену за единицу токена. OpenAI формализовали эту идею в июле 2026 года через scorecard Useful Intelligence per Dollar. Мы подготовили этот справочник, чтобы перевести фреймворк в практические решения по routing.

Почему цена за токен — неправильная метрика routing

OpenAI-совместимость означает, что провайдер предоставляет endpoint chat-completions, чей контракт запроса и ответа достаточно близок к API OpenAI, чтобы немодифицированный вызов OpenAI SDK работал после замены трёх значений: API key, base URL, название модели. Минимальная поверхность на практике —POST /v1/chat/completions с messages, model и потоковым ответом в форме OpenAI.

Цена за токен показывает стоимость сырья, а не готового продукта.

Конкретный пример: мы направили задачу code review на две разные модели.

МетрикаМодель A ($0.50/M input)Модель B ($3.00/M input)
Input-токенов за попытку2 0002 000
Output-токенов за попытку1 500800
Цена output$1.50/M tokens$12.00/M tokens
Среднее число попыток до прохождения проверки3,21,1
Стоимость токенов / успешная задача$0,0104$0,0132
Время проверки человеком (мин)82
Стоимость проверки ($50/час)$6,67$1,67
Полная стоимость успешной задачи$6,68$1,68

Модель B дороже за токен в 6 раз, но стоимость одного успешного результата в 4 раза ниже. Сравнение цен за токен изначально задавало неправильный вопрос.

Этот паттерн повторяется в каждой нагрузке, которую мы измеряли. «Налог на многословие» — дешёвые модели в среднем генерируют на 15–20% больше output-токенов для передачи той же информации — размывает преимущество в цене за единицу. Циклы повторных попыток усугубляют проблему. А время проверки человеком, которое почти никогда не фигурирует в таблицах стоимости токенов, зачастую доминирует в общих затратах.

Четыре метрики: scorecard Useful Intelligence per Dollar от OpenAI

CFO OpenAI Sarah Friar предложила scorecard, построенный вокруг четырёх вопросов. Мы адаптировали каждую метрику для операторов gateway, которым нужно принимать решения по routing.

1. Сколько полезной работы выполнено

Что измеряет: Сколько задач ИИ фактически завершил с требуемым уровнем качества?

Токены создают ценность только тогда, когда превращаются в работу, которую люди могут использовать. Для команды поддержки «готово» означает решённую проблему клиента. Для инженерной команды — код, прошедший тесты. Для юридической — вовремя проверенный контракт.

Как отслеживать: Определите «готово» для каждого workflow. Измеряйте завершения в системе, где выполняется работа — тикет-система, CI pipeline, система управления документами — а не в ИИ-дашборде.

Следствие для routing: Модель с более высоким уровнем завершения задач на вашей конкретной нагрузке может оправдать более высокую цену за токен. Уровень завершения зависит от типа задачи, поэтому измеряйте по-workflow, а не как глобальное среднее.

2. Стоимость успешной задачи

Что измеряет: Полную стоимость завершения одной единицы работы на требуемом уровне качества.

Формула:

CPO = (Стоимость токенов + Стоимость retrieval + Стоимость оркестрации + Стоимость проверки) / Принятые результаты

Где:

  • Стоимость токенов = (input-токены × цена input + output-токены × цена output) × среднее число попыток
  • Стоимость retrieval = вызовы embedding + запросы к vector DB на задачу
  • Стоимость оркестрации = вычисления gateway, логирование, очереди
  • Стоимость проверки = время проверки × часовая ставка × доля эскалации

Следствие для routing: Именно это число должно определять выбор модели. Сравнивайте CPO между провайдерами, а не цены за токен. Frontier-модель вроде GPT-5.6 Sol или Claude Opus 4 может дать лучший CPO для сложных задач, несмотря на премиальную цену — потому что ей нужно меньше попыток и проверок.

3. Надёжность

Что измеряет: Как часто output ИИ соответствует требованиям без вмешательства человека.

Отслеживайте три исхода на задачу:

  • Готов к использованию: Output сразу соответствует требованиям
  • Нужна коррекция: Потребовалась повторная попытка или правка человеком
  • Нужна эскалация: Человеку пришлось вмешаться и завершить работу

Следствие для routing: Надёжность напрямую влияет на CPO. Модель с 90% готовности имеет 10% потерь; с 70% — 30% потерь. Когда вы направляете сложные задачи на более надёжные (часто более дорогие) модели, сокращение потерь обычно перевешивает более высокую цену за токен.

4. Отдача от масштабирования

Что измеряет: Даёт ли каждый потраченный доллар на ИИ больше ценности при росте объёмов.

Отслеживайте один и тот же workflow во времени:

  • Снижается ли CPO по мере накопления опыта команды с prompt и routing?
  • Улучшает ли провайдер модель без пропорционального повышения цен?
  • Дают ли кэширование и routing-оптимизации кумулятивный эффект?

Следствие для routing: Провайдеры с prompt caching (OpenAI, Anthropic, DashScope) получают структурное преимущество при масштабировании: повторяющийся контекст стоит меньше за каждый вызов. Routing через gateway с поддержкой кэширования усиливает этот эффект.

Token routing vs. Outcome routing: полное сравнение

АспектToken routingOutcome routing
Основная метрика$/M tokens (input + output)$/успешное завершение задачи
Выбор моделиПобеждает самая дешёвая за токенПобеждает с наименьшим CPO по типу задачи
Логика fallbackRoute на следующего самого дешёвого провайдераRoute на следующего самого надёжного провайдера
Трекинг затратРасход токенов по моделиРасход по результатам workflow
Скрытые затратыНе учтеныПовторы, проверка человеком, оркестрация
Цель оптимизацииМинимизировать расход токеновМаксимизировать полезную работу на доллар
РискНезаметная деградация качестваТребуется измерение результатов
Подходит дляОднородные, высокочастотные, низкорисковые задачиСмешанные нагрузки с различной сложностью

Дерево решений: когда что оптимизировать

Используйте это дерево решений для выбора стратегии routing по каждому workflow:

Шаг 1 — Output задачи используется напрямую, без проверки человеком?

  • Да → Оптимизируйте надёжность (выберите модель с наивысшим % готовности)
  • Нет → Перейдите к шагу 2

Шаг 2 — Задача высокочастотная (>1 000 вызовов/день)?

  • Да → Перейдите к шагу 3
  • Нет → Оптимизируйте CPO (выберите модель с наименьшей полной стоимостью принятого результата)

Шаг 3 — Задача однородная (один формат, предсказуемая сложность)?

  • Да → Оптимизируйте throughput + стоимость токенов (более дешёвая и быстрая модель, скорее всего, достаточна)
  • Нет → Оптимизируйте CPO с tiered routing (простые варианты — на дешёвую модель, сложные — на мощную)

Шаг 4 — Workflow выигрывает от prompt caching?

  • Да → Отдайте приоритет провайдерам с поддержкой кэширования (OpenAI, Anthropic, DashScope) и учтите экономию от cache hit в CPO
  • Нет → Сравнивайте CPO по прайс-листу

Практическая реализация: настройка routing на основе результатов

Переход от token routing к outcome routing не требует новой инфраструктуры, но требует новых измерений и другой логики routing.

Шаг 1: Инструментируйте baseline

Перед изменением правил routing измерьте текущий CPO для ваших топ-3 workflow:

from openai import OpenAI

client = OpenAI(
    base_url="https://api.therouter.ai/v1",  # или ваш gateway
    api_key="your-key"
)

import time

def measure_task(prompt, expected_schema):
    attempts = 0
    total_tokens = 0
    start = time.time()

    while attempts < 5:
        attempts += 1
        response = client.chat.completions.create(
            model="openai/gpt-5.5",
            messages=[{"role": "user", "content": prompt}],
        )
        total_tokens += response.usage.total_tokens
        result = response.choices[0].message.content

        if validate(result, expected_schema):
            return {
                "success": True,
                "attempts": attempts,
                "total_tokens": total_tokens,
                "latency_ms": (time.time() - start) * 1000,
            }

    return {"success": False, "attempts": attempts, "total_tokens": total_tokens}

Шаг 2: Сравните CPO между моделями

Запустите один и тот же набор задач на нескольких моделях и рассчитайте CPO для каждой:

models_to_test = [
    "openai/gpt-5.5",        # Frontier
    "openai/gpt-5.4-mini",   # Mid-tier
    "deepseek/deepseek-v4-flash", # Cost-efficient
    "qwen/qwen3.7-max",      # Китайский провайдер
]

for model in models_to_test:
    results = [measure_task(prompt, schema) for prompt in test_prompts]
    successes = [r for r in results if r["success"]]
    total_cost = sum(r["total_tokens"] * get_price(model) for r in results)
    cpo = total_cost / len(successes) if successes else float("inf")
    print(f"{model}: CPO=${cpo:.4f}, success_rate={len(successes)/len(results):.1%}")

Шаг 3: Настройте tiered routing по данным CPO

Имея данные CPO, настройте routing так, чтобы задачи шли на модель с наименьшим CPO для каждого типа задачи — не на самую дешёвую по токенам.

Для сложных задач рассуждения frontier-модель (Claude Opus, GPT-5.6 Sol) обычно даёт наименьший CPO, несмотря на более высокую цену за токен. Для простой классификации или извлечения данных экономичная модель (DeepSeek V4, Qwen3-7-Plus) побеждает по CPO, потому что задача не выигрывает от более сильного reasoning.

Шаг 4: Добавьте fallback routing для надёжности

Fallback routing напрямую улучшает CPO за счёт сокращения неудачных попыток. Когда основная модель ограничена по rate limit или недоступна, запрос fallback на резервную модель вместо отказа и повторной попытки.

Настройте цепочки fallback по рангу CPO, а не по цене. Если модель A имеет наименьший CPO, но стала недоступна, fallback на модель B (второй CPO), а не на модель C (самая дешёвая за токен).

Налог на многословие и его значение для routing

Часто упускаемый фактор затрат: дешёвые модели генерируют больше токенов для передачи той же информации. Данные из production-развёртываний показывают, что бюджетные модели в среднем производят на 15–20% больше output-токенов для эквивалентных задач.

Этот «налог на многословие» разъедает преимущества цены за единицу:

СценарийДешёвая модельМощная модель
Цена output$1.50/M tokens$12.00/M tokens
Output-токенов для той же задачи1 200800
Стоимость output на задачу$0,0018$0,0096
Соотношение1×5,3×

Мощная модель дороже по output-токенам в 5,3 раза — но если она справляется за 1 попытку вместо 3, реальная стоимость составляет 5,3× / 3 = 1,8× при трети latency. Добавьте экономию на проверке человеком, и мощная модель часто побеждает.

Prompt Caching и преимущества масштаба

Провайдеры с prompt caching получают структурное преимущество CPO при масштабировании. Когда повторяющийся контекст (системные промпты, few-shot примеры, retrieved-документы) кэшируется, последующие вызовы обходятся в долю стоимости input-токенов.

ПровайдерМеханизм кэшированияСкидка при cache hitTTL кэша
OpenAIАвтоматический (prefix match)50% скидка на input5–60 мин
AnthropicЯвный (cache_control breakpoints)90% скидка на inputПо умолчанию 5 мин
DashScopeЯвный (context caching API)~85% скидка на inputНастраиваемый
DeepSeekАвтоматический (prefix match)~90% скидка на inputПеременный

Для высокочастотных workflow с общим контекстом кэширование может снизить стоимость input на 50–90%, напрямую уменьшая числитель в формуле CPO. Подробности — в нашем руководстве по prompt caching.

FAQ

Что такое cost-per-outcome в маршрутизации ИИ?

Cost-per-outcome (CPO) измеряет полную стоимость получения одного успешного результата ИИ-задачи — включая токены, повторные попытки, проверку человеком и накладные расходы на оркестрацию — а не только цену за токен. Это метрика, которая напрямую привязана к бизнес-ценности: вас интересует, сколько стоит успешный результат, а не сколько стоит токен.

Почему цена за токен вводит в заблуждение при оптимизации затрат на ИИ?

Более дешёвая по токенам модель может требовать больше попыток, генерировать более многословный вывод или нуждаться в большей коррекции от человека. Полная стоимость успешного результата с «дешёвой» моделью может оказаться выше, чем с более мощной моделью, которая справляется с первой попытки. Scorecard Useful Intelligence per Dollar от OpenAI прямо утверждает: «самая низкая цена за токен не всегда даёт самую низкую стоимость результата».

Как конфигурация routing влияет на cost-per-outcome?

Routing определяет, какая модель обрабатывает каждый запрос. Направляя простые задачи на дешёвые модели, а сложные — на более мощные, вы минимизируете CPO по всей нагрузке. Fallback routing добавляет надёжность: когда основная модель недоступна, запросы автоматически переключаются на резервную, сокращая число неудачных попыток. Итоговый CPO ниже, чем при стратегии с одной моделью.

Что такое фреймворк Useful Intelligence per Dollar от OpenAI?

CFO OpenAI Sarah Friar предложила этот scorecard 17 июля 2026 года. Он измеряет четыре аспекта: (1) объём полезной выполненной работы, (2) стоимость каждой успешной задачи, (3) надёжность результата, (4) отдачу от масштабирования. Фреймворк переосмысляет ROI ИИ от затрат на инфраструктуру к ценности бизнес-результатов, утверждая, что одна только цена за токен не может отразить, приносят ли расходы на ИИ реальную отдачу.

Как рассчитать cost-per-outcome для моих ИИ-нагрузок?

CPO = Общая стоимость workflow / Количество принятых результатов

Общая стоимость workflow = токены модели (input + output, включая повторные попытки) + затраты на retrieval/embedding + накладные расходы на оркестрацию + время проверки человеком × часовая ставка. Принятыми считаются только результаты, прошедшие проверку качества. Задача, потребовавшая 3 попытки, учитывает стоимость токенов всех 3 попыток в числителе, но только 1 в знаменателе.

Может ли fallback routing снизить cost-per-outcome?

Да. Fallback routing направляет запросы на резервную модель, когда основная недоступна или ограничена по rate limit. Это сокращает количество неудачных попыток и повторов, что напрямую снижает штраф в знаменателе CPO. Настраивайте цепочки fallback по рангу CPO, а не по цене за токен. Подробности — в нашем руководстве по fallback routing.

Как TheRouter поддерживает outcome-based routing?

TheRouter маршрутизирует OpenAI-совместимые запросы через настроенных провайдеров и поддерживает routing и fallback между провайдерами/моделями, когда это поддерживается в продуктовых путях. Вы можете настроить основную и fallback-модели для каждого маршрута, реализуя tiered routing на основе ваших измерений CPO. В сочетании с unified billing это позволяет отслеживать затраты по workflow, а не по сырому расходу токенов.

Источники

Все утверждения в этом посте подкреплены источниками:

Помощь и контакты