Developer guide

API çağırmaq

API uyğunluq yolları və axın·səs qaydaları

CLEVI Gateway-in çağırış yolları OpenAI uyğunluğu və Anthropic uyğunluğu standartlarına bölünür.
Hər iki standart eyni API açarından istifadə edir və dialoq əsaslı inferensiya modelləri hər iki standart vasitəsilə çağırıla bilər.
Embedding və audio·səs yolları yalnız OpenAI uyğunluğu standartında mövcuddur,
Anthropic uyğunluğu standartı isə messages, count_tokens, models olmaqla üç yol təqdim edir.

Axın rejimi sorğu mətnindəki stream parametri ilə aktivləşdirilir və embedding, eləcə də bəzi modellər və yollar tərəfindən dəstəklənmir. Audio·səs yolları audionu olduğu kimi qaytarır və nəticələri 3 gün ərzində CleviDrive-da saxlayır; buna görə də onlar ümumi inferensiyadan fərqli qaydalara tabedir.

Model ID-ləri və hər model üçün icazə verilən çağırışlar model səhifəsində, autentifikasiya başlıqları və base URL isə API açarı ilə autentifikasiya səhifəsində yerləşir.

Yol seçimi

Görmək istədiyiniz işə və istifadə etdiyiniz SDK-ya əsasən yol seçin. Cədvəldəki yollar hər standartın base URL-indən sonra gələn nisbi yollardır.

Görmək istədiyiniz işStandartYol
Dialoq əsaslı inferensiya, OpenAI SDK-dan istifadəOpenAI uyğunluğuPOST /chat/completions və ya POST /responses
Dialoq əsaslı inferensiya, Anthropic SDK-dan istifadəAnthropic uyğunluğuPOST /v1/messages
Embedding yaratmaqOpenAI uyğunluğuPOST /embeddings
Səs sintezi·transkripsiya, səsin idarə edilməsiOpenAI uyğunluğu/audio və /voices altındakı yollar
Çağırıla bilən modelləri yoxlamaqHər ikisiGET /models

OpenAI uyğunluğu yolu

OpenAI uyğunluğu standartının base URL-i https://platform.clevi.net/api/v2/aiservice/openai/v1 ünvanıdır. Sorğu və cavab mətnləri OpenAI standartına uyğundur. Aşağıdakı cədvəldə inferensiya və model yolları host əsaslı tam yollar kimi göstərilir; audio·səs yolları isə sonrakı Audio və səs yolları bölməsində izah edilir.

MetodYolTəsvir
POST/api/v2/aiservice/openai/v1/chat/completionsDialoq əsaslandırması tələb edir. stream aktiv edildikdə cavab SSE vasitəsilə qaytarılır.
POST/api/v2/aiservice/openai/v1/responsesResponses formatında çağırış edir. stream dəstəklənir.
GET/api/v2/aiservice/openai/v1/responses/{responseId}Saxlanmış bir cavabı əldə edir.
GET/api/v2/aiservice/openai/v1/responses/{responseId}/input_itemsSaxlanmış cavabın giriş elementlərinin siyahısını əldə edir.
POST/api/v2/aiservice/openai/v1/responses/{responseId}/cancelArxa planda davam edən cavabı ləğv edir.
DELETE/api/v2/aiservice/openai/v1/responses/{responseId}Saxlanmış cavabı silir.
POST/api/v2/aiservice/openai/v1/completionsƏnənəvi mətn tamamlaması tələb edir. stream dəstəklənir.
POST/api/v2/aiservice/openai/v1/embeddingsEmbedding yaradır. Axın dəstəklənmir.
GET/api/v2/aiservice/openai/v1/modelsBu açarla çağırıla bilən modellərin siyahısını qaytarır.
GET/api/v2/aiservice/openai/v1/models/{modelId}Bir modeli əldə edir. Əlçatan olmayan model üçün 404 qaytarır.

chat/completions çağırışı üçün minimal nümunədir. sk-... yerinə API açarları ekranından verilən açarı, model sahəsinə isə model səhifəsindəki ID-ni daxil edin.

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": "안녕하세요"}]
  }'

