Dela via


Hantera Azure OpenAI i Azure AI Foundry Models-kvoten

Kvoten ger flexibiliteten att aktivt hantera allokering av hastighetsgränser mellan distributionerna i din prenumeration. Den här artikeln går igenom processen för att hantera din Azure OpenAI-kvot.

Förutsättningar

Viktigt!

För alla uppgifter som kräver visning av tillgänglig kvot rekommenderar vi att använda rollen "Cognitive Services Usages Reader". Den här rollen ger den minimala åtkomst som krävs för att visa kvotanvändning i en Azure-prenumeration. Mer information om den här rollen och de andra rollerna som du behöver för att få åtkomst till Azure OpenAI finns i vår rollbaserade åtkomstkontrollguide för Azure.

Den här rollen finns i Azure-portalen under Prenumerationer>Åtkomstkontroll (IAM)>Lägg till rolltilldelning>, sök efter Cognitive Services Usages Reader. Den här rollen måste tillämpas på prenumerationsnivå. Den finns inte på resursnivå.

Om du inte vill använda den här rollen ger prenumerationsrollen Läsare motsvarande åtkomst, men den ger även läsbehörighet utöver det som behövs för att visa kvot- och modelldistribution.

Introduktion till kvot

Azure OpenAI:s kvotfunktion möjliggör tilldelning av hastighetsgränser till dina distributioner, upp till en global gräns som kallas din kvot. Kvoten tilldelas till din prenumeration per region och per modell i enheter av Tokens-per-Minute (TPM). När du registrerar en prenumeration på Azure OpenAI får du standardkvoten för de flesta tillgängliga modeller. Sedan tilldelar du TPM till varje distribution när den skapas, och den tillgängliga kvoten för den modellen minskas med det beloppet. Du kan fortsätta att skapa distributioner och tilldela dem TPM tills du når din kvotgräns. När det händer kan du bara skapa nya distributioner av den modellen genom att minska TPM som tilldelats till andra distributioner av samma modell (vilket frigör TPM för användning) eller genom att begära och godkännas för en modellkvotökning i önskad region.

Anmärkning

Med en kvot på 240 000 TPM för GPT-4o i USA, östra kan en kund skapa en enda distribution av 240 K TPM, 2 distributioner på 120 K TPM vardera eller valfritt antal distributioner i en eller flera Azure OpenAI-resurser så länge deras TPM uppgår till mindre än 240 K totalt i den regionen.

När en distribution skapas kopplas den tilldelade TPM direkt till den begränsning för token per minut som gäller för dess inferensbegäranden. En hastighetsgräns för begäranden per minut (RPM) tillämpas också vars värde anges proportionellt till TPM-tilldelningen med hjälp av följande förhållande:

Viktigt!

Förhållandet mellan begäranden per minut (RPM) och token per minut (TPM) för kvot kan variera beroende på modell. När du distribuerar en modell programmatiskt eller begär en kvotökning har du inte detaljerad kontroll över TPM och RPM som oberoende värden. Kvoten allokeras när det gäller kapacitetsenheter som har motsvarande mängder RPM och TPM:

Modell Kapacitet Begäranden per minut (RPM) Token per minut (TPM)
Äldre chattmodeller: 1 enhet 6 varv per minut (rpm) 1 000 TPM
o1 &o1-preview: 1 enhet 1 varv per minut 6 000 TPM
o3 1 enhet 1 varv per minut 1 000 TPM
o4-mini 1 enhet 1 varv per minut 1 000 TPM
o3-mini: 1 enhet 1 varv per minut 10 000 TPM
o1-mini: 1 enhet 1 varv per minut 10 000 TPM
o3-pro: 1 enhet 1 varv per minut 10 000 TPM

Detta är särskilt viktigt för programmatisk modelldistribution eftersom ändringar i RPM/TPM-förhållandet kan leda till oavsiktlig felallokering av kvoten. Mer information finns i kvot och gränser.

Flexibiliteten att distribuera TPM globalt inom en prenumeration och region har gjort det möjligt för Azure OpenAI att lätta på andra begränsningar:

  • Maximalt antal resurser per region ökas till 30.
  • Gränsen för att skapa högst en distribution av samma modell i en resurs har tagits bort.

Tilldela kvot

När du skapar en modelldistribution har du möjlighet att tilldela token per minut (TPM) till den distributionen. TPM kan ändras i steg om 1 000 och mappas till de TPM- och RPM-hastighetsgränser som tillämpas på distributionen enligt beskrivningen ovan.

Om du vill skapa en ny distribution från Azure AI Foundry-portalen väljer du Distributioner>Distribuera modell>Distribuera basmodell>Välj Modell>bekräfta.

