Developer guide

API deitzea

API bateragarriaren bideak eta streaming-eko eta ahotsaren arauak

CLEVI atebidearen deitze-bideak OpenAI-rekin bateragarria den araudian eta Anthropic-ekin bateragarria den araudian banatzen dira.
Bi araudiek API-gako bera erabiltzen dute, eta elkarrizketa bidezko inferentzia-ereduei bi araudietako edozein erabiliz dei dakieke.
Txertatze- eta audio/ahots-bideak OpenAI-rekin bateragarria den araudian soilik daude,
eta Anthropic-ekin bateragarria den araudiak hiru bide eskaintzen ditu: messages, count_tokens eta models.

Streaming-a eskaeraren gorputzeko stream bidez aktibatzen da, eta ez dute txertatzeek eta eredu eta bide batzuek onartzen. Audio/ahots-bideek audioa bere horretan itzultzen dute, eta beste arau batzuk dituzte inferentzia arruntaren aldean, adibidez, emaitzak CleviDrive-n 3 egunez gordetzea.

Modeloen IDak eta eredu bakoitzak baimentzen dituen deiak ereduen orrian daude; autentifikazio-goiburuak eta base URL-a, berriz, API-gakoarekin autentifikatzeko orrian.

Bidea hautatzea

Hautatu bidea egin nahi duzunaren eta erabiltzen ari zaren SDK-aren arabera. Taulako bideak araudi bakoitzaren base URL-aren ondoren doazen bide erlatiboak dira.

Egin nahi duzunaAraudiaBidea
Elkarrizketa bidezko inferentzia, OpenAI SDK erabiltzeaOpenAI-rekin bateragarriaPOST /chat/completions edo POST /responses
Elkarrizketa bidezko inferentzia, Anthropic SDK erabiltzeaAnthropic-ekin bateragarriaPOST /v1/messages
Txertatzeak sortzeaOpenAI-rekin bateragarriaPOST /embeddings
Ahots-sintesia eta transkripzioa, ahotsen kudeaketaOpenAI-rekin bateragarria/audio eta /voices bideetako bideak
Dei daitezkeen ereduak egiaztatzeaBiakGET /models

OpenAI-rekin bateragarria den bidea

OpenAI-rekin bateragarria den araudiaren base URL-a https://platform.clevi.net/api/v2/aiservice/openai/v1 da. Eskaera- eta erantzun-gorputzek OpenAI araudia jarraitzen dute. Beheko taulan inferentzia- eta eredu-bideak ostalariaren araberako bide oso gisa adierazten dira; audio- eta ahots-bideak, berriz, aurrerago azaltzen dira, audio- eta ahots-bideen atalean.

MetodoaBideaDeskribapena
POST/api/v2/aiservice/openai/v1/chat/completionsElkarrizketa bidezko arrazoibidea eskatzen du. stream aktibatuz gero, SSE bidez erantzuten du.
POST/api/v2/aiservice/openai/v1/responsesDeia Responses formatuaren arabera egiten du. stream onartzen du.
GET/api/v2/aiservice/openai/v1/responses/{responseId}Gordetako erantzun bat kontsultatzen du.
GET/api/v2/aiservice/openai/v1/responses/{responseId}/input_itemsGordetako erantzunaren sarrera-elementuen zerrenda kontsultatzen du.
POST/api/v2/aiservice/openai/v1/responses/{responseId}/cancelAtzeko planoan egiten ari den erantzuna bertan behera uzten du.
DELETE/api/v2/aiservice/openai/v1/responses/{responseId}Gordetako erantzuna ezabatzen du.
POST/api/v2/aiservice/openai/v1/completionsTestuaren osatze legatua eskatzen du. stream onartzen du.
POST/api/v2/aiservice/openai/v1/embeddingsEmbedding-ak sortzen ditu. Ez du streaming-a onartzen.
GET/api/v2/aiservice/openai/v1/modelsGako honekin dei daitezkeen modeloen zerrenda itzultzen du.
GET/api/v2/aiservice/openai/v1/models/{modelId}Modelo bat kontsultatzen du. Atzitu ezin den modelo bat bada, 404 itzultzen du.

