Developer guide
API түлхүүрээр баталгаажуулах
API түлхүүр оруулах толгой хэсэг болон SDK-д тохируулах base URL
Энэ хуудсанд CLEVI gateway-д 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 (мөн query product_sku хэлбэрээр ашиглаж болно) | Төлбөр тооцоонд ашиглах Product SKU-г шууд заана. Толгой хэсэг нь query-ээс давуу бөгөөд ихэвчлэн дуу·voice замд ашиглана. | Voice замд шаардлагатай. audio/speech болон audio/transcriptions нь хүсэлтийн body дахь model-оор Product-ийг сонгоно. |
| anthropic-version / anthropic-beta | Anthropic-тэй нийцтэй замд өөрчлөлтгүй дамжуулагдана. | Хувилбар нь 2023-06-01 байна. |
Баталгаажуулалтын алдаа
Түлхүүр байхгүй, хугацаа нь дууссан эсвэл хүчингүй болсон түлхүүр илгээвэл 401 гарна. OpenAI-тэй нийцтэй замд түлхүүргүй дуудлага хийхэд доорх body ирэх бөгөөд Anthropic-тэй нийцтэй замын error.type нь authentication_error байна.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}- API түлхүүрийн дэлгэцээс түлхүүрийн төлөвийг шалгана. Хугацаа нь дууссан эсвэл хүчингүй болсон түлхүүр байвал шинээр үүсгэнэ.
- Толгой хэсгийн нэр X-API-Key эсвэл Authorization эсэхийг шалгана.
- OpenAI-тэй нийцтэй замд Authorization ашиглаж байвал Bearer угтварыг шалгана.