Skärmbild av distributionsgränssnittet för Azure AI Foundry

Efter distributionen kan du justera TPM-allokeringen genom att välja och redigera din modell från sidan Distributioner i Azure AI Foundry-portalen. Du kan också ändra den här inställningen från sidan Hantering>Modellkvot.

Viktigt!

Kvoter och gränser kan komma att ändras för den senaste informationen finns i vår artikel om kvoter och begränsningar.

Begär mer kvot

Begäranden om kvotökning kan skickas via formuläret för begäran om kvotökning. På grund av hög efterfrågan godkänns begäranden om kvotökning och fylls i i den ordning de tas emot. Prioritet ges till kunder som genererar trafik som förbrukar den befintliga kvotallokeringen och din begäran kan nekas om det här villkoret inte uppfylls.

Modellspecifika inställningar

Olika modelldistributioner, även kallade modellklasser, har unika maximala TPM-värden som du nu kan styra. Detta representerar den maximala mängden TPM som kan allokeras till den typen av modelldistribution i en viss region.

Alla andra modellklasser har ett gemensamt maximalt TPM-värde.

Anmärkning

Kvottoken – allokering avPer-Minute (TPM) är inte relaterad till maxgränsen för indatatoken för en modell. Tokenbegränsningar för modellindata definieras i modelltabellen och påverkas inte av ändringar i TPM.

Visa och begära kvot

För en fullständig vy över dina kvotallokeringar mellan distributioner i en viss region väljer duHanteringskvot> i Azure AI Foundry-portalen:

Skärmbild av kvotgränssnittet för Azure AI Foundry

  • Utrullning: Modellutrullningar uppdelade efter modellklass.
  • Kvottyp: Det finns ett kvotvärde per region för varje modelltyp. Kvoten omfattar alla versioner av modellen.
  • Kvotallokering: För kvotnamnet visar detta hur mycket kvot som används av distributioner och den totala kvoten som har godkänts för den här prenumerationen och regionen. Den här mängden kvot som används visas också i stapeldiagrammet.
  • Begärandekvot: Ikonen navigerar till det här formuläret där begäranden om att öka kvoten kan skickas.

Migrera befintliga distributioner

Som en del av övergången till det nya kvotsystemet och den TPM-baserade allokeringen har alla befintliga Azure OpenAI-modelldistributioner automatiskt migrerats för att använda kvoten. I de fall då den befintliga TPM-/RPM-allokeringen överskrider standardvärdena på grund av tidigare anpassade hastighetsgränsökningar tilldelades motsvarande TPM till de påverkade distributionerna.

Förstå hastighetsbegränsningar

Om du tilldelar TPM till en distribution anges hastighetsbegränsningarna Tokens-Per-Minute (TPM) och Requests-Per-Minute (RPM) för distributionen enligt beskrivningen ovan. TPM-hastighetsbegränsningar baseras på det maximala antalet token som beräknas bearbetas av en begäran när begäran tas emot. Det är inte samma sak som antalet token som används för fakturering, som beräknas när all bearbetning har slutförts.

När varje begäran tas emot beräknar Azure OpenAI ett uppskattat maximalt antal bearbetade token som innehåller följande:

  • Ange text och antal
  • Parameterinställningen max_tokens
  • Inställningen för parametern best_of

När begäranden kommer till distributionsslutpunkten, läggs det uppskattade maxbearbetade antalet token till en pågående sammanräkning av alla token för alla begäranden, som återställs varje minut. Om TPM-hastighetsgränsvärdet nås någon gång under den minuten får ytterligare begäranden en 429-svarskod tills räknaren återställs.

Viktigt!

Det tokenantal som används i beräkningen av hastighetsbegränsningen är en uppskattning som delvis baseras på antalet tecken i API-begäran. Bedömningen av token för hastighetsbegränsning är inte densamma som den tokenberäkning som används för att debitera eller fastställa att en begäran ligger under en modells gräns för ingångstoken. På grund av den ungefärliga karaktären hos beräkningen av rate limit token är det förväntat att en hastighetsgräns kan utlösas före vad som kan förväntas i jämförelse med en exakt mätning av antalet tokens för varje begäran.

RPM-hastighetsbegränsningar baseras på antalet begäranden som tas emot över tid. Hastighetsgränsen förväntar sig att begäranden fördelas jämnt under en minutsperiod. Om det här genomsnittliga flödet inte upprätthålls kan begäranden få ett svar på 429 trots att gränsen inte uppfylls när den mäts under en minut. För att implementera det här beteendet utvärderar Azure OpenAI antalet inkommande begäranden under en liten tidsperiod, vanligtvis 1 eller 10 sekunder. Om antalet begäranden som tas emot under den tiden överskrider vad som förväntas vid den angivna RPM-gränsen får nya begäranden en 429-svarskod fram till nästa utvärderingsperiod. Om Azure OpenAI till exempel övervakar begärandefrekvensen med 1 sekunds intervall sker hastighetsbegränsning för en 600 RPM-distribution om fler än 10 begäranden tas emot under varje 1 sekund (600 begäranden per minut = 10 begäranden per sekund).