chat/completions deitzeko gutxieneko adibidea da. sk-... lekuan, API-gakoen pantailan igorritako gakoa jarri; model eremuan, berriz, modeloaren orrialdeko IDa.

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

Gainerako bideak

Ondorengo bideak diagnostikorako, bateragarritasun legaturako eta errelebo-lanetarako dira.

BideaAzalpena
GET /api/v2/aiservice/openai/v1/healthzAhots-provideraren egoera egiaztatzen du.
/api/v2/aiservice/openai/v1/api/status · /api/options · /api/generate · /outputs/{filename}Cosa zaharraren egoera eta aukerak kontsultatzeko, sortzeko deia (multipart) egiteko eta emaitzak deskargatzeko bideak dira.
/api/v2/aiservice/openai/v1/{routeKey} (GET · POST · PUT · PATCH · DELETE)Goiko taulan ez dauden provider-bideak arauak aplikatuz birbideratzen ditu. chat/completions, completions, embeddings eta responses bide espezifikoek kudeatzen dituzte; beraz, POST bidezko birbideratze-deiak 404 itzuliko du.

Eskaera- eta erantzun-eremu guztiak OpenAPI 3.0 dokumentuan https://platform.clevi.net/api/v2/console/openapi/cloud-inference-v1 kontsulta daitezke. Bideen zerrenda dokumentu honetan sortzen da, eta dokumentua kontsolan saioa hasita duen saio baten bidez soilik ireki daiteke. Dokumentu bera erabil dezakezu bezero bat sortzeko.

Anthropic-ekin bateragarriak diren bideak

Anthropic-ekin bateragarria den zehaztapenaren oinarrizko URLa https://platform.clevi.net/api/v2/aiservice/anthropic da, eta Anthropic SDK-k /v1 gehitzen dio zuzenean eskaeraren bideari. Eskaera- eta erantzun-gorputzek Anthropic Messages zehaztapena betetzen dute.

MetodoaBideaDeskribapena
POST/api/v2/aiservice/anthropic/v1/messagesMessages zehaztapenaren arabera deitzen du. model, messages eta max_tokens behar dira, eta stream onartzen du.
POST/api/v2/aiservice/anthropic/v1/messages/count_tokensSarrerako token kopurua soilik estimatzen du, kosturik gabe. Ez da max_tokens behar.
GET/api/v2/aiservice/anthropic/v1/modelsModeloen zerrenda itzultzen du kurtsore bidezko orrialdekatzearekin. limit 1etik 1000ra bitartekoa da; barrutitik kanpo badago, 400 itzultzen du.
GET/api/v2/aiservice/anthropic/v1/models/{modelId}Modelo bakar bat kontsultatzen du. Modelo hori atzitu ezin bada, 404 itzultzen du.

messages deitzeko gutxieneko adibidea da.

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 goiburua baztertzen baduzu, 2023-06-01 gisa tratatuko da. Gateway-ak anthropic-version eta anthropic-beta goiburuak bere horretan igarotzen ditu.

Streaming-a (SSE)

Eskaeraren gorputzean stream true gisa ezartzen baduzu, zerbitzariak Server-Sent Events bidez erantzuten du. Onartzen den ala ez bidearen eta ereduaren arabera aldatzen da, honela.

HelburuaPortaera
OpenAI bateragarria POST /chat/completions · POST /completions · POST /responsesstream onartzen du.
Anthropic bateragarria POST /v1/messagesstream onartzen du.
POST /embeddingsEz du streaming-a onartzen.
Ivy bilaketa-ereduen familia (ivy-4-mm-search, etab.)stream aktibatuta egon arren, zerbitzariak desgaitu eta erantzuna aldi berean bidaltzen du.
GET /responses/{responseId}?stream=true400 itzultzen du. Bidea itxita dago atzeko planoko erantzunen erabilera zehaztasunez eta behin bakarrik neurtu ahal izan arte.

Lehen chunk-arekin batera, hiru goiburu hauek bidaltzen ditu. Aurrerantzean, chunk bakoitzean data: lerroa bidali eta berehala flush egiten du; upstream-ak gertaeraren izena ematen badu soilik bidaltzen du event: lerroa ere.

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

Anthropic bateragarriaren bideko chunk-ek event lerroa eta data lerroa binaka dituzte.

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

