Developer guide
ການຢືນຢັນຕົວຕົນດ້ວຍ API key
ສ່ວນຫົວທີ່ໃສ່ API key ແລະ base URL ທີ່ຈະຕັ້ງຄ່າໃນ SDK
CLEVI Gateway ຢືນຢັນຕົວຕົນສຳລັບເສັ້ນທາງທີ່ຮອງຮັບ OpenAI ແລະເສັ້ນທາງທີ່ຮອງຮັບ Anthropic ດ້ວຍ API key ດຽວ.
ຄ່າທີ່ຕ້ອງຕັ້ງຄ່າໃນລູກຂ່າຍມີສອງຢ່າງ: ສ່ວນຫົວການຢືນຢັນຕົວຕົນທີ່ໃສ່ key ແລະ base URL ຂອງ SDK, ໂດຍຮູບແບບສ່ວນຫົວແລະ base URL ທີ່ອະນຸຍາດຈະແຕກຕ່າງກັນຕາມຂໍ້ກຳນົດ.
ຫຼັງຈາກຕັ້ງຄ່າແລ້ວ ໃຫ້ສອບຖາມລາຍການໂມເດວເພື່ອກວດສອບການຢືນຢັນຕົວຕົນໄດ້ທັນທີ.
ຫາກການຢືນຢັນຕົວຕົນລົ້ມເຫຼວ ຈະສົ່ງຄືນ 401; ຖ້າຜ່ານການຢືນຢັນແລ້ວແຕ່ບໍ່ຜ່ານເງື່ອນໄຂດ້ານສິດທິຫຼືຂີດຈຳກັດ ຈະສົ່ງຄືນ 403.
ອອກ API key ໃນໜ້າ API key ຂອງຄອນໂຊນ. ໃນໜ້າດຽວກັນ ທ່ານສາມາດຈັດການການຍົກເລີກ key ແລະຂອບເຂດການນຳໃຊ້ໄດ້.
ສ່ວນຫົວການຢືນຢັນຕົວຕົນ
ທັງສອງຂໍ້ກຳນົດໃສ່ API key ໄວ້ໃນສ່ວນຫົວຂອງຄຳຮ້ອງຂໍພຽງອັນດຽວ. ໃຫ້ໃຊ້ X-API-Key ຫຼື Authorization ສ່ວນຫົວອັນໃດອັນໜຶ່ງ, ໂດຍຮູບແບບທີ່ອະນຸຍາດຈະແຕກຕ່າງກັນຕາມຂໍ້ກຳນົດ.
| ສ່ວນຫົວ | ຮອງຮັບ OpenAI | ຮອງຮັບ Anthropic |
|---|---|---|
| X-API-Key: <ຄີ> | ໃຊ້ໄດ້ | ໃຊ້ໄດ້ |
| Authorization: Bearer <ຄີ> | ໃຊ້ໄດ້ | ໃຊ້ໄດ້ |
| Authorization: <ຄີ> (ບໍ່ມີ Bearer) | ຖືກປະຕິເສດ | ໃຊ້ໄດ້ |
ເມື່ອໃຊ້ Authorization ສ່ວນຫົວໃນເສັ້ນທາງທີ່ຮອງຮັບ OpenAI ຕ້ອງມີຄຳນຳໜ້າ Bearer. ຖ້າສົ່ງພຽງ key ໂດຍບໍ່ມີຄຳນຳໜ້າ ເກດເວຂອງຈະປະຕິເສດຄຳຮ້ອງຂໍ.
ຊື່ສ່ວນຫົວບໍ່ແຍກຕົວພິມໃຫຍ່-ນ້ອຍ, ດັ່ງນັ້ນ x-api-key ສ່ວນຫົວທີ່ 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 ເຂົ້າໃນເສັ້ນທາງຄຳຮ້ອງຂໍໂດຍກົງ, ດັ່ງນັ້ນ base URL ຈະສິ້ນສຸດກ່ອນ /v1. |
ກວດສອບການຢືນຢັນຕົວຕົນ
ຫຼັງຈາກຕັ້ງຄ່າຄີ ແລະ base URL ແລ້ວ, ການເອີ້ນເບິ່ງລາຍການໂມເດວຈະຊ່ວຍຢືນຢັນວ່າການຮັບຮອງສິດສຳເລັດຫຼືບໍ່. ຕົວຢ່າງດ້ານລຸ່ມຈະດຳເນີນການຄົ້ນຫາດຽວກັນດ້ວຍ curl, OpenAI SDK ແລະ Anthropic SDK. ໃສ່ຄີທີ່ອອກໃຫ້ຈາກໜ້າຈໍ API ຄີແທນ sk-....
ເມື່ອຄົ້ນຫາດ້ວຍ curl, ໃຫ້ລະບຸເສັ້ນທາງເຕັມເຖິງ /v1/models ສຳລັບທັງສອງຮູບແບບ. ຄຳສັ່ງທຳອິດໃຊ້ສ່ວນຫົວ X-API-Key ສຳລັບເສັ້ນທາງທີ່ຮອງຮັບ OpenAI, ແລະຄຳສັ່ງທີສອງໃຊ້ສ່ວນຫົວ Authorization ສຳລັບເສັ້ນທາງທີ່ຮອງຮັບ Anthropic.
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"OpenAI SDK ໃຫ້ລະບຸທີ່ຢູ່ທີ່ລວມ /v1 ໄວ້ໃນ base_url.
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)Anthropic SDK ໃຫ້ລະບຸ base_url ເປັນທີ່ຢູ່ທີ່ສິ້ນສຸດກ່ອນ /v1.
ສຳລັບການຮັບຮອງສິດ ໃຫ້ໃຊ້ສ່ວນຫົວ x-api-key ທີ່ SDK ສົ່ງໄປໂດຍກົງ.
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)ສຳລັບຕົວຢ່າງໃດກໍຕາມ, ຖ້າການຕອບກັບເປັນ 200 ໝາຍຄວາມວ່າການຮັບຮອງສິດສຳເລັດ ແລະ data ໃນການຕອບກັບຈະບັນຈຸລາຍການໂມເດວທີ່ສາມາດເອີ້ນໃຊ້ດ້ວຍຄີນີ້. ຖ້າເປັນ 401 ໃຫ້ກວດຫາສາເຫດຕາມລຳດັບໃນພາກຕໍ່ໄປ.
ການຮັບຮອງສິດລົ້ມເຫຼວ
ຖ້າສົ່ງຄີທີ່ບໍ່ມີ, ໝົດອາຍຸ ຫຼືຖືກຍົກເລີກ, ຈະສົ່ງຄືນ 401. ເມື່ອເອີ້ນໃຊ້ເສັ້ນທາງທີ່ຮອງຮັບ OpenAI ໂດຍບໍ່ມີຄີ, ຈະສົ່ງຄືນເນື້ອໃນດ້ານລຸ່ມ, ແລະສຳລັບເສັ້ນທາງທີ່ຮອງຮັບ Anthropic, error.type ຈະເປັນ authentication_error.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}ຖ້າໄດ້ຮັບ 401 ໃຫ້ກວດສອບຕາມລຳດັບຕໍ່ໄປນີ້.
- ກວດສອບສະຖານະຂອງຄີຢູ່ໜ້າຈໍ API ຄີ. ຖ້າຄີໝົດອາຍຸ ຫຼືຖືກຍົກເລີກ, ໃຫ້ອອກຄີໃໝ່.
- ກວດສອບວ່າຊື່ສ່ວນຫົວແມ່ນ X-API-Key ຫຼື Authorization.
- ຖ້າໃຊ້ສ່ວນຫົວ Authorization ຢູ່ເສັ້ນທາງທີ່ຮອງຮັບ OpenAI, ໃຫ້ກວດສອບວ່າມີຄຳນຳໜ້າ Bearer ຫຼືບໍ່.
ຫຼັງຈາກແກ້ໄຂແລ້ວ, ໃຫ້ດຳເນີນການຄົ້ນຫາລາຍການໂມເດວໃນພາກການຢືນຢັນສິດອີກຄັ້ງ ແລະຢືນຢັນວ່າໄດ້ຮັບ 200.
ສ່ວນຫົວທີ່ໃຊ້ຮ່ວມກັນ
ສ່ວນຫົວຕໍ່ໄປນີ້ທັງໝົດເປັນທາງເລືອກ. ເພື່ອຕິດຕາມບັນຫາ, ແນະນຳໃຫ້ກຳນົດ X-Request-Id ໄວ້.
| ສ່ວນຫົວ | ຈຸດປະສົງ | ຖ້າລະເວັ້ນ |
|---|---|---|
| X-Request-Id | ຕົວລະບຸສຳລັບຕິດຕາມຄຳຂໍ. ເສັ້ນທາງທີ່ຮອງຮັບ Anthropic ຈະສົ່ງຄ່າດຽວກັນກັບຄືນໃນເຮດເດີ request-id ຂອງການຕອບກັບ. | ເຊີເວີເປັນຜູ້ອອກໃຫ້. |
| X-Region-Code | ກຳນົດຣີຈຽນທີ່ຈະໃຊ້ໃນການເອີ້ນ. | ແມ່ນ global. |
| X-Product-Sku (ສາມາດກຳນົດຜ່ານຄິວຣີ product_sku ໄດ້ເຊັ່ນກັນ) | ກຳນົດ Product SKU ທີ່ຈະໃຊ້ສຳລັບການຄິດຄ່າບໍລິການໂດຍກົງ. ເຮດເດີມີລຳດັບສູງກວ່າຄິວຣີ ແລະສ່ວນໃຫຍ່ໃຊ້ໃນເສັ້ນທາງສຽງ·ວອຍຊ໌. | ໃນເສັ້ນທາງວອຍຊ໌ ບໍ່ສາມາດລະເວັ້ນໄດ້. audio/speech ແລະ audio/transcriptions ເລືອກ Product ຜ່ານ model ໃນເນື້ອໃນຄຳຂໍ. |
| anthropic-version / anthropic-beta | ສົ່ງຕໍ່ຕາມເດີມໃນເສັ້ນທາງທີ່ຮອງຮັບ Anthropic. | ເວີຊັນແມ່ນ 2023-06-01. |
ຖ້າ 5xx ເກີດຊ້ຳໆ ກະລຸນາແຈ້ງຜ່ານສູນຊ່ວຍເຫຼືອແລະຊ່ອງທາງຕິດຕໍ່ ພ້ອມກັບ X-Request-Id. ຖ້າເປັນຄ່າທີ່ກຳນົດໂດຍກົງ ສາມາດກວດທຽບກັບບັນທຶກຂອງຄລາຍເອັນໄດ້ໂດຍກົງ.