weightsapi.ИНФЕРЕНЦИЯКонсоль
Навигация
Потоковая передача

Потоковая передача

Потребляйте события, отправляемые сервером, и обрабатывайте обрывы соединения.

Включите SSE#

Установите stream: true и stream_options: { include_usage: true }. Читайте каждую строку data как JSON; добавляйте choices[0].delta.content, когда он присутствует. Не считайте, что сетевой фрагмент является одним событием.

Завершение и использование#

finish_reason закрывает выбор; финальный кадр использования может прийти отдельно. Останавливайтесь только на [DONE] или терминальной ошибке. Сохраняйте итоги использования, а не оценивайте токены по символам.

Прерванные запросы#

Шлюз сохраняет расчётное резервирование до тех пор, пока не станет доступно подтверждённое использование у провайдера. Обрыв соединения в браузере не является доказательством того, что провайдер прекратил генерацию. Если итоговое использование отсутствует, резервирование остаётся в ожидании сверки, а не молча списывает оценку.

Доставка в браузер#

Держите API-ключ на сервере. Используйте собственную конечную точку того же происхождения для пересылки SSE в браузер; см. рецепт потоковой передачи в браузер.

Пример запроса

curl https://weightsapi.com/v1/chat/completions \
  -H "Authorization: Bearer $WEIGHTSAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "Qwen/Qwen3-32B",
  "messages": [
    {
      "role": "user",
      "content": "Hello!"
    }
  ],
  "stream": true
}'