A használati korlát hibákat („Too Many Requests”, „Rate limit reached”) az okozza, hogy eléred a szervezeted használati korlátját, vagyis a percenként beküldhető kérések és tokenek maximális számát. Ha a korlátot elérted, a szervezet nem tud sikeresen kéréseket beküldeni, amíg a használati korlát vissza nem áll. A hibaüzenet így néz ki:
A gpt-3.5-turbo esetében elérte a sebességkorlátot az org-exampleorgid123 szervezetben a percenkénti tokenekre.
Korlát: 10000.000000 / perc. Jelenlegi: 10020.000000 / perc. Javasoljuk, hogy ezeket a hibákat exponenciális visszalépéssel kezeld. Az exponenciális visszalépés azt jelenti, hogy használati korlát hiba esetén rövid ideig vársz, majd újrapróbálod a sikertelen kérést. Ha a kérés továbbra sem sikeres, a várakozási idő nő, és a folyamat megismétlődik. Ez addig folytatódik, amíg a kérés sikeres nem lesz, vagy el nem éred az újrapróbálkozások maximális számát.
Mivel a sikertelen kérések beleszámítanak a percenkénti korlátba, a kérés folyamatos újraküldése nem fog működni. A használati korlátok rövidebb időszakokra is vonatkozhatnak – például 60 RPM korlát esetén 1 kérés másodpercenként –, ezért a rövid, nagy forgalmú kéréshullámok is vezethetnek használati korlát hibákhoz. Az exponenciális visszalépés jól működik, mert ritkítja a kéréseket, így csökkenti ezeknek a hibáknak a gyakoriságát.
Pythonban egy exponenciális visszalépési megoldás így nézhet ki:
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(Megjegyzés: a backoff könyvtár külső féltől származó eszköz. Javasoljuk minden ügyfelünknek, hogy kellő gondossággal járjon el, amikor a projektjéhez használt külső kódot ellenőrzi.)
Ha az exponenciális visszalépés bevezetése után is ezt a hibát kapod, lehet, hogy magasabb használati szintre kell váltanod. Az aktuális használati korlátaidat, valamint azt, hogyan növelheted a bizalmi szintedet a használati korlátok emeléséhez, a fiókbeállításaid korlátok részében nézheted meg.