Digər yollar

Aşağıdakı yollar diaqnostika, köhnə versiyalarla uyğunluq və ötürmə məqsədləri üçün istifadə olunur.

YolTəsvir
GET /api/v2/aiservice/openai/v1/healthzSəs provider-inin vəziyyətini yoxlayır.
/api/v2/aiservice/openai/v1/api/status · /api/options · /api/generate · /outputs/{filename}Legacy Cosa-nın vəziyyətini və seçimlərini əldə etmək, generasiya çağırışı (multipart) etmək və nəticələri yükləmək üçün marşrutlardır.
/api/v2/aiservice/openai/v1/{routeKey} (GET · POST · PUT · PATCH · DELETE)Yuxarıdakı cədvəldə olmayan provider marşrutlarını qaydaları tətbiq edərək ötürür. chat/completions, completions, embeddings və responses xüsusi marşrutlar tərəfindən emal edildiyindən, POST ötürməsi ilə çağırıldıqda 404 qaytarılır.

Sorğu və cavab sahələrinin hamısını OpenAPI 3.0 sənədində https://platform.clevi.net/api/v2/console/openapi/cloud-inference-v1 yoxlaya bilərsiniz. Marşrut siyahısı bu sənəddən yaradılır və sənəd yalnız konsola daxil olmuş sessiya ilə açılır. Eyni sənəddən klient yarada bilərsiniz.

Anthropic uyğun marşrutları

Anthropic uyğun spesifikasiyasının base URL-i https://platform.clevi.net/api/v2/aiservice/anthropic ünvanıdır və Anthropic SDK sorğu yoluna /v1-i birbaşa əlavə edir. Sorğu və cavab məzmunu Anthropic Messages spesifikasiyasına uyğundur.

MetodMarşrutTəsvir
POST/api/v2/aiservice/anthropic/v1/messagesMessages spesifikasiyasına uyğun çağırış edir. model, messages və max_tokens tələb olunur və stream dəstəklənir.
POST/api/v2/aiservice/anthropic/v1/messages/count_tokensÖdəniş tutulmadan yalnız giriş tokenlərinin sayını təxmin edir. max_tokens tələb olunmur.
GET/api/v2/aiservice/anthropic/v1/modelsKursor səhifələndirməsi üsulu ilə modellərin siyahısını qaytarır. limit 1~1000 aralığında olmalıdır; aralıqdan kənara çıxarsa, 400 qaytarılır.
GET/api/v2/aiservice/anthropic/v1/models/{modelId}Bir modeli əldə edir. Əlçatan olmayan model olduqda 404 qaytarılır.

messages çağırışı üçün minimal nümunədir.

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": "안녕하세요"}]
  }'

anthropic-version başlığını buraxsanız, 2023-06-01 kimi emal edilir. Gateway anthropic-version və anthropic-beta başlıqlarını olduğu kimi ötürür.

Axın (SSE)

Sorğunun mətnində stream parametrini true olaraq təyin etsəniz, server Server-Sent Events vasitəsilə cavab verir. Dəstək marşruta və modelə görə aşağıdakı kimi fərqlənir.

HədəfDavranış
OpenAI uyğun POST /chat/completions · POST /completions · POST /responsesstream dəstəklənir.
Anthropic uyğun POST /v1/messagesstream dəstəklənir.
POST /embeddingsAxın dəstəklənmir.
Ivy axtarış ailəsinə aid modellər (ivy-4-mm-search və s.)stream aktiv edilsə belə, server onu deaktiv edir və cavabı bir dəfəyə qaytarır.
GET /responses/{responseId}?stream=true400 qaytarır. Fon cavablarının istifadəsini dəqiq və yalnız bir dəfə ölçmək mümkün olana qədər bağlı saxlanılan marşrutdur.

İlk hissə ilə birlikdə aşağıdakı üç başlıq göndərilir. Bundan sonra hər hissə ilə data: sətri göndərilir və dərhal flush edilir; upstream hadisə adı təqdim etdikdə isə yalnız həmin halda event: sətri də göndərilir.

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

