MớiTrỏ bất kỳ agent nào về UberLLM — một key, mọi model, bằng giá niêm yết hoặc rẻ hơn.
UberLLM

Streaming

Cả hai giao diện OpenAI (/v1/chat/completions) và Anthropic (/v1/messages) đều hỗ trợ streaming qua Server-Sent Events. Responses API (/v1/responses) truyền phát các sự kiện response.* riêng của nó; xem Responses API. Streaming là tùy chọn mặc định được khuyến nghị cho bất kỳ trường hợp nào có prompt dài, output dài, hoặc giới hạn token cao — nó giúp tránh lỗi hết thời gian chờ yêu cầu và cho phép bạn hiển thị các token ngay khi chúng đến.

OpenAI-style streaming

curl -N https://api.uberllm.dev/v1/chat/completions \
  -H "Authorization: Bearer $UBERLLM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek/deepseek-v4-flash",
    "stream": true,
    "messages": [{"role": "user", "content": "Count to five, one per line."}]
  }'

Phản hồi là một chuỗi gồm data: dòng, mỗi dòng là một chat completion chunk, kết thúc bằng data: [DONE].

from openai import OpenAI

client = OpenAI(base_url="https://api.uberllm.dev/v1", api_key="ull_...")

with client.chat.completions.create(
    model="deepseek/deepseek-v4-flash",
    stream=True,
    messages=[{"role": "user", "content": "Write a short poem."}],
) as stream:
    for chunk in stream:
        delta = chunk.choices[0].delta.content
        if delta:
            print(delta, end="", flush=True)

Hạch toán sử dụng

UberLLM chèn stream_options: {"include_usage": true} cho các upstream hỗ trợ nó, nên chunk cuối cùng mang một object usage với số lượng token của prompt và completion, và cost_usd: chi phí của yêu cầu này, tính bằng đô la Mỹ (số tiền nhà cung cấp đã tính phí cho nó). Khi upstream không gửi chunk sử dụng nào, UberLLM sẽ thêm một chunk trước data: [DONE]. Trên /v1/messages, chi phí nằm trong usage của sự kiện message_delta.

Yêu cầu của bạn được thanh toán theo chi phí mà marketplace báo cáo cho cuộc gọi đó; khi thông tin sử dụng bị thiếu, gateway sẽ chuyển sang ước tính của tokenizer và gắn cờ yêu cầu là đã ước tính trong activity log của bạn. Các headers của một stream được gửi trước khi chi phí được biết, nên một stream không có header X-UberLLM-Cost-USD: đọc usage.cost_usd.

Hủy bỏ

Nếu bạn ngắt kết nối giữa chừng khi đang truyền dữ liệu, cổng kết nối sẽ hủy yêu cầu gửi lên và chỉ tính phí cho số lượng token thực tế đã được truyền đi. Bạn sẽ không bao giờ bị tính phí cho một phản hồi hoàn chỉnh mà bạn chưa nhận được, và không có số dư dự trữ nào bị kẹt lại.

Keep-alives

Cổng gửi một thông báo : ping ngay lập tức khi kết nối và các keep-alives định kỳ, để các luồng chạy dài không bị ngắt bởi thời gian chờ không hoạt động của proxy.