Developer guide
API कॉल करणे
API-सुसंगत मार्ग आणि स्ट्रीमिंग व व्हॉइस नियम
हे पृष्ठ प्रमाणीकरण पूर्ण केल्यानंतर प्रत्यक्ष कॉल करण्याच्या मार्गांबद्दल आहे.
OpenAI-सुसंगत मार्ग आणि Anthropic-सुसंगत मार्गांची यादी, विनंतीच्या मुख्य भागात stream सुरू केल्यावर प्रतिसाद मिळण्याची पद्धत,
आणि केवळ व्हॉइस व व्हॉइस मार्गांना लागू होणाऱ्या नियमांचा क्रम येथे दिला आहे.
मॉडेल ID आणि प्रत्येक मॉडेलसाठी अनुमत कॉल मॉडेल पृष्ठावर आहेत, तर प्रमाणीकरण हेडर आणि base URL API कीने प्रमाणीकरण करणे या पृष्ठावर आहेत.
प्रगतीचे मार्ग
दोन्ही सुसंगत मानके समान API की वापरतात आणि संवादात्मक तर्क मॉडेलना कोणत्याही मानकाद्वारे कॉल करता येते. तुम्हाला करायच्या कामानुसार आणि तुम्ही वापरत असलेल्या SDK नुसार मार्ग निवडा.
| करायचे काम | मानक | मार्ग |
|---|---|---|
| संवादात्मक तर्क, OpenAI SDK वापरणे | OpenAI-सुसंगत | POST /chat/completions किंवा POST /responses |
| संवादात्मक तर्क, Anthropic SDK वापरणे | Anthropic-सुसंगत | POST /v1/messages |
| एम्बेडिंग तयार करणे | OpenAI-सुसंगत | POST /embeddings |
| व्हॉइस संश्लेषण व लिप्यंतरण, व्हॉइस व्यवस्थापन | OpenAI-सुसंगत | /audio आणि /voices अंतर्गत मार्ग |
| कॉल करता येणारी मॉडेल तपासणे | दोन्ही | GET /models |
OpenAI-सुसंगत मार्ग
base URL https://platform.clevi.net/api/v2/aiservice/openai/v1 आहे आणि विनंती व प्रतिसादाचे मुख्य भाग OpenAI मानकाचे अनुसरण करतात. खालील तक्त्यात तर्क आणि मॉडेल मार्ग दिले आहेत, तर व्हॉइस व व्हॉइस मार्ग पुढील विभागात स्वतंत्रपणे संकलित केले आहेत.
| पद्धत | मार्ग | वर्णन |
|---|---|---|
| POST | /api/v2/aiservice/openai/v1/chat/completions | संवादी अनुमान. stream सुरू केल्यास SSE द्वारे प्रतिसाद दिला जातो. |
| POST | /api/v2/aiservice/openai/v1/responses | Responses मानकानुसार कॉल. stream समर्थित आहे. |
| GET | /api/v2/aiservice/openai/v1/responses/{responseId} | संग्रहित प्रतिसादातील एक नोंद मिळवते. |
| GET | /api/v2/aiservice/openai/v1/responses/{responseId}/input_items | संग्रहित प्रतिसादातील इनपुट आयटमची सूची. |
| POST | /api/v2/aiservice/openai/v1/responses/{responseId}/cancel | पार्श्वभूमीत सुरू असलेला प्रतिसाद रद्द करते. |
| DELETE | /api/v2/aiservice/openai/v1/responses/{responseId} | संग्रहित प्रतिसाद हटवते. |
| POST | /api/v2/aiservice/openai/v1/completions | लेगसी मजकूर पूर्णता. stream समर्थित आहे. |
| POST | /api/v2/aiservice/openai/v1/embeddings | एम्बेडिंग तयार करणे. स्ट्रीमिंग समर्थित नाही. |
| GET | /api/v2/aiservice/openai/v1/models | या कीद्वारे कॉल करता येणाऱ्या मॉडेलची सूची. |
| GET | /api/v2/aiservice/openai/v1/models/{modelId} | एका मॉडेलची माहिती मिळवते. प्रवेश करता येत नसल्यास 404 मिळते. |
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": "안녕하세요"}]
}'sk-... च्या जागी API की स्क्रीनवर जारी केलेली की आणि model मध्ये मॉडेल पृष्ठावरील ID प्रविष्ट करा.
इतर मार्ग
| मार्ग | वर्णन |
|---|---|
| GET /api/v2/aiservice/openai/v1/healthz | व्हॉइस provider ची स्थिती तपासते. |
| /api/v2/aiservice/openai/v1/api/status · /api/options · /api/generate · /outputs/{filename} | लेगसी Cosa ची स्थिती व पर्याय मिळवणे, निर्मिती कॉल (multipart), आणि आउटपुट डाउनलोड करणे. |
| /api/v2/aiservice/openai/v1/{routeKey} (GET · POST · PUT · PATCH · DELETE) | वर नमूद नसलेल्या provider मार्गांना नियम लागू करून रिले करते. POST रिलेने chat/completions, completions, embeddings, responses कॉल केल्यास 404 मिळतो; हे चार मार्ग स्वतंत्र मार्गांद्वारे हाताळले जातात. |
Anthropic-सुसंगत मार्ग
base URL https://platform.clevi.net/api/v2/aiservice/anthropic आहे आणि Anthropic SDK मार्गामध्ये /v1 आपोआप जोडते. विनंती आणि प्रतिसादाचे मुख्य भाग Anthropic Messages विनिर्देशाचे पालन करतात.
| पद्धत | मार्ग | वर्णन |
|---|---|---|
| POST | /api/v2/aiservice/anthropic/v1/messages | Messages विनिर्देशानुसार कॉल. model·messages·max_tokens आवश्यक आहेत आणि stream समर्थित आहे. |
| POST | /api/v2/aiservice/anthropic/v1/messages/count_tokens | शुल्क न आकारता केवळ इनपुट टोकनची संख्या अंदाजित करते. max_tokens आवश्यक नाही. |
| GET | /api/v2/aiservice/anthropic/v1/models | कर्सर पेजिनेशनसह मॉडेलची सूची. limit 1~1000 दरम्यान असतो; मर्यादेबाहेर असल्यास 400 मिळतो. |
| GET | /api/v2/aiservice/anthropic/v1/models/{modelId} | एका मॉडेलची माहिती मिळवणे. प्रवेश करता न आल्यास 404 मिळतो. |
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": "안녕하세요"}]
}'स्ट्रीमिंग (SSE)
विनंतीच्या मुख्य भागात "stream": true समाविष्ट केल्यास सर्व्हर Server-Sent Events द्वारे प्रतिसाद देतो. मार्ग आणि मॉडेलनुसार ते खालीलप्रमाणे वेगळे असते.
| लक्ष्य | कृती |
|---|---|
| OpenAI सुसंगत POST /chat/completions · POST /completions · POST /responses | stream समर्थित आहे. |
| Anthropic सुसंगत POST /v1/messages | stream समर्थित आहे. |
| POST /embeddings | स्ट्रीमिंग समर्थित नाही. |
| Ivy शोध मालिकेतील मॉडेल्स (ivy-4-mm-search इत्यादी) | stream सुरू केले तरी सर्व्हर ते बंद करून एकाच वेळी प्रतिसाद देतो. |
| GET /responses/{responseId}?stream=true | 400 सह नाकारले जाते. पार्श्वभूमीतील प्रतिसादाचा वापर अचूकपणे केवळ एकदाच मोजता येईपर्यंत हा मार्ग बंद ठेवण्यात आला आहे. |
पहिल्या चंकसोबत खालील तीन हेडर्स पाठवले जातात. त्यानंतर प्रत्येक चंकसोबत event: ओळ (अपस्ट्रीमने इव्हेंटचे नाव दिले असल्यासच) आणि data: ओळ पाठवून त्वरित flush केले जाते.
- Content-Type: text/event-stream
- Cache-Control: no-cache
- X-Accel-Buffering: no
Anthropic सुसंगत मार्गावरील चंक्समध्ये event ओळ आणि data ओळ जोडीने येतात.
event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"안"}}chat/completions चे चंक्स data ओळीच्या स्वरूपात येतात आणि शेवटी data: [DONE] जसेच्या तसे पाठवले जाते.
data: {"id":"chatcmpl-...","object":"chat.completion.chunk","choices":[...]}
data: [DONE]आवाज आणि व्हॉइस मार्ग
TTS·STT आणि Cosa व्हॉइस व्यवस्थापन मार्ग OpenAI सुसंगत विनिर्देशात आहेत आणि सामान्य अनुमानापेक्षा त्यांचे काही नियम वेगळे आहेत. कोणते मॉडेल कोणता मार्ग अनुमत करते, हे मॉडेल पृष्ठावरील Cosa तक्त्यात दिले आहे.
| पद्धत | मार्ग | वर्णन |
|---|---|---|
| POST | /api/v2/aiservice/openai/v1/audio/speech | मजकूराचे आवाजात संश्लेषण करून ऑडिओ थेट डाउनलोड करा. |
| POST | /api/v2/aiservice/openai/v1/audio/transcriptions | ऑडिओचे मजकुरात लिप्यंतरण करा (multipart). |
| POST | /api/v2/aiservice/openai/v1/audio/speech/clone | क्लोन केलेल्या आवाजाने आवाजाचे संश्लेषण करा (multipart). |
| GET | /api/v2/aiservice/openai/v1/voices | मी वापरू शकत असलेल्या आवाजांची यादी. |
| POST | /api/v2/aiservice/openai/v1/voices | ऑडिओ नमुन्याद्वारे आवाज नोंदणी करा (multipart). |
| POST | /api/v2/aiservice/openai/v1/voices/design | वर्णनावरून संश्लेषित आवाज तयार करा. |
| DELETE | /api/v2/aiservice/openai/v1/voices/{voiceId} | आवाज हटवा. हे केवळ मालकासाठी शक्य आहे. |
| नियम | सामग्री |
|---|---|
| बायनरी हस्तांतरण | 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 पाठवले जातात. संचयन कालावधी 3 दिवसांचा असून त्यानंतर 404 मिळतो. |
| Product निवड | audio/speech आणि audio/transcriptions साठी मजकुरातील model वापरून Product निवडला जातो. व्हॉइस·निदान मार्गांसाठी X-Product-Sku हेडर किंवा product_sku क्वेरी आवश्यक आहे. |
| व्हॉइस मालकी | क्लोन केलेले·नोंदणीकृत व्हॉइस तयार करणाऱ्या घटकाच्या मालकीचे असतात. दुसऱ्याच्या व्हॉइसने संश्लेषण करण्याचा किंवा तो हटवण्याचा प्रयत्न केल्यास 403 मिळतो आणि GET /voices यादीतही केवळ स्वतःच्या मालकीचे व्हॉइस ठेवले जातात. |
| आकार आणि वेळ | विनंतीची कमाल मर्यादा 28 MiB असून, अपस्ट्रीम कॉलची वेळमर्यादा 5 मिनिटे आहे. |
| provider गर्दी | अपस्ट्रीम व्यस्त असल्यास 409 जशास तसा पाठवला जातो आणि Retry-After दिल्यास ते मूल्यही त्यासोबत पाठवले जाते. गेटवे पुन्हा प्रयत्न करत नाही किंवा रांगेत ठेवत नाही. |
