Developer guide

Bangkirina API

Rêyên API-yê yên hevaheng û rêgezên streamkirinê û dengê

Rêyên bangkirinê yên derbasgeha CLEVI li gorî standarda hevahenga OpenAI û standarda hevahenga Anthropicê cuda dibin.
Her du standardan heman kilîta API-yê bikar tînin û modelên encamdana dîyalogê dikarin bi her du standardan werin bangkirin.
Rêyên embedding û dengê/voice tenê di standarda hevahenga OpenAI de hene,
standarda hevahenga Anthropicê sê rêyan dide: messages, count_tokens û models.

Streamkirin bi stream di navê daxwazê de tê çalak kirin û embedding û hin model û rê nayên piştgirî kirin. Rêyên dengê/voice rêgezên cuda ji encamdana giştî dişopînin, wekî vegerandina rasterast a audyoyê û parastina hilberan li CleviDriveê bo 3 rojan.

ID-yên modelan û bangkirinên destûrdar ji bo her modelê li ser rûpela modelê ne; sernavên pejirandinê û base URL li ser rûpela Pejirandina bi kilîta API-yê ne.

Hilbijartina rêyê

Li gorî tiştê ku hûn dixwazin bikin û SDK-ya ku hûn bikar tînin, rêyekê hilbijêrin. Rêyên di tabloyê de, rêyên nisbî ne ku li dû base URL-ya her standardê tên.

Tişta ku hûn dixwazin bikinStandardRê
Encamdana dîyalogê, bi karanîna SDK-ya OpenAIHevahenga OpenAIPOST /chat/completions an POST /responses
Encamdana dîyalogê, bi karanîna SDK-ya AnthropicHevahenga AnthropicPOST /v1/messages
Çêkirina embeddingêHevahenga OpenAIPOST /embeddings
Senteza dengê û veguhastina dengê nivîsê, rêveberiya voiceHevahenga OpenAIRêyên di bin /audio û /voices de
Diyarkirina modelên ku dikarin werin bangkirinHer duGET /models

Rêya hevahenga OpenAI

Base URL-ya standarda hevahenga OpenAI https://platform.clevi.net/api/v2/aiservice/openai/v1 e. Naveroka daxwaz û bersivê li gorî standarda OpenAI ye. Tabloya jêrîn rêyên encamdana û modelê wekî rêyên tevahî li gorî hostê nîşan dide, û rêyên dengê/voice di beşa paşîn a Rêyên dengê û voice de hatine rêzkirin.

MetodRêDanasîn
POST/api/v2/aiservice/openai/v1/chat/completionsDaxwaza encama têkiliyê dike. Ger stream vekirî be, bersiv bi SSE tê dayîn.
POST/api/v2/aiservice/openai/v1/responsesBi rêgeza Responses bang dike. Piştgiriya stream dike.
GET/api/v2/aiservice/openai/v1/responses/{responseId}Bersivekî tomarkirî digere.
GET/api/v2/aiservice/openai/v1/responses/{responseId}/input_itemsLîsteya hêmanên têketinê yên bersiva tomarkirî digere.
POST/api/v2/aiservice/openai/v1/responses/{responseId}/cancelBersiva ku di paşperdeyê de berdewam dike betal dike.
DELETE/api/v2/aiservice/openai/v1/responses/{responseId}Bersiva tomarkirî jê dibe.
POST/api/v2/aiservice/openai/v1/completionsDaxwaza temamkirina nivîsa kevn dike. Piştgiriya stream dike.
POST/api/v2/aiservice/openai/v1/embeddingsEmbedding çêdike. Piştgiriya streamingê nake.
GET/api/v2/aiservice/openai/v1/modelsLîsteya modelên ku dikarin bi vê mifteyê werin bangkirin vedigere.
GET/api/v2/aiservice/openai/v1/models/{modelId}Modelekê digere. Ger model nehatibe gihiştin, 404 vedigere.

Ev mînaka herî kêm e ku chat/completions bang dike. Li şûna sk-... mifteya ku ji rûpela mifteya API-yê hatiye dayîn, û li modelê ID-ya rûpela modelê binivîsin.

curl https://platform.clevi.net/api/v2/aiservice/openai/v1/chat/completions \
  -H "X-API-Key: sk-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "cip-5.5-im",
    "messages": [{"role": "user", "content": "안녕하세요"}]
  }'

Riyên din

Riyên jêrîn ji bo teşxîsê, lihevhatina bi pergala kevn û veguhastinê ne.