Anthropic uyğun marşrutun hissələri event sətri ilə data sətrinin cütündən ibarətdir.

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

chat/completions hissələri data sətri kimi gəlir və sonda data: [DONE] olduğu kimi ötürülür.

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

data: [DONE]

Axın zamanı xəta baş verərsə, adi çağırışdakı kimi xəta JSON-u data: sətri ilə ötürülür və HTTP status kodu da dəyişir.

Səs və voice marşrutları

TTS·STT və Cosa voice idarəetmə marşrutları OpenAI uyğun spesifikasiyasına əsaslanır və ümumi inferensiyadan fərqli bir neçə qayda tətbiq edilir. Hansı modelin hansı marşruta icazə verdiyini model səhifəsindəki Cosa cədvəlindən yoxlayın.

MetodMarşrutTəsvir
POST/api/v2/aiservice/openai/v1/audio/speechMətni nitqə sintez edərək audionu olduğu kimi qaytarır.
POST/api/v2/aiservice/openai/v1/audio/transcriptionsAudionu mətnə transkripsiya edir (multipart).
POST/api/v2/aiservice/openai/v1/audio/speech/cloneKlonlaşdırılmış səslə nitqi sintez edir (multipart).
GET/api/v2/aiservice/openai/v1/voicesÇağırış edən şəxsin istifadə edə biləcəyi səslərin siyahısını qaytarır.
POST/api/v2/aiservice/openai/v1/voicesAudio nümunəsi ilə səs qeydiyyatdan keçirir (multipart).
POST/api/v2/aiservice/openai/v1/voices/designTəsvir mətni əsasında sintez edilmiş səs yaradır.
DELETE/api/v2/aiservice/openai/v1/voices/{voiceId}Səsi silir. Yalnız sahibi silə bilər.

Aşağıdakı qaydalar yalnız nitq və səs yollarına tətbiq olunur.

QaydaMəzmun
İkili məlumatların ötürülməsiaudio/speech, audio/speech/clone, outputs/{filename} üçün uğurlu cavab audionu olduğu kimi ötürməklə yanaşı, onu CleviDrive-da da saxlayır.
Qəbz başlıqları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 başlıqlarını cavaba daxil edir.
Product seçimiaudio/speech və audio/transcriptions sorğunun gövdəsindəki model vasitəsilə Product seçir. Səs və diaqnostika yolları üçün X-Product-Sku başlığı və ya product_sku sorğu parametri tələb olunur.
Səs üzərində mülkiyyətKlonlanan və ya qeydiyyatdan keçirilən səslər onları yaradan tərəfə məxsusdur. Başqa sahibin səsi ilə sintez etməyə və ya onu silməyə cəhd etdikdə 403 qaytarılır və GET /voices siyahısına yalnız istifadəçinin özünə məxsus səslər daxil edilir.
Ölçü və vaxtSorğunun yuxarı həddi 28 MiB, upstream çağırışının vaxt limiti isə 5 dəqiqədir.
provider sıxlığıupstream sıx olduqda 409 olduğu kimi ötürülür və Retry-After varsa, həmin dəyər də birlikdə ötürülür. Şlüz təkrar cəhd etmir və sorğunu növbəyə əlavə etmir.

Dil və region

Maşınla tərcümə edilmiş dillər clevi/cip-5.5-im tərəfindən tərcümə olunur və belə qeyd edilir. Bu, dərc edilmiş sayt paketi olan dillərə aiddir.

137 dil

Tövsiyə olunur

1

Şərqi Asiya

7

Cənub-Şərqi Asiya

11

Cənubi Asiya

18

Mərkəzi Asiya

5

Yaxın Şərq və Qafqaz

10

Qərbi Avropa və Cənubi Avropa

17

Birləşmiş Krallıq və İrlandiya

4

Şimali Avropa

10

Mərkəzi Avropa və Balkanlar

14

Şərqi Avropa

5

Şərqi Afrika

8

Qərbi Afrika və Mərkəzi Afrika

9

Cənubi Afrika

8

Amerika

5

Okeaniya

5