Компресија контекста свесна упита за боље исечке
Побољшање границе квалитета и ефикасности контекста модела помоћу модела компресије контекста свесних упита.
Сваки одговор почиње доказима. У систему за претрагу ови докази обично долазе из докумената: наслова, резимеа, делова и исечака који се прослеђују као контекст моделу за одговоре или агенту.
Овај сирови контекст садржи шум. На пример, веб-страница може садржати информације неопходне за захтев корисника, али такође може садржати и ометајуће садржаје. Ови ометајући садржаји се могу појавити како у главном тексту, тако и у помоћним елементима, као што су елементи текста за навигацију, ирелевантни огласи, метаподаци и друго. Прослеђивање ових ометајућих садржаја наредном агенту ствара три проблема.
Прво, то штети тачности. Чак и најмоћнији модели имају коначан капацитет. Дуги низ ирелевантних информација троши капацитет модела, што доводи до „труљења контекста“ које нарушава способност модела да одговори на стварни захтев корисника. Као резултат тога, коначни одговор ће вероватно пропустити кључне чињенице, дати превелику тежина информацијама лошег квалитета или произвести тврдње које је теже утемељити у извору.
Друго, то смањује брзину. Дужи контекст значи више токена које наредни модел треба да обради, посебно када упит захтева доказе из многих страница кандидата. Иако се део овог трошка кашњења сноси у фази попуњавања, много значајнији трошак се плаћа у фази закључивања, при чему модели захтевају више токена за закључивање како би се носили са ирелевантним контекстом.
Треће, то повећава трошкове. Сваки непотребни токен прослеђен моделу чини опслуживање захтева корисника скупљим, пошто се употреба и улазних токена и токена за закључивање повећава са бучнијим контекстом. Ометајући садржаји не смањују само квалитет; они на крају приморавају вас да платите више за тај лошији квалитет.
Да бисмо истовремено унапредили тачност, брзину и исплативост у Perplexity-јевим апликацијама и API платформи, много улажемо у побољшање прецизности контекста. Један од начина на који то чинимо јесте кроз пречишћавање наших алгоритама за генерисање исечака. Генерисање исечака третирамо као проблем компресије контекста. Модели који траже специфичне информације немају користи од уопштених резимеа или извода из документа. Уместо тога, потребан им је најмањи, најхируршкије извучен део изворних информација како би одговорили на захтев корисника. Све остало може и мора бити уклоњено.
Дакле, добар исечак треба да уради три ствари:
Промовише тачност представљањем прецизних доказа потребних за утемељење одговора модела.
Смањује кашњење и трошкове уклањањем ирелевантног контекста пре позива LLM-а.
Осигурава могућност праћења очувањем верности цитирања и задржавањем оригиналног текста извора.
Овог месеца применили смо нови, најсавременији генератор исечака у оквиру наших апликација и API платформе. Језгро овог модула је модел компресије контекста који је свестан упита и који одлучује, за сваки упит и резултат кандидата, који подскуп опсега треба сачувати. Овај чланак описује наш приступ изградњи и обуци модела како би се постигле врхунске перформансе у овој критичној задатку.
Исечци као компресија свесна упита
Први задатак је да се дефинише сам задатак. Шта желимо да овај модел ради и како треба да дефинишемо улазну и излазну шему?
Методе за израду исечака спадају у две велике породице. Прва је заснована на селекцији: пронаћи релевантан прозор, део, реченицу или одломак и проследити га наредним фазама. Друга је заснована на генерисању: тражити од модела да напише резиме усмерен на упит на основу странице.
Наш фокус на тачност, кашњење и трошкове чини избор дизајна јасним. Можемо искључити генерисање, пошто стварање новог резимеа за сваку страницу нарушава перформансе у сва три фокуса. Сумирање се лоше уклапа у слој доказа који нас занима. Може парафразирати извор, што отежава усклађивање цитата. Такође може увести формулисање које није било присутно на страници, што је ризично када се исечак користи као доказ уместо као коначни одговор. Кашњење и трошкови који су укључени чине генерисање још неприхватљивијим.
Уместо тога, наш задатак дефинишемо као екстрактивну компресију свесну упита: одвајање корисних делова преузетог контекста од ометајућих делова. Прецизније, наш модел мора да прихвати упит и резултат кандидата, и да одлучи које опсеге да сачува — оне који најбоље подржавају упит — а које да одбаци, односно остатак. Излаз модела чува изворни текст уместо да га поново пише. Ово чини резултат лакшим за цитирање, лакшим за верификацију и јефтинијим за прослеђивање у наредним фазама.
На пример, размотрите овај упит и преузети резултат:
Плаузибилан излаз модела био би избор подебљане реченице: „У систему Comet, асистент може ...“.
Наш приступ прати исту ширу идеју као и претходни рад на компресији контекста као што су FliCo, Provence и LooComp, прилагођен за генерисање исечака у продукцијском систему за претрагу. Важно је напоменути да модел ради као фаза прецизности након наше фазе сировог преузимања. Као што је размотрено у нашем претходном чланку Perplexity Research, Представљање Perplexity Search API-ја, ми архитектурно постављамо наше системе за претрагу тако да раде изворно на нивоу поддокумента, или исечка, што нам већ омогућава да прилично добро балансирамо између прецизности и опозива. Увођење модела компресије контекста свесног упита помера Парето границу прецизности и опозива још више на споља.
Изградња и обука модела компресије контекста
Развијајући наш модел, имамо на уму три главна разматрања: заједничко разумевање упита и контекста, фино зрнасту селекцију на нивоу реченица и ефикасност како би се уклопио у изузетно строг буџет кашњења.
Архитектура модела
Као основу користимо pplx-diffusion модел. Ово је иста породица модела која стоји иза pplx-embed-v1, а и наш претходни академски рад, Diffusion-Pretrained Dense and Contextual Embeddings, и наши продукцијски перформанси потврђују да је то снажан двосмерни енкодер за пар упит-контекст. Једно од кључних својстава из ове породице модела је двосмерни контекст: свака репрезентација токена може да узме у обзир комплетан упит и комплетан контекст кандидата пре него што модел одлучи шта треба задржати.
На врху ове основе обучавамо лагану главу за компресију која предвиђа који део контекста треба задржати. Пошто нема укљученог генерисања, ова предвиђања се праве паралелно кроз цео контекст. У време опслуживања, систем за исечке агрегира ова предвиђања на нивоу реченице, примењује праг и скраћује резултат на тражени буџет токена.
Цјевовод надгледања
Обука овог компресора захтева надгледање на правом нивоу грануларности. Ознака релевантности на нивоу документа очигледно није прикладна за наш задатак екстрактивне компресије. Да бисмо генерисали довољно грануларне податке за надгледано учење, изградили смо цјевовод за означавање опсега који означује опсеге доказа релевантне за упит, заједно са опсезима са ометајућим садржајем које треба уклонити.
Наш цјевовод користи подешавање где LLM делује као судија. С обзиром на упит корисника и веб-страницу кандидата са њеним линком, насловом и резимеом, судија најпре врши разумевање упита, анализирајући упит и правећи листу могућих намера корисника. Уз ослонац на ове намере, судија затим обрађује контекст кандидата и враћа опсеге копиране од речи до речи из текста, са категоријом за сваки опсег како би се ознаке лакше прегледале.
Затим смо ускладили враћене опсеге са изворним текстом. Није изненађујуће што су већ сви излази судије били тачне копије: наивно поклапање ниски повратило је 98% опсега. Додавање једноставног пролаза за поклапање заснованог на регуларним изразима довело је опоравак опсега на 100%. Ово нам је дало поуздане, грануларне опсеге који су могли бити конвертовани у надгледање задржавања/одбацивања на нивоу токена.
Овај цјевовод надгледања смо оценили користећи мали курирани скуп података са ручно означеним опсезима, упоређујући мање моделе судија, различите промптове и различите конфигурације корака. Најбољи подешени систем био је двостепени цјевовод: прво разумевање упита, праћено категоризованим означавањем опсега. Такође смо валидирали скуп извучених опсега кроз наредне верификујуће евалуације као што су BrowseComp и SimpleQA, где је коришћење само задржаних опсега доказа очувало високе резултате уз значајно смањење улазних токена.
Користећи овај цјевовод, означили смо 750 хиљада парова упит-документ и користили добијене опсеге за обуку главе за компресију помоћу бинарне унакрсне ентропије. Овај процес омогућава нашем моделу компресије свесном упита да задржи изворни текст у нетакнутом стању док уклања контекст за који је мало вјероватно да ће помоћи наредном моделу да одговори на захтев корисника.
Осигуравање кашњења у реалном времену
Компресија контекста се налази пре наредног модела, чинећи је блок операцијом. Штавише, свака компресија зависи од упита. Стога, онлајн путања мора да оцењује парове упит-контекст за сваки документ кандидата у оквиру захтевног оквира кашњења. Спор модел компресије је контрапродуктивни, јер се бенефити кашњења од веће прецизности поништавају самим кашњењем компресије. У исто вријеме, мање интелигентан модел компресије доносиће лошије одлуке о томе шта треба изрезати, а шта задржати.
Практично питање је колико капацитета модела можемо безбедно уклонити пре него што квалитет компресије почне да опада. Упоређујемо пуну основу pplx-diffusion са 11-слојним и 17-слојним варијантама насталим кроз уклањање слојева и усмереним на путању претраге. За сваку од њих пролазимо кроз праг компресије и мерено је две величине: просечан број токена контекста прослеђених у наредним фазама по упиту и фракција корисних доказа сачуваних након компресије.
Слика 2 приказује границу квалитета и ефикасности. Модел је бољи када се креће ка горњем левом углу: мање токена у наредним фазама уз више сачуваних корисних доказа. 28-слојни модел обезбеђује референцу квалитета. 11-слојни модел демонстрира ризике превише агресивног компримовања модела. Резани 17-слојни модел представља средњу тачку: он веома прати 28-слојни модел у засићеном режиму, али се мали јаз отвара у стрмом делу криве где функционише већина продукцијског саобраћаја.
Да бисмо затворили тај јаз, користимо дистилацију знања на нивоу токена. Наш приступ је уобичајен: проширујемо стандардни губитак термином меке унакрсне ентропије на предвиђањима модела наставника, пондерисаним коефицијентом дистилације. Ово је довољно да модел ученика доведе до парности, омогућавајући нам да у потпуности пређемо на дистиловани 17-слојни модел у продукцији. Овај нови продукцијски модел доноси смањење кашњења инференције од 35–40% и смањење укупног GPU рачунања од 40–45% без пада квалитета у односу на 28-слојног наставника. Продукцијско кашњење износи мање од 20 ms (p99): довољно мало да се дода на путању опслуживања уз значајно смањење укупног броја токена прослеђених моделу за одговоре.
Квалитет и ефикасност токена
Користимо Perplexity-јев Agent API као тестокружење за анализу ефикасности компресије контекста. Оцењујемо три унапред подешена подешавања за Agent API:
„Ниски“ контексни унапред подешени профил који ограничава буџет токена за сваки скуп резултата на 1000 токена.
„Средњи“ контексни унапред подешени профил који ограничава буџет токена за сваки скуп резултата на 4000 токена.
„Високи“ контексни унапред подешени профил који ограничава буџет токена за сваки скуп резултата на 10000 токена.
И стандардна подешавања, без компресије, као и подешавања са компресијом, конфигурисана су тако да поштују ове буџете токена.
Вишекорачна претрага заснована на агентима (BrowseComp)
Прво испитујемо утицај компресије на ток рада вишекорачне претраге засноване на агентима на бенчмарку BrowseComp. Ову евалуацију вршимо користећи наш отворени оквир search_evals. Оцењивање је идентично у свим покретањима, користећи OpenAI-јев канонски промпт судије BrowseComp LLM-а.
Две димензије од интереса су тачност бенчмарка и употреба токена. Важно је напоменути да меримо употребу токена на нивоу упита уместо на нивоу појединачних корака како бисмо измерили стварно оптерећење токенима настало током животног циклуса захтева. Слика 3 приказује границу „резултат-токен“, односно оцену тачности наспрам употребе токена.
Компресија доноси нову Парето границу широм опсега. За сваку поставку, увођење компресије смањује употребу токена на нивоу упита за било гдје од 10% до 70%, уз добитке у тачности између 4 и 4,81 процентних поена. Увођење компресије омогућава чак и нашем „ниском“ унапред подешеном профилу да надмаши „високи“ профил без компресије, и то све уз смањење употребе токена за више од три пута.
Примећујемо да са компресијом, „високи“ профил доноси већу тачност него „средњи“ као што смо могли и очекивати. Међутим, занимљиво је да се то постиже уз мању употребу токена. Ово открива суптилан, али важан ефекат компресије: са компресијом, чак и повећање величине контекста по кораку може омогућити моделу да предузме мање корака како би стигао до тачног резултата. Истраживање ове немонотоности представља обећавајући правац за будући рад.
SimpleQA: једнокорачна утврђивање чињеница
BrowseComp наглашава вишекорачно истраживање, али многи продукцијски токови рада укључују једнокорачну претрагу чињеница. Да бисмо утврдили да ли компресија такође помаже у режиму једног корака, такође испитујемо перформансе на SimpleQA, бенчмарку који се састоји од 4.326 питања на која треба одговорити у једном кораку претраге, уместо у петљи агената.
Као и пре, приказујемо тачност у односу на просечан укупан број токена по задатку користећи канонски промпт судије. Слика 4 приказује границу резултат-токен у овом једнокорачном постављању. Иако су величине ефеката сажетије у једнокорачном постављању, поново примећујемо да компресија истовремено побољшава тачност и ефикасност кроз све унапред подешене профиле, уводећи тако нову Парето границу. Са омогућеном компресијом, средњи профил постиже 95% тачности уз просек од само 200 токена по документу. С обзиром на просечну дужину документа од преко 10.000 токена, ово представља перформансе на нивоу границе могућности уз однос компресије већи од 50.
Шта на крају завршава у исечцима?
Добици у наредним фазама у секцијама 4.1 и 4.2 су потпуни. Да бисмо разумели како компресија мења појединачне исечке, покрећемо посебну евалуацију која користи LLM судију да класификује сваки токен сваког преузетог исечка у једну од шест категорија:
Витално: докази неопходни за одговор на захтев корисника.
Ван теме: информације које могу бити корисне за неку другу сврху, али се не односе на третни упит.
Огласи: ирелевантно рекламирање које одвлачи пажњу од одговора на захтев корисника.
Метаподаци: метаподаци о садржају документа.
Кориснички интерфејс и навигација: елементи за приказ на фронтенду и навигацију.
Дупликат: понављање претходно укључених информација.
Наша евалуација се изводи на 1.000 упита са различитих домена из нашег скупа за валидацију, упоређујући продукцијски сток са иначе идентичном основном линијом са онемогућеном компресијом. Као што је приказано на слици 5, компресија повећава удео виталних токена по исечку за просечно 63% у односу на основну линију без компресије. Примећујемо одговарајуће смањење од 29% код ирелевантних токена, са посебно стрмим падовима у корисничком интерфејсу/навигацији (-58%), метаподацима (-46%) и огласима (-43%). Ови резултати потврђују механизам за горе дискутована побољшања квалитета и ефикасности: компресија побољшава перформансе кроз обе димензије значајним повећањем односа сигнала и шума за сваки појединачни исечак.
Слика 6 илуструје ову промену за појединачни упит. За упит „унос млијека новорођенчета старог 6 дана по храњењу“, приказујемо и некомпримоване, основне и компримоване исечке. Компресија елиминише категорије не-виталног садржаја и задржава само информације о храњењу повезане са новорођенчетом. Што је још важније, компресија успешно елиминише садржај који може бити генерално релевантан за страницу, али ван теме за овај специфични упит фокусиран на новорођенче.
Закључак
Системи вештачке интелигенције се ослањају на информације високог сигнала како би интелигентно и ефикасно опслуживали захтеве корисника. Ове информације морају бити представљене што хируршкије како би се максимизирала релевантност за сваки захтев. Наши нови модели компресије свесни упита раде управо то тако што максимизирају доказе везане за тему по исечку и агретивно одбацују ирелевантне ометајуће садржаје.
Применом ових нових модела у оквиру нашег стока за претрагу, у могућности смо да пружимо брже и боље одговоре онима који се ослањају на наше производе и API-је. Наш приступ ствара једноставну површину за контролу, омогућавајући нашим системима и корисницима API-ја да подесе степен компресије како би балансирали између опозива, кашњења и трошкова.
Курирање контекста је област у развоју, и још много тога треба учинити како би се оптимизовала вредност сваког токена који се користи у данашњим системима интелигенције на граници могућности. Активно радимо на томе да наше технике курирања контекста учинимо још бољим кроз побољшања модела и архитектуру система како бисмо остварили још ширу употребу ових модела.
Референце
N. Chirkova, T. Formal, V. Nikoulina i S. Clinchant. Provence: Efficient and Robust Context Pruning for Retrieval-Augmented Generation, 2025. Прихваћено на ICLR 2025. arXiv:2501.16214.
T. Do, D. P. Tran, A. Vo, S. K. Kim i D. Kim. LooComp: Leverage Leave-One-Out Strategy to Encoder-only Transformer for Efficient Query-Aware Context Compression, 2026. arXiv:2603.09222.
S. Eslami, M. Gaiduk, M. Krimmel, L. Milliken, B. Wang i D. Bykov. Diffusion-Pretrained Dense and Contextual Embeddings, 2026. arXiv:2602.11151.
Z. Wang, J. Araki, Z. Jiang, M. R. Parvez i G. Neubig. Learning to Filter Context for Retrieval-Augmented Generation, 2023. arXiv:2311.08377.
Цитирање
@online{perplexity2026QueryAwareContextCompressionForBetterSnippets,
author = {{Perplexity} and Bo Wang and Hao Zhang and Ismail Gadzhiev and Kirill Priemko and Markus Krimmel and Nandor Licker and Vitalii Polshkov and Sarah Eslami and Louis Milliken and Maksim Gaiduk and Nikita Kireev and Jerry Ma},
title = {{Query-aware context compression for better snippets}},
date = {2026-05-14},
url = {https://perplexity.coolkeypoint.com/hub/blog/query-aware-context-compression-for-better-snippets}
}