GPT-6 Astra у пяти зарубежных сторонних API-роутеров: сравнение ответов с официальным API


Получить доступ к API современных языковых моделей можно не только напрямую у разработчика. Сторонние API-роутеры тоже предоставляют доступ к моделям, иногда по более низкой цене, что может быть выгоднее для повседневных задач.
При работе с такими платформами возникает ключевой вопрос: совпадают ли их ответы на одну и ту же задачу с ответами официального API?
Я сравнил GPT-6 Astra у OrcaRouter, TeamoRouter, OpenRouter, Token Harbor и NaraRouter на 30 задачах с независимо проверяемыми ответами. Для каждой задачи сначала вызывался официальный API OpenAI, затем по очереди пять платформ и в конце ещё раз официальный API. Чтобы говорить о сопоставимом качестве в рамках этой проверки, все 30 ответов платформы должны совпасть с обоими официальными ответами. Тогда более низкая цена API имеет практический смысл.
Ниже я последовательно рассмотрю результаты проверки API каждой платформы, а затем разберу расхождения на конкретных задачах.
I. Методика: как сравнивались ответы
В качестве эталона для сравнения платформ я выбрал GPT-6 Astra — флагманскую модель OpenAI. Набор состоит из 30 англоязычных задач по трём фиксированным шаблонам, по 10 экземпляров каждого: подсчёт перестановок с ограничениями, трассировка состояния Python-кода и моделирование операций со шкафчиками. Во всех задачах требовалось ответить одним целым числом, что позволяет точно сравнивать итоговые ответы.
Каждый тип задач проверяет отдельный навык. В перестановках нужно одновременно учитывать соседство элементов, их порядок, фиксированные позиции и условия чётности для крайних цифр. В коде — отслеживать состояние множества и вычислять чередующуюся сумму элементов списка. В задачах со шкафчиками — выполнять переключения и присваивания в заданном порядке. Такие задачи позволяют обнаружить однозначные числовые расхождения. Для каждой задачи вызовы выполнялись в порядке, показанном на рис. 1. Порядок пяти роутеров перемешивался с заданным seed, чтобы одна и та же платформа не оказывалась постоянно первой или последней.

Запросы отправлялись через потоковый интерфейс Chat Completions. Клиент отправлял одно сообщение с ролью user, без сообщения с ролью system. Лимит вывода везде устанавливался равным 4096: для официального API использовался max_completion_tokens, для роутеров — max_tokens. Параметры temperature и reasoning_effort не передавались, поэтому на каждой стороне применялись значения по умолчанию.
Обработка результатов состояла из двух этапов: сначала проверялись полнота передачи и формат ответа, затем сравнивались целые числа. Если два официальных ответа различались, задача должна была попасть в отдельную категорию с нестабильным опорным ответом. Если они совпадали, ответ роутера сравнивался с этим значением и получал отметку «совпадение ответов» или «расхождение».
II. Результаты: реальные вызовы API пяти платформ
Ниже приведены конечные точки и идентификаторы моделей, которые фактически использовались в этом прогоне. Контрольные запросы к официальному API отправлялись на https://api.openai.com/v1/chat/completions; и в запросе, и в ответе идентификатором модели был gpt-6-astra.
OrcaRouter
Конечная точка: https://api.orcarouter.ai/v1/chat/completions. В запросе использовался идентификатор openai/gpt-6-astra, в ответе возвращался gpt-6-astra.
В каждом из трёх разделов — «Подсчёт перестановок», «Трассировка кода» и «Шкафчики» — 10/10 ответов совпали с обоими официальными ответами, всего 30/30.

TeamoRouter
Конечная точка: https://api.teamorouter.com/v1/chat/completions. И в запросе, и в ответе использовался идентификатор gpt-6-astra.
В каждом из трёх разделов — «Подсчёт перестановок», «Трассировка кода» и «Шкафчики» — 10/10 ответов совпали с обоими официальными ответами, всего 30/30.

OpenRouter
Конечная точка: https://openrouter.ai/api/v1/chat/completions. И в запросе, и в ответе использовался идентификатор openai/gpt-6-astra.
Все 30 ответов совпали с обоими официальными ответами для соответствующих задач, по 10/10 в каждом разделе.

Token Harbor
Конечная точка: https://tokenharbor.ai/v1/chat/completions. И в запросе, и в ответе использовался идентификатор gpt-6-astra. Клиент также отправлял заголовок X-TH-Cache-Control: force-refresh.
В каждом из трёх разделов 10/10 ответов совпали с обоими официальными ответами, всего 30/30.

