Unquant

Opening your workspace…

Unquant

Generowanie odpowiedzi na czacie

Generowanie odpowiedzi czatu zgodne z API OpenAI, z obsługą strumieniowania, obrazów, wywoływania narzędzi i sterowania rozumowaniem.

POST /v1/chat/completions

curl https://api.unquant.io/v1/chat/completions \
  -H "Authorization: Bearer $UNQUANT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"glm-5.3-flash",
       "messages":[{"role":"user","content":"Hello!"}]}'

Pola żądania

Podstawowe
modelciąg znakówWymagane

glm-5.3-flash lub qwen-3.8-flash-next.

messagestablicaWymagane

Role: system, user, assistant i tool. Treść to ciąg znaków lub tablica elementów typu text i image_url.

streamwartość logiczna

Przesyłaj odpowiedź strumieniowo jako zdarzenia wysyłane przez serwer (SSE).

stream_optionsobiekt

{"include_usage": true} dodaje końcowy fragment z liczbą tokenów.

Długość
max_tokensliczba całkowita

Maksymalna długość odpowiedzi.

max_completion_tokensliczba całkowita

Działa tak samo jak max_tokens.

Próbkowanie
temperatureliczba

Poziom losowości próbkowania.

top_pliczba

Próbkowanie ze zbioru najbardziej prawdopodobnych tokenów o określonym łącznym prawdopodobieństwie.

top_kliczba całkowita

Losuj spośród k najbardziej prawdopodobnych tokenów.

min_pliczba

Minimalne względne prawdopodobieństwo tokenu.

seedliczba całkowita

Ziarno generatora losowego zapewniające powtarzalność próbkowania.

stopciąg znaków lub tablica

Sekwencje kończące generowanie.

Powtórzenia
frequency_penaltyliczba

Obniżaj prawdopodobieństwo tokenów w zależności od częstotliwości ich występowania.

presence_penaltyliczba

Obniżaj prawdopodobieństwo tokenów, które już wystąpiły.

repetition_penaltyliczba

Kara za powtórzenia stosowana jako mnożnik.

Narzędzia
toolstablica

Funkcje, które model może wywołać, w formacie OpenAI.

tool_choiceciąg znaków lub obiekt

auto, none, required lub funkcja wskazana po nazwie.

parallel_tool_callswartość logiczna

Zezwalaj na kilka wywołań narzędzi w jednej turze.

Dane wyjściowe
response_formatobiekt

Odpowiedź w formacie JSON.

logprobswartość logiczna

Zwracaj logarytmy prawdopodobieństw tokenów.

top_logprobsliczba całkowita

Liczba alternatyw zwracanych dla każdego tokenu.

nliczba całkowita

Musi wynosić 1: jedna wygenerowana odpowiedź na żądanie.

Rozumowanie
reasoning_effortciąg znaków

Oba modele: none, low lub high; GLM-5.3-Flash przyjmuje też max.

chat_template_kwargsobiekt

Przełączniki szablonu, np. {"enable_thinking": false}.

Pozostałe pola są ignorowane.

Odpowiedź

response.choices[0].message.content

Dane o zużyciu są zwracane wyłącznie do twojego monitorowania; nigdy nie naliczamy na ich podstawie opłat.

Strumieniowanie

Przy "stream": true odpowiedź napływa jako zdarzenia wysyłane przez serwer (SSE), we fragmentach w formacie OpenAI, i kończy się komunikatem data: [DONE]. Odczytuj tekst z choices[0].delta.content.

Obrazy

Oba modele przyjmują obrazy jako elementy image_url zawierające adres URL danych zakodowanych w base64 (data:image/png;base64,..., JPEG lub WebP). Obrazy wskazane zdalnym adresem URL nie są pobierane, a takie żądania zwracają błąd 400.

{"role": "user", "content": [
  {"type": "text", "text": "Describe this image."},
  {"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,/9j/4AAQ..."}}
]}

Wywoływanie narzędzi

Przekaż tools tak samo jak w API OpenAI. Gdy model wywołuje narzędzie, odpowiedź zawiera finish_reason: "tool_calls" i message.tool_calls; uruchom narzędzie, dodaj wiadomość tool z jego wynikiem i odpowiadającym mu tool_call_id, a następnie wyślij kolejne żądanie.

Rozumowanie

Oba modele przeprowadzają rozumowanie przed udzieleniem odpowiedzi i przyjmują parametr reasoning_effort: none dla odpowiedzi bez rozumowania, low dla krótkiego rozumowania lub high dla trudniejszych problemów; GLM-5.3-Flash obsługuje też max, a domyślnie używa high. Przebieg rozumowania jest zwracany oddzielnie w reasoning_content i nigdy nie trafia do content. Ustawienia "thinking": {"type": "disabled"} oraz "chat_template_kwargs": {"enable_thinking": false} również wyłączają rozumowanie.

Równoczesne żądania

Twój plan określa, ile żądań może być obsługiwanych jednocześnie, łącznie dla wszystkich twoich kluczy. Żądanie przekraczające ten limit od razu zwraca błąd 429 i nie trafia do kolejki; nie wpływa to na trwające żądania.

Poradnik dla programistów