Volumelimietfouten ('Te veel aanvragen', ‘Volumelimiet bereikt’) worden veroorzaakt doordat je de volumelimiet van je organisatie bereikt. Dat is het maximumaantal aanvragen en tokens dat per minuut kan worden ingediend. Als de limiet is bereikt, kan de organisatie pas weer met succes aanvragen indienen wanneer de volumelimiet is gereset. De foutmelding ziet er als volgt uit:
Rate limit bereikt voor gpt-3.5-turbo in organisatie org-exampleorgid123 op tokens per minuut.
Limiet: 10000.000000 / min. Huidig: 10020.000000 / min. We raden aan deze fouten af te handelen met exponentiële backoff. Exponentiële backoff betekent dat je kort wacht wanneer je een volumelimietfout krijgt en daarna de mislukte aanvraag opnieuw probeert. Als de aanvraag nog steeds mislukt, wordt de wachttijd verlengd en wordt het proces herhaald. Dit gaat door totdat de aanvraag slaagt of totdat een maximaal aantal nieuwe pogingen is bereikt.
Omdat mislukte aanvragen meetellen voor je limiet per minuut, werkt het niet om een aanvraag steeds opnieuw te versturen. Volumelimieten kunnen ook over kortere perioden gelden, bijvoorbeeld 1 aanvraag per seconde bij een limiet van 60 RPM. Dat betekent dat ook korte pieken met veel aanvragen tot volumelimietfouten kunnen leiden. Exponentiële backoff werkt goed doordat aanvragen verder uit elkaar worden geplaatst, zodat deze fouten minder vaak voorkomen.
In Python kan een oplossing met exponentiële backoff er zo uitzien:
from openai import OpenAI, RateLimitError
import backoff
client = OpenAI()
@backoff.on_exception(backoff.expo, RateLimitError)
def completions_with_backoff(**kwargs):
response = client.completions.create(**kwargs)
return response(Let op: de bibliotheek backoff is een tool van derden. We raden al onze klanten aan zorgvuldig te controleren of externe code geschikt is voor hun projecten.)
Als het implementeren van exponentiële backoff nog steeds tot deze fout leidt, moet je mogelijk je gebruiksniveau verhogen. Je kunt je huidige volumelimieten bekijken en zien hoe je je vertrouwensniveau kunt verhogen om je volumelimieten te verhogen in het gedeelte Limieten van je accountinstellingen.