NaraRouter
Конечная точка: https://router.bynara.id/v1/chat/completions. И в запросе, и в ответе использовался идентификатор gpt-6-astra.
Все 30 вызовов завершились успешно. В 25 случаях ответы совпали с обоими официальными ответами, в 5 обнаружены числовые расхождения. По разделам: «Подсчёт перестановок» — 6/10 совпадений, «Трассировка кода» — 9/10, «Шкафчики» — 10/10.

На рис. 2 показаны все 5 задач с расхождениями.

III. Пример расхождения 1: подсчёт перестановок
Рассмотрим core-permutation-008. В этой задаче нужно составить семизначный код, использовав каждую цифру от 1 до 7 ровно один раз. Ограничения: 1 стоит левее 5; 7 идёт непосредственно справа от 3; 6 занимает позицию 4; первая и последняя цифры чётные.
Официальный API до вызовов роутеров выдал 4, NaraRouter — 8, официальный API после — снова 4. Остальные четыре платформы также ответили 4. На рис. 3 приведены исходный текст задачи на английском языке, три исходных ответа, идентификаторы записей и префиксы хешей SHA256 файлов с необработанными ответами.

У этой задачи 4 решения, поэтому ответ NaraRouter (8) неверен.
IV. Пример расхождения 2: трассировка кода
В core-trace-007 передавалась приведённая ниже программа. Требовалось определить, какое целое число она напечатает.
def f(xs):
out = []
seen = set()
for i, x in enumerate(xs):
k = (x * 9 + i) % 7
if k in seen:
out.append(-x)
else:
seen.add(k)
out.append(x + len(seen))
return sum(out[::2]) - sum(out[1::2])
print(f([12, 6, 24, 13, 11, 20, 10, 2, 23, 4, 15, 17, 8]))
На каждой итерации программа сначала вычисляет k. Если такое значение уже встречалось, в список добавляется -x. Иначе значение сначала добавляется в множество, а в список записывается x + len(seen). Последовательное выполнение даёт:
[13, 8, 27, -13, 15, -20, -10, 7, -23, -4, -15, -17, 14]
При индексации с нуля сумма элементов с чётными индексами равна 21, а с нечётными — −39. Поэтому программа должна напечатать 21 - (-39) = 60. Оба официальных вызова и остальные четыре платформы вернули 60, NaraRouter — 83.

Сводные результаты и анализ
В ячейках на рис. 4 указаны число совпадений с обоими официальными ответами и общее число сопоставимых задач. Каждая платформа выполнила все 30 задач.

У NaraRouter расхождения обнаружены в четырёх задачах на перестановки и одной задаче на трассировку кода. В задачах со шкафчиками расхождений нет. У остальных четырёх платформ совпали 30/30 ответов.
Цена и совпадение ответов
Цены в таблице указаны в долларах за миллион токенов.
Платформа | Вход | Выход | В сравнении с официальным API OpenAI | Совпадение ответов с OpenAI |
|---|---|---|---|---|
OpenAI (официальный API) [1] | $10.00 | $50.00 | База сравнения | Официальный эталон |
OrcaRouter [2] | $10.00 | $50.00 | Та же цена | Совпадение (30/30) ✅ |
TeamoRouter [3] | $1.71 | $8.55 | Вход и выход дешевле на 82.9% | Совпадение (30/30) ✅ |
OpenRouter [4] | $10.00 | $50.00 | Та же цена | Совпадение (30/30) ✅ |
Token Harbor [5] | $10.00 | $50.00 | Та же цена | Совпадение (30/30) ✅ |
NaraRouter [6] | Около $1.41 | Около $5.94 | Вход дешевле примерно на 85.9%; Выход дешевле примерно на 88.1% | Есть различия (совпало 25/30) ❌ |
Исходные цены NaraRouter составляют Rp25,400 за миллион входных токенов и Rp106,999 за миллион выходных токенов; суммы в долларах взяты из пересчёта на странице платформы. Для TeamoRouter указаны актуальные цены со скидкой на момент проверки.
Среди 5 рассмотренных зарубежных платформ у трёх стоимость токенов совпадает с официальными тарифами OpenAI. Только у TeamoRouter и NaraRouter цены на входные и выходные токены ниже, чем у OpenAI. При этом ответы NaraRouter отличались от ответов официального API в 5/30 задачах, а ответы TeamoRouter совпали с ними в 30/30 задачах.
Поэтому при выборе зарубежного стороннего API-роутера для доступа к самой мощной модели OpenAI важно учитывать не только соотношение цены и качества, но и то, действительно ли сервис предоставляет именно ту модель, которую вы запрашиваете.
Источники цен: [1] Официальная страница модели OpenAI; [2] Страница модели на OrcaRouter; [3] Актуальные тарифы TeamoRouter; [4] Страница модели на OpenRouter; [5] Страница модели на Token Harbor; [6] Страница тарифов NaraRouter.
KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.