Summary
- OpenAI обещает для Batch API цену на 50% ниже синхронного вызова и 24-часовое окно. Когда пакет истекает, токены, потраченные на выполненные запросы, всё равно включаются в счёт.
- Незавершённые запросы отменяются и попадают в файл ошибок с кодом
batch_expired. Уникальныйcustom_idсвязывает входной файл с готовыми ответами и ошибками, показывая точный остаток работы.
Снизить цену одной операции легко. Снизить цену недоделанного проекта сложнее.
Batch API принимает файл JSONL с набором запросов и обрабатывает их асинхронно. В официальном руководстве OpenAI указывает скидку 50% по сравнению с синхронным API, отдельный пул лимитов скорости и срок обработки до 24 часов. Для массовой классификации, оценки моделей или создания эмбеддингов это привлекательный режим. Но организация обычно покупает не число отдельных ответов, а завершённый набор данных, с которым можно продолжать работу.
Правило истечения показывает разницу. Пакет, который не успел завершиться, получает статус expired. Готовые ответы сохраняются в выходном файле. Оставшиеся запросы отменяются и записываются в файл ошибок как batch_expired. За токены, использованные готовыми запросами, OpenAI выставляет плату. Один и тот же момент закрывает очередь и оставляет открытым обязательство заказчика перед собственным проектом.
Если классификация охватила лишь часть документов, итоговый каталог ещё нельзя считать законченным. Если из проверки выпали случаи, среднее по оставшимся результатам может исказить решение. Поставщик видит выполненные единицы вычислений; покупатель видит пробелы в своём результате. Скидка применяется к цене первой величины. Чтобы понять вторую, нужно отказаться от соблазна смотреть только на общий процент готовности.
Инструмент для этого уже предусмотрен. Каждая строка входного файла получает уникальный custom_id. OpenAI предупреждает, что строки ответа могут идти не в том порядке, в котором отправлялись запросы. Сопоставление по номеру строки способно прикрепить ответ к чужому документу. Надёжный учёт сохраняет список входных ID, затем сверяет его отдельно с выходным файлом и файлом ошибок. Незаполненные позиции превращаются в конкретный список для следующего запуска.
Объект Batch содержит и сводные сигналы: статус, expires_at и expired_at, идентификаторы двух файлов, request_counts с числом всех, завершённых и неудачных запросов. Для соответствующих пакетов доступны показатели расхода токенов. Счётчики показывают масштаб разрыва. Списки custom_id показывают, какие записи затронуты. Для владельца бюджета это разные виды доказательства.
После истечения можно снова отправить весь исходный файл. Тогда уже отвеченные строки войдут в новую обработку. Можно составить новую очередь только из оставшихся ID и платить за попытку закрыть конкретный пробел. Публичные документы не содержат счёта отдельного клиента или его истёкшего пакета. Реальную сумму установили бы его выходные и ошибочные записи вместе с тарифом использованной модели.
Половинная цена реальна как правило тарифа. Полная готовность результата — отдельный показатель, который клиент должен уметь проверить. Для закупки важен не красивый процент скидки, а ответ на вопрос, кто после истечения срока назовёт недостающие записи и оплатит их завершение.
Sources
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров





