curl -X POST https://api-llm.sunra.ai/v1/chat/completions \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/chat/completions",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is the capital of France?"}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "What is the capital of France?" }
]
})
});
const data = await response.json();
console.log(data);
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677652288,
"model": "openai/gpt-4o",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "The capital of France is Paris."
},
"finish_reason": "stop",
"logprobs": null
}
],
"system_fingerprint": "fp_44709d6fcb",
"usage": {
"prompt_tokens": 25,
"completion_tokens": 8,
"total_tokens": 33
}
}
LLM
Create a chat completion
POST
/
v1
/
chat
/
completions
curl -X POST https://api-llm.sunra.ai/v1/chat/completions \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/chat/completions",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is the capital of France?"}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "What is the capital of France?" }
]
})
});
const data = await response.json();
console.log(data);
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677652288,
"model": "openai/gpt-4o",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "The capital of France is Paris."
},
"finish_reason": "stop",
"logprobs": null
}
],
"system_fingerprint": "fp_44709d6fcb",
"usage": {
"prompt_tokens": 25,
"completion_tokens": 8,
"total_tokens": 33
}
}
Mengirim permintaan respons model untuk percakapan chat yang diberikan. Mendukung mode streaming dan non-streaming. Kompatibel dengan format OpenAI Chat Completions API.
Autentikasi
string
wajib
Bearer token. Gunakan kunci API Anda sebagai bearer token di header Authorization.Format:
Bearer <SUNRA_KEY>Permintaan
Endpoint ini menerima sebuah objek.object[]
wajib
Daftar pesan untuk percakapan.
Tampilkan properties
Tampilkan properties
string
wajib
Peran penulis pesan. Nilai yang didukung:
system, user, assistant, tool.string | object[]
wajib
Konten pesan. Dapat berupa string atau array bagian konten untuk input multimodal.
string
Nama opsional untuk peserta. Memberikan informasi kepada model untuk membedakan antara peserta dengan peran yang sama.
object[]
Panggilan alat yang dihasilkan oleh model, seperti panggilan fungsi. Hanya ada dalam pesan
assistant.string
Panggilan alat yang direspons oleh pesan ini. Hanya ada dalam pesan
tool.string
wajib
Model yang digunakan untuk penyelesaian. Jelajahi model yang tersedia di sunra.ai/models.
boolean
default:false
Jika diatur ke
true, delta pesan parsial akan dikirim sebagai server-sent events (SSE).integer
Jumlah maksimum token yang akan dihasilkan dalam penyelesaian. Total panjang token input dan token yang dihasilkan dibatasi oleh panjang konteks model.
number
default:1
Temperatur sampling antara 0 dan 2. Nilai lebih tinggi seperti 0.8 membuat output lebih acak, nilai lebih rendah seperti 0.2 membuatnya lebih terfokus dan deterministik.
number
default:1
Parameter nucleus sampling (0-1). Alternatif untuk temperature sampling di mana model mempertimbangkan token dengan massa probabilitas top_p.
number
default:0
Angka antara -2.0 dan 2.0. Nilai positif menghukum token baru berdasarkan frekuensi kemunculannya dalam teks sejauh ini, mengurangi kemungkinan model mengulangi baris yang sama secara verbatim.
number
default:0
Angka antara -2.0 dan 2.0. Nilai positif menghukum token baru berdasarkan apakah mereka muncul dalam teks sejauh ini, meningkatkan kemungkinan model membahas topik baru.
string | string[]
Hingga 4 urutan di mana API akan berhenti menghasilkan token lebih lanjut.
integer
default:1
Berapa banyak pilihan penyelesaian chat yang dihasilkan untuk setiap pesan input.
boolean
default:false
Apakah akan mengembalikan probabilitas log dari token output. Jika true, mengembalikan probabilitas log dari setiap token output yang dikembalikan dalam konten pesan.
integer
Bilangan bulat antara 0 dan 20 yang menentukan jumlah token paling mungkin yang dikembalikan di setiap posisi token.
logprobs harus diatur ke true jika parameter ini digunakan.object
integer
Jika ditentukan, sistem akan melakukan upaya terbaik untuk melakukan sampling secara deterministik, sehingga permintaan berulang dengan seed dan parameter yang sama akan mengembalikan hasil yang sama.
object[]
Daftar alat yang dapat dipanggil oleh model. Saat ini, hanya fungsi yang didukung sebagai alat.
Tampilkan properties
Tampilkan properties
string
wajib
Tipe alat. Saat ini, hanya
function yang didukung.object
wajib
string | object
Mengontrol alat mana (jika ada) yang dipanggil oleh model.
none berarti model tidak akan memanggil alat apa pun. auto berarti model dapat memilih antara menghasilkan pesan atau memanggil alat. required berarti model harus memanggil satu atau lebih alat. Dapat juga menentukan fungsi tertentu melalui {"type": "function", "function": {"name": "my_function"}}.boolean
default:true
Apakah akan mengaktifkan pemanggilan fungsi paralel selama penggunaan alat.
string
Pengenal unik yang mewakili pengguna akhir Anda, yang dapat membantu memantau dan mendeteksi penyalahgunaan.
Respons
Respons penyelesaian chat yang berhasil.string
Pengenal unik untuk penyelesaian chat.
string
Tipe objek. Selalu
chat.completion.integer
Timestamp Unix (dalam detik) kapan penyelesaian chat dibuat.
string
Model yang digunakan untuk penyelesaian chat.
object[]
Daftar pilihan penyelesaian chat. Dapat lebih dari satu jika
n lebih besar dari 1.Tampilkan properties
Tampilkan properties
integer
Indeks pilihan dalam daftar pilihan.
object
Pesan penyelesaian chat yang dihasilkan oleh model.
Tampilkan properties
Tampilkan properties
string
Peran penulis pesan ini. Selalu
assistant.string | null
Konten pesan.
object[]
Panggilan alat yang dihasilkan oleh model, seperti panggilan fungsi.
string
Alasan model berhenti menghasilkan token. Dapat berupa
stop, length, tool_calls, atau content_filter.object | null
Informasi probabilitas log untuk pilihan tersebut.
object
string | null
Sidik jari ini mewakili konfigurasi backend tempat model berjalan. Dapat digunakan dengan parameter
seed untuk memahami kapan perubahan backend telah dilakukan.curl -X POST https://api-llm.sunra.ai/v1/chat/completions \
-H "Authorization: Bearer <SUNRA_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-4o",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'
import requests
response = requests.post(
"https://api-llm.sunra.ai/v1/chat/completions",
headers={
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
json={
"model": "openai/gpt-4o",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is the capital of France?"}
]
}
)
print(response.json())
const response = await fetch("https://api-llm.sunra.ai/v1/chat/completions", {
method: "POST",
headers: {
"Authorization": "Bearer <SUNRA_KEY>",
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "openai/gpt-4o",
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "What is the capital of France?" }
]
})
});
const data = await response.json();
console.log(data);
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677652288,
"model": "openai/gpt-4o",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "The capital of France is Paris."
},
"finish_reason": "stop",
"logprobs": null
}
],
"system_fingerprint": "fp_44709d6fcb",
"usage": {
"prompt_tokens": 25,
"completion_tokens": 8,
"total_tokens": 33
}
}
⌘I