Developer guide
API कुंजी से प्रमाणित करना
API कुंजी डालने वाला हेडर और SDK में सेट किया जाने वाला base URL
यह पृष्ठ CLEVI गेटवे में API कुंजी से प्रमाणित करने का तरीका बताता है।
OpenAI संगत पथ और Anthropic संगत पथ—दोनों में एक ही कुंजी से प्रमाणित किया जाता है,
लेकिन कुंजी डालने वाले हेडर की स्वीकार्य सीमा और SDK में सेट किया जाने वाला base URL प्रत्येक विनिर्देश के अनुसार अलग होता है।
प्रमाणीकरण हेडर
दोनों संगत विनिर्देशों में एक ही API कुंजी से प्रमाणित किया जाता है। कुंजी कंसोल की API कुंजी स्क्रीन से जारी की जाती है, और उसी स्क्रीन पर उसे रद्द करने तथा उसके उपयोग का दायरा प्रबंधित किया जाता है।
| हेडर | OpenAI संगत | Anthropic संगत |
|---|---|---|
| X-API-Key: <कुंजी> | उपलब्ध | उपलब्ध |
| Authorization: Bearer <कुंजी> | उपलब्ध | उपलब्ध |
| Authorization: <कुंजी> (Bearer के बिना) | अस्वीकृत | उपलब्ध |
हेडर नाम में बड़े और छोटे अक्षरों का अंतर नहीं किया जाता। Anthropic SDK द्वारा भेजा जाने वाला x-api-key भी वैसे ही काम करता है।
base URL
आप जिस SDK का उपयोग कर रहे हैं, उसमें केवल base URL को नीचे दिए गए पते पर बदलने से वह वैसे ही काम करेगा। दोनों पतों में अंतर यह है कि उनमें /v1 शामिल है या नहीं।
| विनिर्देश | base URL | पथ नियम |
|---|---|---|
| OpenAI संगत | https://platform.clevi.net/api/v2/aiservice/openai/v1 | /v1 तक base URL में शामिल करें। |
| Anthropic संगत | https://platform.clevi.net/api/v2/aiservice/anthropic | Anthropic SDK पथ में /v1 स्वयं जोड़ता है, इसलिए यह /v1 से पहले समाप्त होता है। |
प्रमाणीकरण की जाँच
कुंजी और base URL डालकर मॉडल सूची प्राप्त करने पर तुरंत पता चल जाता है कि प्रमाणीकरण हुआ है या नहीं। नीचे दिए गए तीनों उदाहरण curl, OpenAI SDK और Anthropic SDK से एक ही सूची प्राप्त करते हैं।
curl https://platform.clevi.net/api/v2/aiservice/openai/v1/models \
-H "X-API-Key: sk-..."
curl https://platform.clevi.net/api/v2/aiservice/anthropic/v1/models \
-H "Authorization: Bearer sk-..." \
-H "anthropic-version: 2023-06-01"from openai import OpenAI
client = OpenAI(
api_key="sk-...",
base_url="https://platform.clevi.net/api/v2/aiservice/openai/v1",
)
for model in client.models.list():
print(model.id)from anthropic import Anthropic
client = Anthropic(
api_key="sk-...",
base_url="https://platform.clevi.net/api/v2/aiservice/anthropic",
)
for model in client.models.list(limit=20).data:
print(model.id)sk-... की जगह API कुंजी स्क्रीन से जारी की गई कुंजी डालें।
- यदि प्रतिक्रिया 200 है, तो प्रमाणीकरण सफल है। data में इस कुंजी से कॉल किए जा सकने वाले मॉडलों की सूची होती है।
- यदि प्रतिक्रिया 401 है, तो नीचे दिए गए प्रमाणीकरण विफलता अनुभाग के क्रम के अनुसार जाँच करें।
साथ में उपयोग किए जाने वाले हेडर
ये सभी वैकल्पिक हैं। समस्याओं को ट्रैक करने के लिए X-Request-Id शामिल करना बेहतर है।
| हेडर | उपयोग | छोड़ने पर |
|---|---|---|
| X-Request-Id | अनुरोध ट्रैक करने के लिए पहचानकर्ता। Anthropic-संगत प्रतिक्रियाओं में यह request-id हेडर के रूप में वापस आता है। | इसे सर्वर जारी करता है। |
| X-Region-Code | कॉल क्षेत्र | global होता है। |
| X-Product-Sku (क्वेरी product_sku के रूप में भी संभव) | बिलिंग के लिए उपयोग किया जाने वाला Product SKU सीधे निर्दिष्ट करता है। हेडर को क्वेरी पर प्राथमिकता प्राप्त है और इसका उपयोग मुख्य रूप से वॉइस पथों में किया जाता है। | वॉइस पथों में आवश्यक है। audio/speech और audio/transcriptions में बॉडी के model से Product चुना जाता है। |
| anthropic-version / anthropic-beta | Anthropic-संगत पथ में इसे उसी रूप में आगे भेजा जाता है। | संस्करण 2023-06-01 है। |
प्रमाणीकरण विफल
यदि कुंजी मौजूद नहीं है या समाप्त हो चुकी अथवा रद्द की गई कुंजी भेजी जाती है, तो 401 प्राप्त होता है। OpenAI-संगत पथ में बिना कुंजी के कॉल करने पर नीचे दिया गया बॉडी प्राप्त होता है, और Anthropic-संगत पथ के error.type का मान authentication_error होता है।
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}- API कुंजी स्क्रीन पर कुंजी की स्थिति जाँचें। यदि कुंजी समाप्त या रद्द हो गई है, तो नई कुंजी जारी करें।
- जाँचें कि हेडर का नाम X-API-Key या Authorization है।
- यदि OpenAI-संगत पथ में Authorization का उपयोग कर रहे हैं, तो Bearer उपसर्ग जाँचें।
