Chat Completions

POST https://strix-ai.my.id/v1/chat/completions

Membuat completion untuk pesan yang diberikan, kompatibel dengan OpenAI Chat Completions.

Parameter body

  • model (string, wajib) — id model, mis. gpt-4o-mini.
  • messages (array, wajib) — daftar pesan { role, content }.
  • stream (boolean) — aktifkan streaming SSE.
  • temperature, top_p, max_tokens — parameter sampling.
  • tools, tool_choice — function calling.
  • response_format — output terstruktur (JSON mode).

Contoh respons (non-streaming)

{
  "id": "chatcmpl-...",
  "object": "chat.completion",
  "model": "gpt-4o-mini",
  "choices": [
    {
      "index": 0,
      "message": { "role": "assistant", "content": "Halo!" },
      "finish_reason": "stop"
    }
  ],
  "usage": { "prompt_tokens": 9, "completion_tokens": 3, "total_tokens": 12 }
}

Streaming

Tetapkan "stream": true. Respons berupa Server-Sent Events; setiap chunk berbentuk data: { ... } dan diakhiri data: [DONE].

curl https://strix-ai.my.id/v1/chat/completions \
  -H "Authorization: Bearer $STRIX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o-mini",
    "stream": true,
    "messages": [{"role": "user", "content": "Cerita pendek."}]
  }'

Saat streaming, usage disertakan pada chunk terakhir sehingga token dapat ditagih secara akurat.

Penagihan

Biaya = (input_tokens × harga input/1k + output_tokens × harga output/1k) / 1000, dalam credit. Saldo diperiksa sebelum permintaan dan dipotong atomik setelah selesai.