RêDanasîn
GET /api/v2/aiservice/openai/v1/healthzDîroka rewşa providerê kontrol dike.
/api/v2/aiservice/openai/v1/api/status · /api/options · /api/generate · /outputs/{filename}Rêçeyên ji bo rewş û vebijarkên Cosa ya kevn, bangkirina hilberînê (multipart) û daxistina deran e.
/api/v2/aiservice/openai/v1/{routeKey} (GET · POST · PUT · PATCH · DELETE)Rêçeyên providerê yên ku di tabloya jorîn de nehatine nîşandan bi sepandina qaîdeyê vediguhezîne. Ji ber ku chat/completions, completions, embeddings û responses ji aliyê rêçeyên taybet ve têne rêvebirin, ger bi relay-a POST ve werin gazîkirin 404 vedigerîne.

Hemû zeviyên daxwaz û bersivê dikarin di belgeya OpenAPI 3.0 https://platform.clevi.net/api/v2/console/openapi/cloud-inference-v1 de werin dîtin. Lîsteya rêçeyan di vê belgeyê de tê çêkirin, û belge tenê bi danişîna ku li konsolê hatiye daxilbûnê vedibe. Dikarin bi heman belgeyê xerîdarê çêbikin.

Rêçeya lihevhatî bi Anthropic

URL-a bingehîn a standarda lihevhatî bi Anthropic https://platform.clevi.net/api/v2/aiservice/anthropic e, û Anthropic SDK /v1 rasterast li rêçeya daxwazê zêde dike. Naveroka daxwaz û bersivê li gorî standarda Anthropic Messages e.

RêbazRêçeDanasîn
POST/api/v2/aiservice/anthropic/v1/messagesBi standarda Messages gazî dike. model, messages û max_tokens pêwîstin û stream tê piştgirîkirin.
POST/api/v2/aiservice/anthropic/v1/messages/count_tokensTenê hejmara tokenên têketinê bê pereya bikaranînê texmîn dike. max_tokens ne pêwîst e.
GET/api/v2/aiservice/anthropic/v1/modelsLîsteya modelan bi rêbaza paginaasyona cursorê vedigere. limit di navbera 1 û 1000 de ye û ger ji vê navberê derkeve 400 vedigere.
GET/api/v2/aiservice/anthropic/v1/models/{modelId}Agahiyên yek modelê digire. Ger model nayê gihiştinê, 404 vedigere.

Mînakek herî kêm e ku messages gazî dike.

curl https://platform.clevi.net/api/v2/aiservice/anthropic/v1/messages \
  -H "X-API-Key: sk-..." \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "cip-5.5-im",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "안녕하세요"}]
  }'

Ger hûn sernavê anthropic-version derbas nekin, ew wekî 2023-06-01 tê hesibandin. Gateway anthropic-version û anthropic-beta sernavan bê guhertin radigihîne.

Streaming (SSE)

Heke stream di navê daxwazê de li ser true were danîn, server bi Server-Sent Events bersivê dide. Piştgiriya wê li gorî rê û modelê wiha diguhere.

ArmancÇalakî
OpenAI hevaheng POST /chat/completions · POST /completions · POST /responsesPiştgiriya stream dike.
Anthropic hevaheng POST /v1/messagesPiştgiriya stream dike.
POST /embeddingsPiştgiriya streamingê nake.
Modelên rêza lêgerîna Ivy (wekî ivy-4-mm-search)Her çiqas stream were vekirin jî, server wê bigire û bersivê bi yek carê bide.
GET /responses/{responseId}?stream=true400 vedigerîne. Ev rê ye ku heta ku bikaranîna bersivên paşperdeyê bi rastî û tenê carekê were pîvan kirin, hatiye girtin.

Bi yekemîn chunkê re van sê sernavan dişîne. Paşê di her chunkê de rêzeke data: dişîne û yekser flush dike; tenê dema ku upstream navê bûyerê dabîn bike, rêzeka event: jî bi hev re dişîne.

  • Content-Type: text/event-stream
  • Cache-Control: no-cache
  • X-Accel-Buffering: no

Chunkên rêya Anthropic hevaheng ji rêzika event û rêzika data pêk tên.

event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"안"}}

Chunkên chat/completions wekî rêzên data: tên, û di dawiyê de data: [DONE] bê guhertin tê ragihandin.

data: {"id":"chatcmpl-...","object":"chat.completion.chunk","choices":[...]}

data: [DONE]

