Darbības ierobežojuma kļūdas ('Too Many Requests', “Rate limit reached”) rodas, sasniedzot jūsu organizācijas darbības ierobežojumu, kas ir maksimālais pieprasījumu un tekstvienību skaits, ko var iesniegt minūtē. Ja ierobežojums ir sasniegts, organizācija nevar veiksmīgi iesniegt pieprasījumus, līdz darbības ierobežojums tiek atiestatīts. Kļūdas ziņojums izskatās šādi:
Gpt-3.5-turbo ātruma ierobežojums sasniegts organizācijā org-exampleorgid123 tekstvienībām minūtē.
Limits: 10000.000000 / min. Pašreizējais: 10020.000000 / min. Iesakām šīs kļūdas apstrādāt, izmantojot eksponenciālu aizturi. Eksponenciāla aizture nozīmē īsu pauzi, kad rodas darbības ierobežojuma kļūda, un pēc tam neveiksmīgā pieprasījuma atkārtošanu. Ja pieprasījums joprojām ir neveiksmīgs, pauzes ilgums tiek palielināts un process tiek atkārtots. Tas turpinās, līdz pieprasījums ir veiksmīgs vai tiek sasniegts maksimālais atkārtoto mēģinājumu skaits.
Tā kā neveiksmīgi pieprasījumi tiek ieskaitīti jūsu minūtes ierobežojumā, nepārtraukta pieprasījuma atkārtota nosūtīšana nedarbosies. Darbības ierobežojumus var piemērot īsākiem periodiem, piemēram, 1 pieprasījums sekundē 60 RPM ierobežojumam, tāpēc īsi liela apjoma pieprasījumu uzplaiksnījumi var izraisīt darbības ierobežojuma kļūdas. Eksponenciāla aizture darbojas labi, izvietojot pieprasījumus ar atstarpēm, lai mazinātu šo kļūdu biežumu.
Python valodā eksponenciālas aiztures risinājums varētu izskatīties šādi:
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(Lūdzu, ņemiet vērā: backoff bibliotēka ir trešās puses rīks. Mēs aicinām visus mūsu klientus rūpīgi pārbaudīt jebkuru ārējo kodu, pirms to izmantot savos projektos.)
Ja eksponenciālas aiztures ieviešana joprojām izraisa šo kļūdu, iespējams, jums būs jāpalielina savs lietojuma līmenis. Sava konta iestatījumu ierobežojumu sadaļā varat skatīt pašreizējos darbības ierobežojumus un uzzināt, kā palielināt uzticamības līmeni, lai palielinātu darbības ierobežojumus.