chat/completions-eko chunk-ak data lerroen bidez iristen dira, eta amaieran data: [DONE] bere horretan igarotzen da.

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

data: [DONE]

Streaming-ean zehar errore bat gertatzen bada, ohiko deietan bezala, errorearen JSONa data: lerro bakar baten bidez bidaltzen da, eta HTTP egoera-kodea ere aldatzen da.

Ahots- eta voice-bideak

TTS·STT eta Cosa voice kudeatzeko bideak OpenAI bateragarriak dira, eta ohiko inferentziaren bestelako arau batzuk aplikatzen dira. Eredu bakoitzak zein bide onartzen duen jakiteko, begiratu modeloaren orrialdeko Cosa taula.

MetodoaBideaDeskribapena
POST/api/v2/aiservice/openai/v1/audio/speechTestua ahots bihurtzen du eta audioa zuzenean itzultzen du.
POST/api/v2/aiservice/openai/v1/audio/transcriptionsAudioa testura transkribatzen du (multipart).
POST/api/v2/aiservice/openai/v1/audio/speech/cloneAhots klonatuarekin ahotsa sintetizatzen du (multipart).
GET/api/v2/aiservice/openai/v1/voicesDeitzaileak erabil ditzakeen ahotsen zerrenda itzultzen du.
POST/api/v2/aiservice/openai/v1/voicesAhots bat erregistratzen du audio-lagin batekin (multipart).
POST/api/v2/aiservice/openai/v1/voices/designAhots sintetiko bat sortzen du deskribapen-testu batetik.
DELETE/api/v2/aiservice/openai/v1/voices/{voiceId}Ahotsa ezabatzen du. Jabeak soilik ezaba dezake.

Hurrengo arauak ahotsen bideei soilik aplikatzen zaizkie.

ArauaEdukia
Bitaren entregaaudio/speech, audio/speech/clone eta outputs/{filename} helbideen arrakasta-erantzunek audioa zuzenean bidaltzen dute eta, aldi berean, CleviDrive-n gordetzen dute.
Ordainagiriaren goiburuakX-Clevi-Drive-File-Id, X-Clevi-Drive-File-Version-Id, X-Clevi-Drive-Download-Url, X-Clevi-Drive-Expires-At eta X-Clevi-Drive-Retention-Days: 3 goiburuak sartzen dira erantzunean.
Product hautatzeaaudio/speech eta audio/transcriptions zerbitzuek Product hautatzen dute eskaeraren gorputzeko model erabiliz. Ahots- eta diagnostiko-bideek X-Product-Sku goiburua edo product_sku kontsulta-parametroa behar dute.
Ahotsen jabetzaKlonatutako edo erregistratutako ahotsak sortu dituen erakundearenak dira. Beste jabe baten ahotsarekin sintesia egiten edo ahotsa ezabatzen saiatuz gero, 403 itzultzen da, eta GET /voices zerrendan ere erabiltzailearen jabetzako ahotsak soilik sartzen dira.
Tamaina eta denboraEskaeren gehienezko muga 28 MiB da, eta upstream-eko deien denbora-muga 5 minutukoa da.
provider-en pilaketaUpstream-a pilatuta badago, 409 zuzenean helarazten da, eta Retry-After badago, balio hori ere helarazten da. Gateway-ak ez du berriro saiatzen, ezta eskaera ilaran jartzen ere.

Hizkuntza eta eskualdea

Makina bidez itzulitako hizkuntzak clevi/cip-5.5-im erabiliz itzultzen dira, eta hala markatzen dira. Hori argitaratutako webgunearen sorta duten hizkuntzei aplikatzen zaie.

137 hizkuntza

Gomendatua

1

Ekialdeko Asia

7

Hego-ekialdeko Asia

11

Hego Asia

18

Erdialdeko Asia

5

Ekialde Hurbila eta Kaukasoa

10

Mendebaldeko Europa eta Hego Europa

17

Erresuma Batua eta Irlanda

4

Ipar Europa

10

Erdialdeko Europa eta Balkanak

14

Ekialdeko Europa

5

Ekialdeko Afrika

8

Mendebaldeko Afrika eta Erdialdeko Afrika

9

Hegoaldeko Afrika

8

Amerika

5

Ozeania

5