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 ಇದ್ದರೆ ಆ ಮೌಲ್ಯವನ್ನೂ ಸಹ ಹಿಂತಿರುಗಿಸಲಾಗುತ್ತದೆ. ಗೇಟ್ವೇ ಮರುಪ್ರಯತ್ನಿಸುವುದಿಲ್ಲ ಅಥವಾ ಸರದಿಗೆ ಸೇರಿಸುವುದಿಲ್ಲ. |
