АИ АПИ капије са свешћу о ограничењу брзине: РПМ облика, ТПМ, бурстови и праведност станара пре него што је погодио 429с
Практична архитектура мрежног пролаза за спречавање каскадних ЛЛМ АПИ 429: нормализујте ограничења провајдера, процените притисак токена пре слања, резервишите квоту по закупцу, глатке саобраћајне рампе и омогућите контролу пригушења.
1 мин читањаModel Gate Editorial Team
<п>429 од ЛЛМ провајдера није само сигнал за поновни покушај. У продукцији, то је често доказ да је ваша апликација већ изгубила контролу над пријемом, праведношћу закупца, кашњењем или обрачуном квоте специфичним за добављача.п>
<п>Уобичајено решење – експоненцијално повлачење – је неопходно, али непотпуно. Бацкофф реагује након што провајдер одбије саобраћај. <стронг>АИ АПИ капијастронг> која је свесна ограничења брзине би требало да обликује саобраћај пре него што захтеви напусте ваш систем: процени притисак на токене, резервише квоту, изолује станаре, стави у ред прави посао, одбаци погрешан посао и прилагоди се када се промене ограничења добављача.п>
<п>Овај чланак описује практичан гејтвеј гувернер квоте за тимове који шаљу производна оптерећења вишеструким ЛЛМ провајдерима преко обједињеног АПИ-ја.п>
<х2>Проблем читача: 429 су вишедимензионалнех2>
<п>Многи тимови третирају ограничења стопе као да су један број захтева у минути. Та претпоставка се брзо прекида са ЛЛМ АПИ-јима.п>
<п><стронг>Чињенице из актуелне документације добављача:стронг>п>
<ул>
<ли>ОпенАИ документи чија ограничења могу да се примењују на краће временске периоде од оглашеног ограничења по минути, тако да кратки низови могу да не успеју чак и када просечни минут изгледа безбедно.ли>
<ли>Азуре ОпенАИ квота се додељује према претплати, региону, моделу и типу примене у токенима по минуту. Додељивање ТПМ-а примени такође одређује ограничења броја обртаја у минути принудног закључивања, а односи РПМ-то-ТПМ варирају у зависности од модела.ли>
<ли>Азуре ОпенАИ такође напомиње да се прорачуни токена ограничења стопе процењују када се захтев прими и да нису исти као коначни број токена за обрачун.ли>
<ли>Антропски документи одвајају ограничења за захтеве-по-минути, улазне-жетоне-по-минути и излазне-токене-по-минути. Прекорачење ограничења враћа 429 са заглављем за поновни покушај.ли>
<ли>Антропик упозорава да нагло повећање саобраћаја може да достигне границе убрзања и препоручује постепено повећање.ли>
<ли>За већину Цлауде модела, Антхропиц документи који кеш читају улазне токене се не рачунају у ограничења улазних токена по минути, што значи да брзо кеширање може да промени ефективни простор.ли>
<ли>Ограничења стопа Гоогле Гемини АПИ-ја су везана за нивое коришћења пројекта, са вишим нивоима у зависности од подешавања обрачуна, кумулативне потрошње и протеклог времена након прекретница плаћања.ли>
ул>
<п>Оперативна лекција је јасна: облик захтева компатибилан са ОпенАИ не подразумева понашање квоте компатибилно са ОпенАИ. Мрежни пролаз са више провајдера треба интерни модел квоте који је богатији од „поново покушај ако 429.“п>
<х2>Циљ дизајна: учинити контролу приступа одговорношћу пролазах2>
<п>Гејтвеј који је свестан ограничења брзине треба да одговори на пет питања пре него што пошаље захтев:п>
<ол>
<ли>Који добављач, модел, примену, регион, пројекат или радни простор ће примити захтев?ли>
<ли>Колики капацитет захтева, улазног токена, излазног токена и капацитета истовремености може да потроши?ли>
<ли>Којем закупцу, тиму, АПИ кључу, клијенту или класи радног оптерећења треба наплатити дељени капацитет?ли>
<ли>Да ли би захтев требало да се прихвати сада, да се накратко стави у ред чекања, да се врати на старију верзију, да се преусмери негде другде или да се одбије?ли>
<ли>Како треба усагласити резервацију након што добављач врати стварну употребу?ли>
ол>
<п>Гатеваи постаје гувернер квоте. Не замењује ограничења провајдера. То чини ограничења добављача видљивим, предвидљивим и поштеним унутар вашег система.п>
<х2>Изградите нормализовани модел квотех2>
<п>Почните тако што ћете дефинисати унутрашње димензије ограничавача које могу представљати главне добављаче, а да их не приморавате да уђу у једну обмањујућу групу.п>
<х3>Препоручене димензије граничниках3>
<ул>
<ли><стронг>РПМ:стронг> захтева по минуту.ли>
<ли><стронг>Унос ТПМ:стронг> токени упита, поруке, алатке и контекста у минути.ли>
<ли><стронг>ТПМ излаза:стронг> токени завршетка у минути, резервисани одвојено за стримовање и дуге генерације.ли>
<ли><стронг>Укупни ТПМ:стронг> корисно за добављаче или примене које излажу комбиновани притисак на токене.ли>
<ли><стронг>Упоредност:стронг> активни захтеви, активни стримови или послови током лета.ли>
<ли><стронг>Трајање стримовања:стронг> дуговечни стримови могу да заузму простор за везу и излазни токен чак и када је број обртаја у минути низак.ли>
<ли><стронг>Опсег специфичан за добављача:стронг> Азуре претплата/регион/примена, антропски радни простор/класа модела, Гоогле пројекат/ниво или ОпенАИ организација/пројекат/група модела.ли>
ул>
<п>Не сакривајте димензије специфичне за добављача. Нормализујте их у заједничку шему, али сачувајте довољно детаља да касније објасните одбијање.п>
<пре><цоде>{
"провидер": "провидер_а",
"модел_профиле": "брзо ћаскање",
"провидер_сцопе": {
"пројекат": "прод",
"регион": "ус-исток",
"распоређивање": "цхат-ларге-01"
},
"ограничења": {
"рпм": 1200,
"инпут_тпм": 800000,
"оутпут_тпм": 250000,
„истовременост“: 200
}
}цоде>пре><п>Овај интерни објекат треба да буде експлицитно конфигурисан, а не да се закључује само из назива модела. Контролне табле добављача, нивои налога, регионалне примене и подешавања радног простора могу да промене ефективни капацитет исте породице модела.п>
<х2>Процените притисак токена пре слањах2>
<п>Ограничавање стопе на страни добављача се често дешава пре него што се сазна коначно коришћење обрачуна. Ваш мрежни пролаз би требало да направи исту врсту конзервативне процене пре слања саобраћаја.п>
<х3>Уноси резервације пре летах3>
<ул>
<ли>Серијализовани упит и дужина поруке.ли>
<ли>Токенизација специфична за модел и додатни трошкови за улоге, алате, слике или структурирана излазна упутства.ли>
<ли><цоде>мак_цомплетион_токенсцоде> или еквивалентно ограничење излаза.ли>
<ли>Историјски однос завршетка за ову крајњу тачку, закупца, профил модела и класу захтева.ли>
<ли>Очекивани токени за читање кеша ако је брзо кеширање доступно и мерљиво.ли>
<ли>Ознака за стримовање и очекивано трајање стрима.ли>
ул>
<п>За почетак је често довољно једноставно правило резервације:п>
<пре><цоде>естиматед_инпут_токенс = токенизе(рекуест_мессагес) + модел_оверхеад
процењени_излазни токени = мин(
мак_цомплетион_токенс,
п95_хисторицал_оутпут_токенс_фор_роуте
)
резервисани_укупни_токени = процењени_улазни_токени + процењени_излазни_токеницоде>пре>
<п>За непознате руте користите конзервативно подразумевано. За стабилне производне руте, стално ажурирајте процене на основу стварне употребе.п>
<х3>Резервирајте, па помиритех3>
<п>Резервације квота не би требало да постану трајне накнаде. Третирајте их као држање:п>
<ол>
<ли><стронг>Цитат:стронг> процените улазни и излазни притисак.ли>
<ли><стронг>Резерва:стронг> одбијте од релевантних токена пре слања.ли>
<ли><стронг>Решите се:стронг> замените процену употребом коју је пријавио добављач када је доступна.ли>
<ли><стронг>Рефундирање или задуживање:стронг> вратите неискоришћени резервисани капацитет или наплатите вишак у следећи прозор ако је потребно.ли>
ол>
<п>Ово је најважније за дуге и стримовање позива. Ако проверите само улазни ТПМ пре слања, ток може успешно да почне, а затим касније налети на притисак излазног токена. Засебно резервисање излазне висине смањује ризик од квара на средини тока и застоја.п>
<х2>Користите хијерархијске сегменте токена за правичност закупацах2>
<п>Један глобални лимитер штити налог добављача, али не штити станаре једни од других. Један скупни посао дугог контекста може да потроши дељени ТПМ и да изазове неуспех интерактивних захтева других тимова.п>
<п>Користите хијерархијске сегменте токена:п>
<пре><цоде>организација
└── станар
└── тим
└── апи_кеи
└── модел_профиле
└── провидер_деплоиментцоде>пре>
<п>Захтев мора да прође сваки релевантни сегмент. Ово вам омогућава да примените неколико смерница одједном:п>
<ул>
<ли>Организација не може да премаши капацитет добављача.ли>
<ли>Закупац не може да троши више од свог уговореног удела.ли>
<ли>АПИ кључ не може премашити предвиђено окружење или ограничење апликације.ли>
<ли>Профил серије модела не може да изглади профил интерактивног модела.ли>
<ли>Примена добављача не може бити преоптерећена чак и ако друга примена има резервну квоту.ли>
ул>
<х3>Поштено дељење у односу на коришћењех3>
<п><стронг>Препорука:стронг> користите пондерисано фер дељење са контролисаним брзим задуживањем.п>
<п>Строге ограничења по закупцу је лако објаснити, али могу довести до неискоришћеног капацитета. Бурст позајмљивање побољшава искоришћеност дозвољавајући закупцу да привремено користи неактивну квоту из заједничког скупа. Компромис је сложеност: контролне табле морају показати шта је гарантовано, шта је позајмљено и када је позајмљивање опозвано.п>
<п>Практично правило:п>
<ул>
<ли>Дајте сваком закупцу загарантовану основу.ли>
<ли>Дозволи брзо позајмљивање из неискоришћеног заједничког капацитета.ли>
<ли>Повратите позајмљени капацитет када се појави већи приоритет или загарантовани саобраћај.ли>
<ли>Никада не дозволите да позајмљени саобраћај креира 429 на нивоу добављача за гарантовани саобраћај.ли>
ул>
<х2>Одвојите саобраћајне класе пре него што се борех2>
<п>Не заслужују сви захтеви исто понашање у реду. Ставите саобраћај у профиле модела са одвојеним редовима и скуповима квота.п>
<табле>
<тхеад>
<тр>
<тх>Класа саобраћајатх>
<тх>Типична политикатх>
<тх>Заштотх>
тр>
тхеад>
<тбоди>
<тр>
<тд>Интерактивно ћаскањетд>
<тд>Кратак ред, буџет са малим кашњењем, брза грешка или компатибилна резервна опцијатд>
<тд>Корисници брзо примећују кашњење репатд>
тр>
<тр>
<тд>Агентски токови послатд>
<тд>Умерени ред, буџети свесни алата, излазни простортд>
<тд>Позиви у више корака могу појачати притисак на токентд>
тр>
<тр>
<тд>Батцх пословитд>
<тд>Дужи ред, планирано изглађивање, нижи приоритеттд>
<тд>Уобичајено толерантно на кашњење и тежак токентд>
тр>
<тр>
<тд>Евалстд><тд>Намјенска квота, пауза током инциденататд>
<тд>Може да створи изненадне вештачке скоковетд>
тр>
<тр>
<тд>Сажетак позадинетд>
<тд>Чекај у реду или одложи, строго ТПМ ограничењетд>
<тд>Корисно, али ретко хитнотд>
тр>
тбоди>
табле>
<п>Чекање у реду побољшава стопу успеха, али повећава кашњење репа. Гатеваи би требало да тај компромис учини експлицитним. На пример, интерактивни захтев може да чека до 300 милисекунди на квоту, а затим да се врати или не успе. Ноћни групни посао може да сачека 20 минута и још увек се сматра успешним.п>
<х2>Нормализујте 429 у једну шему грешкех2>
<п>Чак и уз добру контролу пријема, провајдер 429 ће се и даље јављати. Ограничења могу да се промене, процене добављача могу да се разликују од ваших, а саобраћај може да стиже у оштријим налетима него што се очекивало.п>
<п>Нормализујте сваког добављача 429 у објекат грешке мрежног пролаза:п>
<пре><цоде>{
"грешка": {
"типе": "рате_лимитед",
"лимитер": "оутпут_тпм",
"провидер": "провидер_а",
"модел_профиле": "брзо ћаскање",
"провидер_модел": "модел-к",
"ретри_афтер_мс": 2400,
"тенант_ид": "тенант_123",
"апи_кеи_ид": "кеи_456",
"рекуест_цласс": "интерактиван",
"естиматед_инпут_токенс": 4200,
"естиматед_оутпут_токенс": 800,
"гатеваи_децисион": "адмиттед_тхен_провидер_рејецтед",
"фаллбацк_алловед": нетачно,
"траце_ид": "траце_абц"
}
}цоде>пре>
<п>Кључно поље је <цоде>гатеваи_децисионцоде>. 429 након што је мрежни пролаз прихватио захтев се разликује од захтева који је мрежни пролаз локално одбио пре слања. Први указује на проблем калибрације лимитера. Други означава намерну заштиту.п>
<х2>Прилагодите се из заглавља добављача, али не зависите од њихх2>
<п>Неки провајдери враћају корисна заглавља као што су индикатори поновног покушаја или индикатори преосталог капацитета. Користите их када су доступни.п>
<п><стронг>Препорука:стронг> заглавља добављача треба да подешавају вашег локалног гувернера, а не да га замењују.п>
<п>Разлози:п>
<ул>
<ли>Доступност заглавља се разликује у зависности од добављача и крајње тачке.ли>
<ли>Заглавља можда неће открити сваку димензију ограничења.ли>
<ли>Ретри-афтер вам говори када да покушате поново, а не који закупац би следећи требало да добије капацитет.ли>
<ли>Процене токена на страни добављача могу да се разликују од вашег обрачуна или интерног рачуноводства.ли>
ул>
<п>Робусна имплементација ажурира стопе допуњавања локалних касета и времена хлађења на основу заглавља, док и даље примењује ограничења закупца, АПИ кључа, класе саобраћаја и провајдера унутар мрежног пролаза.п>
<х2>Додајте регулаторе рампи за миграције и заказане пословех2>
<п>Многи инциденти са ограничењем брзине се дешавају током планираних промена: прелазак са једног модела на други, промена добављача, омогућавање новог тока посла агента или покретање планираног покретања евалуације.п>
<п><стронг>Препорука:стронг> Третирајте раст саобраћаја као контролисано увођење.п>
<ул>
<ли>Миграције модела са ознаком функције према закупцу, рути или проценту саобраћаја.ли>
<ли>Поставите горње границе раста у минути за примену нових добављача.ли>
<ли>Загревајте саобраћај постепено током сати уместо да одмах мењате сав саобраћај.ли>
<ли>Паузирајте увођење када стопа 429, стопа на ниже верзије, дубина чекања или кашњење п95 пређу граничну вредност.ли>
<ли>Задржите руту за хитно враћање назад са политиком компатибилности, а не само са резервним моделом.ли>
ул>
<п><стронг>Предвиђање:стронг> како режими рутирања добављача, нивои приоритета и контроле на нивоу радног простора постану све чешћи, управљање рампом ће постати стандардна функција мрежног пролаза, а не скрипта за одговор на инцидент.п>
<х2>Замена је одлука политике, а не само одлука о капацитетух2>
<п>Када један провајдер врати 429, рутирање до другог провајдера може бити прави одговор. Такође може бити небезбедно.п>
<п>Замена се може променити:п>
<ул>
<ли>Квалитет излаза и праћење инструкција.ли>
<ли>Дужина контекста.ли>
<ли>Понашање при позивању алатки.ли>
<ли>Поузданост структурираног излаза.ли>
<ли>Задржавање података и боравак.ли>
<ли>Цена и кашњење.ли>
ул>
<п>Гувернер квоте треба да пита слој компатибилности да ли је резервни дозвољени за ову класу захтева. Ако није, требало би да чека на чекању или да не успе са јасним одговором на локално ограничење брзине, уместо да тихо мења семантику.п>
<х2>Откријте контролне табле квота које објашњавају одлукех2>
<п>Систем квота који нико не може да разуме биће заобиђен. Направите контролне табле око оперативних питања:п>
<ул>
<ли>Који закупци троше највише РПМ, ТПМ улаза и ТПМ излаза?ли>
<ли>Који профили модела су у реду чекања, одбијају се или се враћају?ли>
<ли>Који опсег добављача је уско грло: пројекат, регион, примену, радни простор, класа модела или ниво налога?ли>
<ли>Колико се често процене мрежног пролаза разликују од коришћења провајдера?ли>
<ли>Шта је дистрибуција поновног покушаја по добављачу и типу ограничавача?ли>
<ли>Колико ефикасног простора стварају брза кеш читања?ли><ли>Које класе саобраћаја позајмљују бурст капацитет?ли>
ул>
<п>За производе окренуте клијентима или партнерима, изложите безбедне контроле:п>
<ул>
<ли>Ограничења брзине по кључу.ли>
<ли>Ограничења рафала по тиму.ли>
<ли>Дневна ограничења по кориснику.ли>
<ли>Хитна пауза за станара или кључ.ли>
<ли>Упозорења за 429 скокова, раст реда и ненормалан притисак на токен.ли>
<ли>Партнер АПИ крајње тачке за управљање квотама препродавца.ли>
ул>
<п>Ово претвара ограничавање брзине од мистериозне грешке добављача у део управљања тимским АПИ-јем који се може ревидирати.п>
<х2>Контролна листа имплементацијех2>
<х3>Фаза 1: посматрајте и класификујтех3>
<ул>
<ли>Добављач евиденције, модел, примену, регион, радни простор, пројекат, закупац, АПИ кључ и класа захтева за сваки позив.ли>
<ли>Снимите провајдер 429 са поновним покушајем и необрађеним метаподацима о грешци.ли>
<ли>Забележите процењене и стварне улазне/излазне токене одвојено.ли>
<ли>Одвојите интерактивни, групни, евал и позадински саобраћај у телеметрији.ли>
ул>
<х3>Фаза 2: локална контрола приступах3>
<ул>
<ли>Креирајте интерне граничне објекте за РПМ, улазни ТПМ, излазни ТПМ, укупан ТПМ и конкурентност.ли>
<ли>Додајте процену токена пре објављивања.ли>
<ли>Резервишите квоту пре слања и ускладите након што провајдер дође до коришћења.ли>
<ли>Одбијте локално када захтев не може да стане у сегмент закупца или добављача.ли>
ул>
<х3>Фаза 3: правичност и редових3>
<ул>
<ли>Додајте хијерархијске сегменте од организације до имплементације добављача.ли>
<ли>Доделите гарантоване уделе закупца и контролисано брзо задуживање.ли>
<ли>Креирајте засебне редове према класи саобраћаја.ли>
<ли>Подесите максимално време чекања за одређену класу и резервна правила.ли>
ул>
<х3>Фаза 4: адаптација и операцијех3>
<ул>
<ли>Користите заглавља добављача да бисте прилагодили хлађење и претпоставке за поновно пуњење.ли>
<ли>Додајте регулаторе рампи за миграције и заказане послове.ли>
<ли>Откријте контролне табле и упозорења о квотама.ли>
<ли>Прегледајте грешку у процени и насукану квоту сваке недеље.ли>
ул>
<х2>Закључак који се може применитих2>
<п>Ако ваш мрежни пролаз само поново покуша 429, он ради након грешке. Продукцијски <стронг>АИ АПИ капијастронг> би требало да спречи већину грешака у ограничењу брзине тако што ће одлучити коме је дозвољено да шаље шта, када и према квоти које провајдере.п>
<п>Почните са нормализованим моделом лимитера, резервацијом токена пре лета и редовима за класе саобраћаја. Затим додајте хијерархијску праведност закупаца, прилагођавање заглавља добављача и регулаторе рампе. Резултат није само мање 429. То је јаснија алокација капацитета, предвидљивија латенција, безбедније миграције и понашање на ограничењу брзине које ваши тимови за инжењеринг, финансије и корисничку подршку заправо могу да објасне.п><х2>Сродно читањех2><ул><ли><а хреф="хттпс://модел-гате.цом/ен/блог/аи-апи-биллинг-ледгер-цитте-сеттле-1">1> усклађивање резервација и коришћењаа>ли><ли><а хреф="хттпс://модел-гате.цом/ен/блог/промпт-цацхе-цонтрол-мулти-модел-апи-гатеваи-15/">брзо обрачунавање кеша и аналитика кеш-хитоваа>ли><ли><а хреф="хттпс://модел-гате.цом/ен/блог/релиабле-ллм-апи-роутинг-тимеоутс-ретриес-модел-фаллбацкс-3/">компатибилне смернице резервног рутирањаа>ли>ул>
FAQ
Често постављана питања
Да ли АИ АПИ гатеваи поново покуша да доведе до грешке 429?
Да, али поновни покушаји би требало да буду последњи слој, а не главна контрола. Користите експоненцијална заглавља за повлачење и поновни покушај када су доступна, али и додајте контролу приступа на страни пролаза тако да се преоптерећени саобраћај ставља у ред чекања, обликује, усмерава или одбија пре него што створи каскадне провајдере 429.
Зашто одвојено пратити улазни ТПМ и излазни ТПМ?
Неки провајдери излажу одвојена ограничења улазних и излазних токена, а дуге генерације могу да исцрпе излазни капацитет чак и када је улазни капацитет доступан. Одвојено праћење помаже у спречавању успешног покретања токова, а затим заустављања или неуспеха како притисак излазног токена расте.
Да ли је процена локалног токена довољно прецизна за ограничавање брзине?
Не мора бити савршено. Мора да буде довољно конзервативан да спречи преоптерећење и да се стално усклађује са стварном употребом провајдера. Претерано конзервативне процене могу недовољно искористити квоту, тако да би производни системи требало да мере грешку у процени и брзо рефундирају неискоришћене резервације.
Када би ред на мрежном пролазу требало да падне брзо?
Радови који су толерантни на кашњење у реду као што су групни послови, евалуације и позадинска обрада. За интерактивне захтеве, користите кратак буџет за ред чекања, а затим или јасно не успете или се вратите само ако заменски модел задовољава захтеве компатибилности руте, цене и политике.
We use essential technologies to operate and secure the website. With your permission, we also use optional analytics technologies. See our Cookie Policy.