Developer guide
Jalqaba saffisaa
Jalqaba saffisaa
Dokumantiin kun akkamitti furtuu API CLEVI argachuun gaaffii jalqabaa erguu fi deebii argachuu akka dandeessan ibsa. Teessoo tokkoo fi furtuu tokko qofaan cip-5.5-im fi cip-5.5-mm waamuun ni danda’ama; gaaffii fi deebiin bifa OpenAI Chat Completions hordofu. Kanaaf, OpenAI SDK itti fayyadamaa turtan keessatti gatiiwwan base_url fi api_key qofa jijjiiruun ga’a. Daandiiwwan SDK Anthropic fi daandiiwwan embedding·sagalee dokumantii API waamuu keessatti argamu.
Furtuu API argachuu
Furtuun kan kennamu fuula furtuu API konsolii CLEVI Cloud irraa. Fuulauma sana irratti furtuu balleessuu fi daangaa itti fayyadamaa bulchuu dandeessu. Tartiiba armaan gadii hordofuudhaan furtuu tokko gaaffii keessatti fayyadamu argattu.
- https://platform.clevi.net/account/login irratti seenaa yookaan akkaawuntii uumi.
- https://clevi.app/cloud irratti workspace dabali.
- Gara https://clevi.app/cloud/keys deemi.
- Furtuu haaraa uumiitii gatii isaa kooppii godhi.
- Gatii kooppii goote sana jijjiiramaa naannoo keessatti kuusi.
Bakka sk-... fakkeenya dokumantii kana keessatti mul’atutti furtuu argatte galchi. Ajaja armaan gadiitiin jijjiiramaa naannoo keessatti kuusuun fakkeenyota itti aanan akkuma jiranitti kooppii gootee raawwachuu dandeessa.
export CLEVI_API_KEY="sk-..."Moodeela filachuu
Maqaa armaan gadii akkuma jirutti dirree model qaama gaaffii keessatti galchi. Moodeelonni lamaan teessoo fi bifa gaaffii tokko fayyadamu; barruu fi suuraa akka galtee fudhatu.
- cip-5.5-im
- cip-5.5-mm
| Eenyummaa moodeelichaa | Hammamtaa | Daangaa galtee | Ba’ii olaanaa | Hojiiwwan itti mijatan |
|---|---|---|---|---|
| cip-5.5-im | 360B | 256K | 64K | Hojiiwwan kaayyoo fi daangaan isaanii ifa ta’e. Saffisa deebii fi baay’ina adeemsaa dursa kennuuf. |
| cip-5.5-mm | 800B | 512K | 64K | Hojiiwwan walxaxoo odeeffannoo fi haalota hedduu walitti makaman. Qorannoo haala dheeraa fi ejentiiwwan sadarkaa hedduu qabuuf fayyada. |
Moodeelonni dhugumaan akkaawuntii keessan irraa waamamuu danda’an tarree moodeelotaa Playgound keessa jiru fi deebii GET /models irratti hundaa’u. Tarreen moodeelotaa guutuu fi waamicha moodeela tokkoon tokkoon isaatiif hayyamame dokumantii moodeelotaa keessatti argama; baay’inni krediitii tilmaamaan hir’atu immoo fuula itti fayyadama konsolii irratti argama.
POST /api/v2/aiservice/openai/v1/chat/completions
Tarree ergaa fi maqaa moodeelichaa fudhatee, ergaa moodeelichi uume tarree choices keessatti galchee deebisa. Teessoon guutuun https://platform.clevi.net/api/v2/aiservice/openai/v1/chat/completions dha. Qaamni gaaffii application/json dha; mirkaneessi immoo mataduree Authorization keessatti, duriitti Bearer fi furtuu kaa'uun raawwatama. Furtuu mataduree X-API-Key tiinis erguun ni danda'ama; matadureewwan lamaan yoo kaa'aman, gatiin X-API-Key dursa qabaata.
| Maqaa | Fakkii | Dirqama | Ibsa |
|---|---|---|---|
| model | string | Eeyyee | cip-5.5-im ykn cip-5.5-mm |
| messages | array | Eeyyee | Tarree wantoota ergaa haasa'aa. Yoo xiqqaate 1 |
| messages[].role | string | Eeyyee | system · user · assistant keessaa tokko |
| messages[].content | string | Eeyyee | Qaama ergaa |
| stream | boolean | Lakki | Yoo true ta'e, deebiin gara ciccitaawwan Server-Sent Events tti qoodamee fudhatama |
| max_tokens | integer | Lakki | Baay'ina tokenii ol'aanaa deebii keessatti uumamu |
| temperature | number | Lakki | Gatiin yoo guddate, gaaffii walfakkaataa keessatti deebiiwwan garaagaraa argamuun carraa isaa ni dabala |
curl https://platform.clevi.net/api/v2/aiservice/openai/v1/chat/completions \
-H "Authorization: Bearer $CLEVI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "cip-5.5-im",
"messages": [
{"role": "user", "content": "CLEVI API를 한 문장으로 설명해 줘."}
]
}'import os
import requests
url = "https://platform.clevi.net/api/v2/aiservice/openai/v1/chat/completions"
response = requests.post(
url,
headers={"Authorization": f"Bearer {os.environ['CLEVI_API_KEY']}"},
json={
"model": "cip-5.5-im",
"messages": [{"role": "user", "content": "CLEVI API를 한 문장으로 설명해 줘."}],
},
timeout=60,
)
print(response.json()["choices"][0]["message"]["content"])const url =
"https://platform.clevi.net/api/v2/aiservice/openai/v1/chat/completions";
const response = await fetch(url, {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.CLEVI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "cip-5.5-im",
messages: [{ role: "user", content: "CLEVI API를 한 문장으로 설명해 줘." }],
}),
});
const data = await response.json();
console.log(data.choices[0].message.content);Kun fakkeenya deebii ti. Gatiin id, created fi usage gaaffii hunda irratti garaagaraa dha.
{
"id": "chatcmpl-3f0a9c72",
"object": "chat.completion",
"created": 1755500000,
"model": "cip-5.5-im",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "CLEVI API는 주소 하나로 여러 모델을 호출하는 채팅 완료 API입니다."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 21,
"completion_tokens": 19,
"total_tokens": 40
}
}OpenAI SDKn waamuu
base_url OpenAI SDK gara https://platform.clevi.net/api/v2/aiservice/openai/v1 jijjiiriitii api_key keessatti furtuu CLEVI kaa'i. Koodiin waamichaa hafes akkuma jirutti dhiisi.
# pip install openai
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["CLEVI_API_KEY"],
base_url="https://platform.clevi.net/api/v2/aiservice/openai/v1",
)
completion = client.chat.completions.create(
model="cip-5.5-mm",
messages=[{"role": "user", "content": "CLEVI API를 한 문장으로 설명해 줘."}],
)
print(completion.choices[0].message.content)// npm install openai
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.CLEVI_API_KEY,
baseURL: "https://platform.clevi.net/api/v2/aiservice/openai/v1",
});
const completion = await client.chat.completions.create({
model: "cip-5.5-mm",
messages: [{ role: "user", content: "CLEVI API를 한 문장으로 설명해 줘." }],
});
console.log(completion.choices[0].message.content);Akka yaa'insaatti fudhachuu
Yeroo ati stream gara true tti qaama gaaffii keessatti kaa’tu, sarvariin Server-Sent Events fayyadamuun deebii kenna. Kutaa jalqabaa wajjin, matootni Content-Type: text/event-stream, Cache-Control: no-cache, fi X-Accel-Buffering: no ni ergamu; sana booda, kutaa hunda keessatti wanti chat.completion.chunk ta’e sarara data: keessatti hammata. Sararri dhumaa data: [DONE] dha. Fakkeenyonni Python fi TypeScript armaan gadii client kutaa darbe keessatti uumame akkuma jirutti fayyadamu.
curl -N https://platform.clevi.net/api/v2/aiservice/openai/v1/chat/completions \
-H "Authorization: Bearer $CLEVI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "cip-5.5-im",
"messages": [{"role": "user", "content": "CLEVI API를 한 문장으로 설명해 줘."}],
"stream": true
}'stream = client.chat.completions.create(
model="cip-5.5-im",
messages=[{"role": "user", "content": "CLEVI API를 한 문장으로 설명해 줘."}],
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content
if delta:
print(delta, end="")const stream = await client.chat.completions.create({
model: "cip-5.5-im",
messages: [{ role: "user", content: "CLEVI API를 한 문장으로 설명해 줘." }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}Kun fakkeenya kutaa ti.
data: {"id":"chatcmpl-3f0a9c72","object":"chat.completion.chunk","model":"cip-5.5-im","choices":[{"index":0,"delta":{"content":"CLEVI"},"finish_reason":null}]}
data: {"id":"chatcmpl-3f0a9c72","object":"chat.completion.chunk","model":"cip-5.5-im","choices":[{"index":0,"delta":{"content":" API는"},"finish_reason":null}]}
data: {"id":"chatcmpl-3f0a9c72","object":"chat.completion.chunk","model":"cip-5.5-im","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: [DONE]Yeroo tamsaasa keessatti dogoggorri yoo uumame, JSON dogoggoraa wal fakkaataan sarara data: tokkoon dhufa; koodiin haala HTTPs immoo waliin jijjiirama.
Dogoggora
Gaaffiin kufe sababaa isaa koodii haala HTTP tiin beeksisa. Yoo 업스트림’n 4xx ykn 5xx deebise, koodii sana akkuma jirutti dabarsina. Jalqaba tarkaanfiiwwan gabatee armaan gadii ilaali; koodiin wal fakkaataan yoo irra deddeebi’amee mul’ate, yeroo gaaffii, qaama ergite, fi X-Request-Id galmeessi.
| Koodii | Hiika | Tarkaanfii |
|---|---|---|
| 400 | Qaamni gaaffii bifa sirrii hin qabu | model fi messages jiraachuu isaanii, akkasumas JSON cufamuu isaa mirkaneessi |
| 401 | Furtuun hin jiru, yookaan furtuu yeroon isaa darbe ykn haqame dha | Haala furtuu fuula API keys irratti mirkaneessi, akkasumas matadureen Authorization Bearer jedhuun jalqabamuu isaa qoradhu |
| 403 | Hayyamni modelitti seenuu hin jiru, daangaa itti fayyadamaa ol geesse, yookaan kreeditii gahaa hin jiru | Sababa isaa error.message irraa mirkaneessi. Daangaa Assigned usage limits keessaa Overview irratti, baaqii fi pilaanii immoo Plans and credits keessaa ilaali |
| 404 | Model hin jiru, yookaan furtuu kanaan itti seenuu hin dandeessu, yookaan daandiin hin jiru | Maqaan model deebii GET /models keessatti jiraachuu isaa, akkasumas teessoon /api/v2/aiservice/openai/v1/chat/completions irratti xumuramuu isaa mirkaneessi |
| 429 | Dhiyeessaan upstream daangaa saffisaa kaa'eera | Yoo matadureen Retry-After jiraate, yeroo sana hamma eegi; yoo hin jirre, yeroo irra deebii erguu dachaa dachaan dheeressiitii irra deebi'ii ergi |
| 5xx | Dogoggora yeroo gabaabaa gateway ykn upstream ti | Yeroo irra deebii erguu dachaa dachaan dheeressiitii irra deebi'ii ergi; yoo irra deddeebi'ame, X-Request-Id waliin Help fi Contact us irratti beeksisi |
402 hin deebifamu. Kreeditii gahaa dhabuu fi daangaa itti fayyadamaa ol darbuun 403 ta'ee dhufa. Qaamni dogoggoraa bifa armaan gadiiti; sababni isaa error.message keessa jira.
{"error":{"message":"API key is required.","type":"invalid_request_error"}}Yoo mataduree X-Request-Id gaaffii keessatti dabaltu, yeroo nu qunnamtu gatii sanaan hordofna. Yoo hin ergine, sarvarichi ni baasa.
Tarkaanfii itti aanu
Maqaa modelii fi parameetiroota jijjiiruun bu'aa walbira qabuun Playground keessatti raawwatama. Furtuu haaraa uumuu ykn haqachuun fuula API keys irratti raawwatama. Sanadoonni itti aansee dubbifaman kunooti.
- Models: Tarree modeloota guutuu, ibsa modelii tokkoon tokkoo fi waamicha hayyamame
- Make API calls: Daandii Anthropic waliin walsimu, daandii embedding fi sagalee, akkasumas seera streaming
- Error codes: Gabatee koodota haalaa guutuu fi seera irra deebii erguu