Heke di dema streamingê de çewtiyek çêbibe, JSON-a çewtiyê ya wekî bangewaziya asayî di yek rêza data: de tê ragihandin û koda rewşa HTTP jî diguhere.

Rêyên deng û dengdanê

Rêyên rêvebirina dengên TTS·STT û Cosa di standarda OpenAI hevaheng de ne û hin rêgezên wan ji îstidlala asayî cuda ne. Ji bo dîtina ka kîjan model kîjan rê dihêle, li tabloya Cosa ya rûpela modelê binêre.

MetodRêDanasîn
POST/api/v2/aiservice/openai/v1/audio/speechNivîsê dike deng û audiyoyê rasterast vedigerîne.
POST/api/v2/aiservice/openai/v1/audio/transcriptionsAudiyoyê dike nivîs (multipart).
POST/api/v2/aiservice/openai/v1/audio/speech/cloneBi dengê klonkirî dengê sentez dike (multipart).
GET/api/v2/aiservice/openai/v1/voicesLîsteya dengên ku gazîker dikare bikar bîne vedigerîne.
POST/api/v2/aiservice/openai/v1/voicesBi nimûneya audiyoyê dengek tomar dike (multipart).
POST/api/v2/aiservice/openai/v1/voices/designBi nivîsa ravekirinê dengek sentezê diafirîne.
DELETE/api/v2/aiservice/openai/v1/voices/{voiceId}Deng jê dibe. Tenê xwedî dikare jê bibe.

Rêzikên jêrîn tenê li ser rêyên audiyo û dengê tên sepandin.

RêzikNaverok
گەیاندنی باینەریوەڵامە سەرکەوتووەکانی audio/speech، audio/speech/clone و outputs/{filename} لەگەڵ ئەوەی دەنگەکە بەبێ گۆڕان دەگوازنەوە، هەمان کات لە CleviDrive پاشەکەوتی دەکەن.
سەری وەسڵسەرەکانی X-Clevi-Drive-File-Id، X-Clevi-Drive-File-Version-Id، X-Clevi-Drive-Download-Url، X-Clevi-Drive-Expires-At، X-Clevi-Drive-Retention-Days: 3 لە وەڵامەکەدا دەخەنە ناوەوە.
هەڵبژاردنی Productaudio/speech و audio/transcriptions بە model لە ناوەڕۆکی داواکارییەکە Product هەڵدەبژێرن. ڕێڕەوەکانی دەنگ و پشکنین پێویستیان بە سەری X-Product-Sku یان product_sku لە query هەیە.
خاوەندارێتی دەنگئەو دەنگانەی کە دووبارە دروست کراون یان تۆمار کراون، هی ئەو لایەنەیە کە دروستی کردوون. ئەگەر هەوڵ بدەیت بە دەنگی خاوەندێکی تر دەنگ دروست بکەیت یان بیسڕیتەوە، 403 دەگەڕێنێتەوە؛ هەروەها لیستی GET /voices تەنها دەنگەکانی خۆت لەخۆ دەگرێت.
قەبارە و کاتسنووری داواکاری 28 MiB ـە و سنووری کاتی بانگکردنی upstream، 5 خولەکە.
قەرەباڵغی providerئەگەر upstream قەرەباڵغ بێت، 409 بە هەمان شێوە دەگوازرێتەوە و ئەگەر Retry-After هەبێت، ئەو نرخەش لەگەڵیدا دەگوازرێتەوە. گەیت‌وەی دووبارە هەوڵ ناداتەوە و لە نۆرەشیدا نایخات.

Ziman û herêm

Zimanên ku bi makîneyê hatine wergerandin ji hêla clevi/cip-5.5-im ve hatine wergerandin û wekî wisa hatine nîşankirin. Ev ji bo zimanan ên ku pakêta malpera wan hatiye weşandin derbasdar e.

137 ziman

Pêşniyarkirî

1

Rojhilatê Asyayê

7

Başûrrojhilatê Asyayê

11

Başûrê Asyayê

18

Asyaya Navîn

5

Rojhilata Navîn û Kafkasya

10

Rojavayê Ewropayê û Başûrê Ewropayê

17

Qiralîyeta Yekbûyî û Îrlanda

4

Bakurê Ewropayê

10

Ewropaya Navîn û Balkan

14

Rojhilatê Ewropayê

5

Rojhilatê Afrîkayê

8

Rojavayê Afrîkayê û Afrîkaya Navîn

9

Başûrê Afrîkayê

8

Amerîka

5

Okyanûsya

5