所有語言
分享
文章來源:AIGC開放社區
2月17日,OpenAI在社交平台宣布,取消了GPT-4 Turbo的所有每日限制,並將速率限制提升1倍。現在,每分鐘可處理高達150萬TPM的數據。
OpenAI這一周的連續王炸組合拳,從ChatGPT增加 “記憶存儲”,到視頻模型Sora再到GPT-4 Turbo全面取消每日限制,打的谷歌、Meta有點暈頭轉向搶盡風頭。
對於用戶來說,只希望巨頭之間撕的更凶一些,這樣咱們看到的、得到的、用到的也就更多。
2023年初,OpenAI的估值只有200多億美元,年底暴漲至800億美元,很多人認為這也太虛高了。看了前天推出的Sora后,多數人沉默了感覺OpenAI的估值太保守了。
為什麼OpenAI要進行速率限制
OpenAI表示,速率限制是其API對開發者或產品用戶,在指定時間段內訪問OpenAI服務器的次數增加的一種服務限制。這樣做主要有以下幾個原因。
1)有助於防止 API 被濫用或誤用。例如,黑客可能會向 API 提出大量請求,致使服務器超載或宕機。通過設置速率限制,可以防止此類事情發生。
2)速率限制有助於確保,每個人都能公平地訪問 API。如果一個人或一個組織頻繁提出過多的服務請求,可能會導致其他所有人都無法使用 API。
通過限制單個用戶的請求數量,OpenAI 可以確保大多數人都有機會使用 API,而不會出現速度變慢的情況。
3)速率限制可有效幫助 OpenAI 管理其基礎設施的總負載。如果對 API 的請求急劇增加,可能會給服務器造成負擔,出現服務中斷等嚴重問題。
去年,OpenAI剛發布自定義GPT時,就發生過一次類似事情。
OpenAI的速率限制,有哪些種類
目前,OpenAI一共使用了5種速率限制:RPM(每分鐘請求數)、RPD(每天請求數)、TPM(每分鐘tokens數量)、TPD(每天tokens數量)和IPM(每分鐘圖像數量)。
任何一種請求都可能觸發速率限制,例如,用戶向 ChatCompletions 端點發送 20 個請求,其中只有 100 個tokens,這樣就會觸發速率限制(假如 RPM 限制是 20);即使你在這20 個請求中沒有發送 150k 的tokens。
簡單來說,這五種限制,你只要滿足一種就會觸發。
需要注意的是,速率限制是對組織級別實施的,對個體用戶沒啥影響。速率限制因所使用的模式而異,組織每月在 API 上的總支出也有"使用限制"。
如何查看自己的限制等級
用戶可以在賬戶設置的 "限制 "功能,查看組織的速率和使用限制。
隨着你對 OpenAI 的API 的使用以及組織在AP上的費用支出的增加,會自動升級你的使用級別。目前,一共有5個等級。
如何避免速率限制
OpenAI的Cookbook發布了一個攻略,幫助大家避免出現速率限制的錯誤,以及一個用於在批處理 API 請求時,保持速率限制的示例Python 腳本。
地址:https://cookbook.openai.com/examples/how_to_handle_rate_limits
OpenAI表示,最簡單的避免速率限制方法,就是使用“指數退避重試”。
主要通過動態調整重試等待時間,這種機制可有效減少服務器的負載,提高請求成功的可能性,並對系統資源進行高效管理。
代碼展示
指數退避重試能在連續的失敗嘗試之間引入逐漸增加的延遲,以減少對服務器或網絡資源的壓力,增加後續嘗試成功的可能性。
但使用指數退避重試時,也需要注意幾個事項:1)重試次數和最大延遲時間的限制,以防止無休止的重試;2)合理設置最小延遲和倍數,以適應具體應用場景的需求;
3)記錄和監控重試事件,以便於故障排查和性能優化;4)考慮請求的冪等性,確保重試不會引起數據錯誤或不一致。