Az Azure OpenAI szolgáltatáskvóta kezelése
A kvóta lehetővé teszi, hogy aktívan kezelje a díjkorlátok kiosztását az előfizetésen belüli üzemelő példányok között. Ez a cikk végigvezeti az Azure OpenAI-kvóta kezelésének folyamatán.
Előfeltételek
Fontos
Az elérhető kvóta megtekintését igénylő feladatok esetében a Cognitive Services Használati adatok olvasó szerepkör használatát javasoljuk. Ez a szerepkör biztosítja az Azure-előfizetések kvótahasználatának megtekintéséhez szükséges minimális hozzáférést. Ha többet szeretne megtudni erről a szerepkörről és az Azure OpenAI-hoz való hozzáféréshez szükséges egyéb szerepkörökről, tekintse meg az Azure szerepköralapú hozzáférésről (Azure RBAC) szóló útmutatót.
Ez a szerepkör az Azure Portal Előfizetések>hozzáférés-vezérlése (IAM)> területén található.Szerepkör-hozzárendelési> keresés hozzáadása a Cognitive Services-használati olvasóhoz. Ezt a szerepkört az előfizetés szintjén kell alkalmazni, az erőforrás szintjén nem létezik.
Ha nem szeretné használni ezt a szerepkört, az előfizetés-olvasó szerepkör egyenértékű hozzáférést biztosít, de olvasási hozzáférést is biztosít a kvóta és a modell üzembe helyezésének megtekintéséhez szükséges hatókörön túl.
Bevezetés a kvóta használatába
Az Azure OpenAI kvótafunkciója lehetővé teszi a sebességkorlátok hozzárendelését az üzemelő példányokhoz, akár a "kvóta" nevű globális korlátig. A kvótát régiónként, modellenkénti alapon rendeli hozzá az előfizetéshez a tokenek percenkénti (TPM) egységében. Amikor előfizetést készít az Azure OpenAI-ra, a legtöbb elérhető modellhez alapértelmezett kvótát fog kapni. Ezután minden üzembe helyezéshez hozzá fog rendelni TPM-et a létrehozásukkor, és a modellhez rendelkezésre álló kvóta ezzel az összeggel csökken. Továbbra is létrehozhat üzembe helyezéseket, és hozzárendelheti őket TPM-hez, amíg el nem éri a kvótakorlátot. Ha ez megtörténik, a modell új üzembe helyezését csak úgy hozhatja létre, ha csökkenti az ugyanazon modell más üzemelő példányaihoz rendelt TPM-et (így felszabadítja a TPM-et használat céljából), vagy a kívánt régióban a modellkvóta növelésének kérelmezésével és jóváhagyásával.
Feljegyzés
Az USA keleti régiójában a GPT-35-Turbo esetében 240 000 TPM-es kvótával az ügyfelek egyetlen, 240 000 TPM-es üzembe helyezést, egyenként 2 120 000 TPM-et vagy egy vagy több Azure OpenAI-erőforráson belüli üzembe helyezést hozhatnak létre, amennyiben a TPM-jük összesen kevesebb mint 240 000 TPM-et ad hozzá az adott régióban.
Az üzembe helyezés létrehozásakor a hozzárendelt TPM közvetlenül megfelelteti a jogkivonatok percenkénti sebességkorlátját, amelyet a következtetési kérések érvénybe léptetnek. A rendszer egy percenkénti kérések (RPM) sebességkorlátot is kikényszeríteni fog, amelynek értéke a TPM-hozzárendeléssel arányosan van beállítva a következő arány használatával:
6 RPM/1000 TPM.
A TPM globális elosztásának rugalmassága egy előfizetésen és régión belül lehetővé tette, hogy az Azure OpenAI Szolgáltatás enyhítse az egyéb korlátozásokat:
- A régiónkénti erőforrások maximális száma 30-ra nő.
- Az erőforrásban lévő ugyanazon modell egynél több üzembe helyezésének létrehozására vonatkozó korlát el lett távolítva.
Kvóta hozzárendelése
Modelltelepítés létrehozásakor lehetősége van jogkivonatok percenkénti (TPM) hozzárendelésére az adott üzembe helyezéshez. A TPM 1000 növekményesen módosítható, és megfelelteti az üzembe helyezéskor érvényes TPM- és RPM-sebességkorlátoknak, ahogy azt fentebb említettük.
Ha új üzembe helyezést szeretne létrehozni az Azure AI Studio-ból, válassza az Üzembe helyezési>modell üzembe helyezése alapmodell>>kiválasztása Modell>megerősítése lehetőséget.
Az üzembe helyezés után módosíthatja a TPM-foglalást úgy, hogy kiválasztja és szerkeszti a modellt az Azure AI Studio Üzembe helyezési lapján. Ezt a beállítást a Felügyeleti>modell kvóta lapján is módosíthatja.
Fontos
A kvóták és a korlátok változhatnak, a legfrissebb információkért tekintse meg a kvótákat és korlátokat ismertető cikkünket.
Modellspecifikus beállítások
A különböző modelltelepítések, más néven modellosztályok egyedi maximális TPM-értékekkel rendelkeznek, amelyeket most már szabályozhat. Ez az adott régióban az adott modelltelepítéshez lefoglalható maximális TPM-mennyiséget jelenti.
Minden más modellosztály közös maximális TPM-értékkel rendelkezik.
Feljegyzés
A kvótajogkivonatok percenkénti (TPM) lefoglalása nem kapcsolódik a modell maximális bemeneti jogkivonat-korlátjaihoz. A modell bemeneti jogkivonatának korlátai a modelltáblában vannak meghatározva, és nem érintik a TPM módosításai.
Kvóta megtekintése és kérése
Ha egy adott régióban lévő központi telepítésekre vonatkozóan szeretné áttekinteni a kvótakiosztásokat, válassza a Felügyeleti>kvótát az Azure AI Studióban:
- Üzembe helyezés: Modelltelepítések modellosztály szerint osztva.
- Kvótatípus: Minden modelltípushoz régiónként egy kvótaérték tartozik. A kvóta a modell összes verzióját lefedi.
- Kvótakiosztás: A kvótanév esetében ez azt mutatja, hogy az üzemelő példányok mennyi kvótát használnak fel, valamint az előfizetéshez és régióhoz jóváhagyott teljes kvótát. Ez a felhasznált kvótamennyiség a sávdiagramon is megjelenik.
- Kérelemkvóta: Az ikon egy űrlapra navigál, ahol a kvótanövelési kérelmek elküldhetők.
Meglévő üzemelő példányok migrálása
Az új kvótarendszerre és a TPM-alapú kiosztásra való áttérés részeként az összes meglévő Azure OpenAI-modell üzembe helyezése automatikusan át lett migrálva a kvóta használatára. Azokban az esetekben, amikor a meglévő TPM/RPM-foglalás túllépi az alapértelmezett értékeket a korábbi egyéni sebességkorlát-növekedések miatt, a rendszer egyenértékű TPM-et rendelt az érintett üzemelő példányokhoz.
A sebességkorlátok ismertetése
A TPM üzembe helyezéshez való hozzárendelése beállítja a tokenek percenkénti (TPM) és a percenkénti kérések (RPM) sebességkorlátjait az üzembe helyezéshez, a fent leírtak szerint. A TPM-sebességkorlátok azon jogkivonatok maximális számán alapulnak, amelyeket egy kérés a kérés beérkezésének időpontjában feldolgozni fog. Ez nem ugyanaz, mint a számlázáshoz használt jogkivonatok száma, amelyet az összes feldolgozás befejezése után számítunk ki.
Az Azure OpenAI az egyes kérések beérkezésekor kiszámítja a feldolgozott tokenek becsült maximális számát, amely a következőket tartalmazza:
- Szöveg és darabszám kérése
- A max_tokens paraméterbeállítás
- A best_of paraméterbeállítás
Amikor a kérések bekerülnek az üzembehelyezési végpontba, a rendszer hozzáadja a becsült maximálisan feldolgozott jogkivonatok számát a percenként alaphelyzetbe álló összes kérés futó tokenszámához. Ha ebben a percben bármikor eléri a TPM sebességkorlátját, a további kérések 429-es válaszkódot kapnak, amíg a számláló alaphelyzetbe nem áll.
Fontos
A sebességkorlát kiszámításához használt jogkivonatok száma részben az API-kérés karakterszámán alapuló becslés. A sebességkorlát-jogkivonat becslése nem ugyanaz, mint a számlázáshoz használt jogkivonat-számítás,illetve annak meghatározása, hogy a kérés a modell bemeneti jogkivonat-korlátja alatt van-e. A sebességkorlát-jogkivonat számításának hozzávetőleges jellege miatt várható, hogy a sebességkorlát az egyes kérések pontos tokenszámának mérésével összehasonlítva a vártnál előbb aktiválható.
Az RPM sebességkorlátjai az idő múlásával fogadott kérések számán alapulnak. A sebességkorlát arra számít, hogy a kérések egyenletesen oszlanak el egyperces időszak alatt. Ha ez az átlagos folyamat nem tartható fenn, akkor a kérések 429-választ kaphatnak annak ellenére, hogy a korlát nem teljesül, ha egy perc alatt mérik. Ennek a viselkedésnek a megvalósítása érdekében az Azure OpenAI Szolgáltatás kiértékeli a bejövő kérések arányát egy kis idő alatt, általában 1 vagy 10 másodperc alatt. Ha az adott időszakban beérkezett kérelmek száma meghaladja a megadott RPM-korlátnál elvárt értéket, akkor az új kérések a következő értékelési időszakig 429 válaszkódot kapnak. Ha például az Azure OpenAI 1 másodperces időközönként figyeli a kérelmek sebességét, akkor a sebességkorlátozás 600 RPM-alapú üzemelő példány esetén történik, ha minden 1 másodperces időszakban több mint 10 kérés érkezik (percenként 600 kérelem = 10 kérés másodpercenként).
Ajánlott díjszabási eljárások
A sebességkorlátokkal kapcsolatos problémák minimalizálása érdekében érdemes az alábbi technikákat használni:
- Állítsa max_tokens és best_of a forgatókönyv igényeinek megfelelő minimális értékekre. Például ne állítson be nagy maximális jogkivonatértéket, ha a válaszok kicsinek számítanak.
- Kvótakezeléssel növelheti a TPM-et a nagy forgalmú üzemelő példányokon, és csökkentheti a TPM-et a korlátozott igényű üzemelő példányokon.
- Implementáljon újrapróbálkozási logikát az alkalmazásba.
- Kerülje a hirtelen terhelésváltásokat. Fokozatosan növelje a munkaterhelést.
- Teszteljen különböző terhelésnövelési mintákat.
Üzembe helyezés automatizálása
Ez a szakasz rövid példasablonokat tartalmaz, amelyek segítségével programozott módon hozhat létre olyan üzembe helyezéseket, amelyek kvótát használnak a TPM-sebességkorlátok beállításához. A kvóta bevezetésével az API-verziót 2023-05-01
kell használnia az erőforrás-kezeléssel kapcsolatos tevékenységekhez. Ez az API-verzió csak az erőforrások kezelésére szolgál, és nem befolyásolja a hívások következtetéséhez használt API-verziót, például a befejezéseket, a csevegés befejezését, a beágyazást, a képgenerálást stb.
Telepítés
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/deployments/{deploymentName}?api-version=2023-05-01
Elérésiút-paraméterek
Paraméter | Típus | Kötelező? | Leírás |
---|---|---|---|
accountName |
húr | Szükséges | Az Azure OpenAI-erőforrás neve. |
deploymentName |
húr | Szükséges | Az üzembe helyezési név, amelyet egy meglévő modell üzembe helyezésekor választott, vagy az a név, amelyet egy új modell üzembe helyezésekor szeretne használni. |
resourceGroupName |
húr | Szükséges | A modell üzembe helyezéséhez társított erőforráscsoport neve. |
subscriptionId |
húr | Szükséges | A társított előfizetés előfizetés-azonosítója. |
api-version |
húr | Szükséges | A művelethez használandó API-verzió. Az ÉÉÉÉ-HH-NN formátumot követi. |
Támogatott verziók
2023-05-01
Swagger specifikáció
Kérelem törzse
Ez csak a rendelkezésre álló kérelemtörzs paramétereinek egy része. A paraméterek teljes listájához tekintse meg a REST API referenciadokumentációját.
Paraméter | Típus | Leírás |
---|---|---|
sku | SKU | Az SKU-t képviselő erőforrásmodell-definíció. |
capacity | egész szám | Ez az üzemelő példányhoz hozzárendelt kvóta mennyiségét jelöli. Az 1 érték 1000 token per minute (TPM) értékkel egyenlő. A 10 érték 10 ezer token per minute (TPM) értékkel egyenlő. |
Példa kérésre:
curl -X PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-temp/providers/Microsoft.CognitiveServices/accounts/docs-openai-test-001/deployments/gpt-35-turbo-test-deployment?api-version=2023-05-01 \
-H "Content-Type: application/json" \
-H 'Authorization: Bearer YOUR_AUTH_TOKEN' \
-d '{"sku":{"name":"Standard","capacity":10},"properties": {"model": {"format": "OpenAI","name": "gpt-35-turbo","version": "0613"}}}'
Feljegyzés
Az engedélyezési jogkivonatok többféleképpen is létrehozhatóak. A kezdeti tesztelés legegyszerűbb módja a Cloud Shell elindítása az Azure Portalról. Ez után futtassa a az account get-access-token
parancsot. Ezt a jogkivonatot használhatja ideiglenes engedélyezési jogkivonatként API-teszteléshez.
További információkért tekintse meg a REST API használati és üzembe helyezési referenciadokumentációját.
Használat
Egy adott régió kvótahasználatának lekérdezése egy adott előfizetéshez
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/locations/{location}/usages?api-version=2023-05-01
Elérésiút-paraméterek
Paraméter | Típus | Kötelező? | Leírás |
---|---|---|---|
subscriptionId |
húr | Szükséges | A társított előfizetés előfizetés-azonosítója. |
location |
húr | Szükséges | A használati adatok megtekintésének helye például: eastus |
api-version |
húr | Szükséges | A művelethez használandó API-verzió. Az ÉÉÉÉ-HH-NN formátumot követi. |
Támogatott verziók
2023-05-01
Swagger specifikáció
Példa kérésre:
curl -X GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CognitiveServices/locations/eastus/usages?api-version=2023-05-01 \
-H "Content-Type: application/json" \
-H 'Authorization: Bearer YOUR_AUTH_TOKEN'
Erőforrás törlése
Ha egy Azure OpenAI-erőforrás törlésére tett kísérlet történik az Azure Portalról, ha az üzemelő példányok törlése továbbra is folyamatban van, a rendszer a kapcsolódó központi telepítések törléséig letiltja a törlést. Az üzemelő példányok törlése először lehetővé teszi a kvótalefoglalások megfelelő felszabadítását, hogy azok használhatók legyenek az új üzemelő példányokon.
Ha azonban a REST API-val vagy más programozott módszerrel töröl egy erőforrást, akkor ez előbb átmegy az üzembe helyezések törlésének szükségességén. Ha ez történik, a társított kvótafoglalás nem lesz elérhető az új üzembe helyezéshez való hozzárendeléshez 48 órán át, amíg az erőforrást ki nem üríti. Ha egy törölt erőforrás azonnali kiürítését szeretné aktiválni a kvóta felszabadításához, kövesse a törölt erőforrás-utasítások törlését.
Következő lépések
- Az Azure OpenAI kvóta alapértelmezéseinek áttekintéséhez tekintse át a kvóták & korlátokról szóló cikket