Chat Completions
POST https://api.vikey.ai/v1/chat/completionsFormat request dan response sama dengan Chat Completions OpenAI. Endpoint ini melayani semua model teks di Vikey, bukan hanya model OpenAI.
Contoh
Section titled “Contoh”curl https://api.vikey.ai/v1/chat/completions \ -H "Authorization: Bearer API_KEY_KAMU" \ -H "Content-Type: application/json" \ -d '{ "model": "anthropic/claude-sonnet-5.5", "max_tokens": 1024, "messages": [ {"role": "system", "content": "Jawab singkat dalam bahasa Indonesia."}, {"role": "user", "content": "Apa beda let dan const di JavaScript?"} ] }'Parameter yang sering dipakai
Section titled “Parameter yang sering dipakai”| Parameter | Keterangan |
|---|---|
model |
Wajib. Model id, misalnya openai/gpt-6.1-sol atau vikey/agent-gpt. |
messages |
Wajib. Array pesan dengan role (system, user, assistant, tool) dan content. |
max_tokens |
Batas token output. Juga dipakai untuk pengecekan saldo, jadi isi dengan angka yang wajar. |
stream |
true untuk Server-Sent Events. Stream diakhiri data: [DONE]. |
tools, tool_choice |
Function calling dengan format OpenAI. |
temperature, top_p, stop |
Diteruskan ke model. |
response_format |
JSON mode atau JSON schema, untuk model yang mendukung. |
Parameter lain diteruskan ke model apa adanya. Model yang tidak mendukung suatu parameter bisa mengabaikannya atau mengembalikan error.
Gambar (vision)
Section titled “Gambar (vision)”Untuk model dengan kemampuan vision, kirim gambar sebagai bagian dari content:
{ "role": "user", "content": [ {"type": "text", "text": "Ada bug apa di screenshot ini?"}, {"type": "image_url", "image_url": {"url": "https://contoh.com/error.png"}} ]}URL juga boleh berupa data:image/png;base64,....
Response
Section titled “Response”{ "id": "chatcmpl-...", "object": "chat.completion", "model": "anthropic/claude-sonnet-5.5", "choices": [ { "index": 0, "message": {"role": "assistant", "content": "let bisa diubah nilainya, const tidak..."}, "finish_reason": "stop" } ], "usage": {"prompt_tokens": 32, "completion_tokens": 58, "total_tokens": 90}}Catatan perilaku
Section titled “Catatan perilaku”tool_choicetanpatoolsdibuang otomatis supaya request tidak ditolak model.- Karakter null (
\u0000) di teks dibuang sebelum diteruskan, karena beberapa model menolaknya. max_tokensyang sangat kecil dinaikkan ke batas minimum yang diterima model.