Metodtips för hastighetsbegränsning

För att minimera problem som rör hastighetsbegränsningar är det en bra idé att använda följande tekniker:

  • Ange max_tokens och best_of till de minimivärden som uppfyller behoven i ditt scenario. Ange till exempel inte ett stort maxtokenvärde om du förväntar dig att dina svar ska vara små.
  • Använd kvothantering för att öka TPM för distributioner med hög trafik och för att minska TPM för distributioner med begränsade behov.
  • Implementera logik för omprövning i ditt program.
  • Undvik stora plötsliga ändringar i arbetsbelastningen. Öka arbetsbelastningen gradvis.
  • Testa olika mönster för att öka belastningen.

Automatisera driftsättning

Det här avsnittet innehåller korta exempelmallar som hjälper dig att komma igång programmatiskt med att skapa distributioner som använder kvot för att ange TPM-hastighetsgränser. Med introduktionen av kvoten måste du använda API-versionen 2023-05-01 för resurshanteringsrelaterade aktiviteter. Den här API-versionen är bara för att hantera dina resurser och påverkar inte den API-version som används för att härleda anrop som slutföranden, chattavslut, inbäddning, bildgenerering osv.

Driftsättning

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/deployments/{deploymentName}?api-version=2023-05-01

Sökvägsparametrar

Parameter Typ Krävs? Beskrivning
accountName snöre Krävs Namnet på din Azure OpenAI-resurs.
deploymentName snöre Krävs Det distributionsnamn som du valde när du distribuerade en befintlig modell eller det namn som du vill att en ny modelldistribution ska ha.
resourceGroupName snöre Krävs Namnet på den associerade resursgruppen för den här modelldistributionen.
subscriptionId snöre Krävs Prenumerations-ID för den associerade prenumerationen.
api-version snöre Krävs Den API-version som ska användas för den här åtgärden. Formatet är ÅÅÅÅ-MM-DD.

Versioner som stöds

Begärandetext

Det här är bara en delmängd av de tillgängliga parametrarna för begärandetexten. En fullständig lista över parametrarna finns i REST API-referensdokumentationen.

Parameter Typ Beskrivning
Sku Sku Resursmodellens definition som representerar SKU.
kapacitet integer Detta representerar den mängd kvot som du tilldelar den här distributionen. Värdet 1 är lika med 1 000 token per minut (TPM). Ett värde på 10 är lika med 10 000 token per minut (TPM).

Exempel på begäran

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-4o-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-4o","version": "2024-11-20"}}}'

Anmärkning

Det finns flera sätt att generera en auktoriseringstoken. Den enklaste metoden för inledande testning är att starta Cloud Shell från Azure Portal. Kör sedan az account get-access-token. Du kan använda den här token som din tillfälliga auktoriseringstoken för API-testning.

Mer information finns i REST API-referensdokumentationen för användning och distribution.

Användning

Om du vill kontrollera ditt kvotanvändande i en viss region för en specifik prenumeration

GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.CognitiveServices/locations/{location}/usages?api-version=2023-05-01

Sökvägsparametrar

Parameter Typ Krävs? Beskrivning
subscriptionId snöre Krävs Prenumerations-ID för den associerade prenumerationen.
location snöre Krävs Plats där användning visas, till exempel: eastus
api-version snöre Krävs Den API-version som ska användas för den här åtgärden. Formatet är ÅÅÅÅ-MM-DD.

Versioner som stöds

Exempel på begäran

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' 

Resursborttagning

När ett försök att ta bort en Azure OpenAI-resurs görs från Azure-portalen, om det fortfarande finns några distributioner, blockeras borttagningen tills de associerade distributionerna tas bort. Om du tar bort distributionerna först kan kvotallokeringar frigöras korrekt så att de kan användas i nya distributioner.

Men om du tar bort en resurs med hjälp av REST-API:et eller någon annan programmatisk metod kringgår detta behovet av att ta bort distributioner först. När detta inträffar kommer den associerade kvotallokeringen inte gå att använda för att tilldela till en ny distribution under 48 timmar tills resursen tas bort. Om du vill utlösa en omedelbar rensning för en borttagen resurs för att frigöra kvoten följer du anvisningarna för att rensa en borttagen resurs.

Nästa steg