Developer guide
API açarı ilə autentifikasiya
API açarının əlavə ediləcəyi başlıq və SDK-da təyin ediləcək base URL
Bu səhifədə CLEVI şlüzündə API açarı ilə autentifikasiyanın necə həyata keçirildiyi izah olunur.
Həm OpenAI uyğun, həm də Anthropic uyğun yollar üçün bir açarla autentifikasiya edilir,
lakin açarın əlavə ediləcəyi başlığın qəbul edilən variantları və SDK-da təyin ediləcək base URL spesifikasiyaya görə fərqlənir.
Autentifikasiya başlığı
Hər iki uyğun spesifikasiya üçün bir API açarı ilə autentifikasiya edilir. Açar konsolun API açarları səhifəsində verilir və ləğvetmə ilə istifadə əhatəsi də həmin səhifədə idarə olunur.
| Başlıq | OpenAI uyğun | Anthropic uyğun |
|---|---|---|
| X-API-Key: <açar> | İstifadə edilə bilər | İstifadə edilə bilər |
| Authorization: Bearer <açar> | İstifadə edilə bilər | İstifadə edilə bilər |
| Authorization: <açar> (Bearer olmadan) | Rədd edilir | İstifadə edilə bilər |
Başlıq adlarında böyük-kiçik hərf fərqi yoxdur. Anthropic SDK-nın göndərdiyi x-api-key də olduğu kimi işləyir.
base URL
İstifadə etdiyiniz SDK-nı yalnız base URL-i aşağıdakı ünvana dəyişməklə olduğu kimi istifadə edə bilərsiniz. İki ünvanın /v1 ehtiva edib-etməməsi fərqlidir.
| Spesifikasiya | base URL | Yol qaydası |
|---|---|---|
| OpenAI uyğun | https://platform.clevi.net/api/v2/aiservice/openai/v1 | /v1 base URL-ə daxil edilir. |
| Anthropic uyğun | https://platform.clevi.net/api/v2/aiservice/anthropic | Anthropic SDK yola /v1-i özü əlavə etdiyinə görə /v1-dən əvvəl bitir. |
Autentifikasiyanın yoxlanılması
Açarı və base URL-i əlavə edib modellər siyahısını sorğuladıqda autentifikasiyanın vəziyyətini dərhal öyrənə bilərsiniz. Aşağıdakı üç nümunə eyni sorğunu curl, OpenAI SDK və Anthropic SDK ilə yerinə yetirir.
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-... yerinə API açarları səhifəsində verilmiş açarı daxil edin.
- Cavab 200 olarsa, autentifikasiya uğurla tamamlanıb. data sahəsində bu açarla çağırıla bilən modellərin siyahısı olur.
- Cavab 401 olarsa, aşağıdakı autentifikasiya uğursuzluğu bölməsindəki ardıcıllıqla yoxlayın.
Birlikdə istifadə edilən başlıqlar
Hamısı seçimə bağlıdır. Problemi izləmək üçün X-Request-Id əlavə etmək məsləhətdir.
| Başlıq | İstifadə məqsədi | Buraxıldıqda |
|---|---|---|
| X-Request-Id | Sorğunun izlənməsi üçün identifikator. Anthropic uyğun cavabında request-id başlığı kimi geri qaytarılır. | Server tərəfindən verilir. |
| X-Region-Code | Çağırış regionu | global olur. |
| X-Product-Sku (sorğu parametrində product_sku kimi də mümkündür) | Ödəniş üçün istifadə ediləcək Product SKU-nu birbaşa təyin edir. Başlıq sorğu parametrindən üstündür və əsasən səs·voice marşrutlarında istifadə olunur. | Voice marşrutlarında tələb olunur. audio/speech və audio/transcriptions Product seçimini mətn daxilindəki model ilə edir. |
| anthropic-version / anthropic-beta | Anthropic uyğun marşrutunda olduğu kimi ötürülür. | Versiya 2023-06-01-dir. |
Autentifikasiya uğursuz oldu
Açar göndərilmədikdə və ya müddəti bitmiş·ləğv edilmiş açar göndərildikdə 401 qaytarılır. OpenAI uyğun marşrutunda açarsız çağırış etdikdə aşağıdakı məzmun, Anthropic uyğun marşrutunda isə error.type olaraq authentication_error qaytarılır.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}- API açarları səhifəsində açarın vəziyyətini yoxlayın. Müddəti bitmiş və ya ləğv edilmiş açardırsa, yenisini yaradın.
- Başlıq adının X-API-Key və ya Authorization olduğunu yoxlayın.
- OpenAI uyğun marşrutunda Authorization istifadə edirsinizsə, Bearer prefiksini yoxlayın.
