Context Compression for LLMs in Rust | Signum

Signum is a Rust library and CLI for deterministic context compression before an LLM call. Publishing in the third release round.

Kratšie podľa pravidiel. Pripravené na kontrolu.

Keď sa repozitár zverejní, prečítajte si poznámky k implementácii, spustite lokálny binárny súbor a výsledok položte vedľa pasáže, ktorá ho vytvorila. Signum prichádza v treťom kole programu základného vydania, pričom jeho dokumentácia je dostupná v ten istý deň.

Hustý dátový formát s publikovanými okruhmi.

Ohraničená cesta od otázky k zdrojom s dôkazmi.

Tkaný model, ktorý zanecháva stopu vedľa odpovede.

Migračná úloha sa nedokončila, pretože spojenie s replikou sa po 30 sekundách prerušilo.

migračná úloha sa nedokončila spojenie replika prerušené 30 sekúnd.

Úroveň posúva číselný rez jedným pevným poradím slov. Zároveň prehlbuje penalizáciu spojovacích slov, keď sa nastavenie zvyšuje v rámci pasáže.

Pripnuté pozície prechádzajú pred rozpočtom bez ohľadu na ich poradie. Ďalšie ochrany vysvetľujú, kde žije správnosť, nie preferencia.

Osem druhov rozpätí sa stane očíslovanými zástupcami pred prvým skóre. Nadpisy, citáty, tabuľky a ohraničené riadky sú držané ako celé riadky.

Po kompresii sú zástupcovia obnovení, či už sú napísané normálne alebo malými písmenami. Výsledok zostáva byte-identický tam, kde sa naň musí spoľahnúť človek alebo stroj.

Strop je udelený skôr, ako sa môžu započítať bežné bonusy. Žiadna kombinácia dĺžky, veľkých písmen alebo vzácnosti ho nedosiahne.

To robí z negácie záruku, nie pravdepodobného preživšieho. Záleží na tom všade, kde by čisto vyzerajúce opačné tvrdenie vytvorilo tichú chybu.

Spätné skenovanie prekračuje malé slová medzi časticou a jej slovesom. Keď nájde akciu, obe pozície získajú vynútenú váhu.

Osamelá častica nezíska nič a môže padnúť s výplňou. Toto rozlíšenie udržiava "set up", zatiaľ čo obyčajná predložka môže prejsť.

Štyridsaťdeväť redukcií sa spustí bez kontextu pred začiatkom poradia. Ďalších šestnásť čaká na slovo, ktoré nasleduje, pred konaním.

Veľké písmeno, číslica, znak cesty alebo deklarovaný výraz otvára bránu. Obyčajné podstatné meno necháva frázu nedotknutú, pretože by sa tvrdenie zmenilo.

Próza a kód používajú všetkých päť pozícií, zatiaľ čo výstup nástroja má tri. Päť strojovo tvarovaných tried pristane na jednej pozícii bez čítania číselníka.

Protokol, diff alebo sada záznamov preto produkuje rovnaký výsledok pri každom nastavení volajúceho. Klasifikácia rozhoduje o zaobchádzaní pred začiatkom kompresie.

Štrukturálny prechod zaobchádza s každým riadkom podľa jeho úlohy. Tabuľky a pravidlá prechádzajú, zatiaľ čo odseky a zdvorilosť sa môžu skrátiť.

Otočka konverzácie obsahujúca dôkazy zostáva celá. Každá náhrada je ponechaná len vtedy, keď je menšia ako originál.

Prechod častí pripúšťa časť nad stropom, zatiaľ čo pod podlahou. Zastaví dokument, aby sa nestal príliš nepatrným na odpoveď.

Prechod viet sa riadi iba stropom a môže rezať v rámci časti. Dispečer najprv skúsi cestu s dvoma limitmi.

Značkové slová sa počítajú cez tridsaťpäť kódov, pričom jedinečné značky majú hodnotu trikrát vyššiu ako zdieľané. Jazyk musí prekročiť prah, aby sa jeho pravidlá uplatnili.

Maďarčina, fínčina a estónčina sú pred vyhľadávaním v prípade potreby kmeňované. Neistý výsledok padá späť na všeobecné pravidlá a odstraňuje menej.

Každá fáza si ponechá výsledok len vtedy, keď používa menej tokenov ako jej vstup. Krátka pasáž sa vráti presne tak, ako prišla, nezmenená.

Samostatné kompresory vracajú rovnaký výstup, pretože nič nevzorkuje. Testy potvrdzujú hranicu veľkosti aj opakovateľnosť.

Odstránenie, podobnosť a čitateľnosť patria do toho istého meraného behu. Čitateľnosť kontroluje, či silnejšia úspora neznetvorila prózu.

Korpus tvorilo 5 520 viet z päťdesiatich technických dokumentov s povoleným vyhľadávaním. Iný korpus potrebuje vlastné meranie, nie požičaný sľub.

Každá veta sa porovnáva s dotazom pomocou troch gramových kódovaní. Prekrytie kľúčových slov skóruje zvyšok.

Polovica prežije, s minimom tri, potom sa vrátia v pôvodnom poradí. Pasáž kratšia ako štyri vety sa vráti tak, ako je napísaná.

Odchádzajúca polovica modelového účtu je polovica, ktorú môže váš tím meniť. Je to zostavený kontext, často odosielaný nezmenený viac ako raz.

Lokálne pravidlo odstráni toto lešenie pred plateným volaním. Nevytvára druhý účet ani nemení odpoveď, ktorá sa stále musí vygenerovať.

Recenzent môže pomenovať každé odstránené slovo podľa pravidla, ktoré ho odstránilo. Označená kópia im dáva niečo konkrétne na kontrolu a podpis.

Zhrnutie zanecháva len úsudok, ktorému treba veriť proti pamäti. Veta, na ktorú sa neskôr niekto opýta, je presne tá, ktorá mohla zmiznúť.

Skracovanie prebieha v procese, ktorý už dokument drží. Žiadny endpoint, dodávateľská fronta ani extra procesor nedostane kópiu.

Krok založený na pravidlách zostáva pri kóde, ktorý dokument spracúva.

Stabilné výsledky robia z opakovaných dokumentov užitočné položky vyrovnávacej pamäte. Testy tvrdia presný výstup, nie niečo len vierohodné.

Rozdiel medzi dvoma behmi je potom zistenie, nie šum. To dáva neskoršiemu preskúmaniu incidentu jednu pevnú, skúmateľnú časť jeho záznamu.

Príkazy, odkazy a citovaný chybový text zostávajú úplne mimo skracovania. Deväť anglických slov, ktoré obracajú tvrdenie, je tiež chránených.

Skopírovaný príkaz stále beží a citovanú chybu možno stále vyhľadať. Veta sa nemôže pri vysokom nastavení potichu zmeniť na svoj opak.

Jedna komponenta pokrýva starostlivé zákaznícke listy aj priame strojové denníky. Klasifikácia rozhoduje, či je nastavenie volajúceho vôbec relevantné.

Denníky, dify a záznamy možno opraviť alebo nechať ísť samostatnou hustou cestou. To udržiava obstarávanie na jednej komponente namiesto niekoľkých nástrojov.

Dokumentový prechod rešpektuje strop aj minimum. Jeho spodná hranica udržiava kratšiu pasáž dostatočne podstatnú na zodpovedanie otázky.

Vetový prechod rešpektuje len strop, keď záleží len na okne. Voľba patrí do code review, nie do unáhleného manuálneho rozhodnutia.

Komponenta určuje jazyk z textu, nie z nastavenia nájomcu. Prah zastaví neisté čítanie pred použitím nesprávnych pravidiel.

Každý rozpoznaný kód prináša vlastné funkčné slová a substitúcie. Jazyky s ťažkými koncovkami sa pred začiatkom vyhľadávania stemujú.

Každá odpoveď nástroja nesie bajty dnu, bajty von a výslednú úsporu. Váš vlastný prenos teda poskytuje dôkazy od prvého volania.

Týždeň skutočných promptov zmení prípad na súčet, nie na odhad. Žiadny samostatný monitorovací systém nemusí merať tú istú prácu znova.

Softvér odstráni výplň predtým, ako AI prečíta dlhú správu. Viac z toho, čo ste vložili, sa zmestí do tej istej požiadavky.

Funguje to v nástroji, ktorý už správu spracúva. Nič extra sa neposiela preč len preto, aby bol text kratší.

Zhrnutie žiada niečo, aby rozhodlo, čo je vo vašom dokumente dôležité. Pevné pravidlá odstraňujú len druhy slov napísaných na ich zozname.

Môžete dať dve kópie dokopy a vidieť každé slovo, ktoré odišlo. To je bezpečnejšie ako dôverovať pamäti, keď na chýbajúcej vete záleží.

Niektoré dlhé slová sa vymenia za kratšie slovo z pevnej tabuľky. Rovnaké slovo dostane rovnakú výmenu v každom dokumente.

Výsledok môže znieť stroho, nie vyleštene. Jeho zmysel zostáva prítomný a ďalší čitateľ potrebuje ten zmysel, nie formálne znenie.

Kódy, odkazy a presný varovný text sa vyberú pred začiatkom akéhokoľvek skracovania. Nadpisy a riadky tabuliek zostávajú na mieste z rovnakého dôvodu.

Jeden nesprávny znak môže zastaviť fungovanie vyhľadávania, formulára alebo príkazu. Tieto odkazy sa vrátia presne tak, ako boli napísané.

Skracovanie prebieha na stroji, ktorý už text má. Žiadna nová spoločnosť nedostane dokument, aby ho zmenšila.

Rovnaký odsek sa zajtra vráti ako rovnaký kratší odsek. Ak sa zmení, niečo sa zmenilo vo vstupe alebo pravidlách, nie v názore.

Signum určí jazyk zo slov a písmen v správe. Nemusíte dokument označovať ani konfigurovať pred odoslaním.

Ak si nie je istý, použije všeobecné pravidlá a odstráni menej. Koncovky sa odstraňujú ako prvé v jazykoch, kde skrývajú slovo pod nimi.

Signum je knižnica v jazyku Rust na deterministickú kompresiu promptov pred volaním LLM. Vyhodnocuje a skracuje kontext v rámci procesu, ktorý ho už drží, vracia rovnaký výsledok pre rovnaký vstup a nevykonáva žiadne volanie modelu ani sieťovú požiadavku. Pravidlá, ktoré rozhodujú o tom, čo sa odstráni, stoja za prečítanie: Signum vychádza v treťom kole programu vydania nadácie.

Signum ohodnotí každé slovo na základe piatich spočítateľných signálov: dĺžky, veľkých písmen vo vnútri vety, číslic, pozície a vzácnosti vo vašej oblasti. Úroveň mení, koľko z tohto poradia prežije, nikdy nie to, čo pasáž znamená.

Päť signálov tvorí skóre. Úroveň posúva hranicu, zhruba od siedmich slov z desiatich po menej ako dve.

Rovnaký vstup prechádza rovnakou aritmetickou cestou, takže výsledok možno skontrolovať a overiť.

Skóre je užitočné len vtedy, ak sa doň niektoré časti nikdy nedostanú.

Príkazy, odkazy, kód, zvýraznenie, značky a URL adresy sa pred hodnotením vyberú a po ňom sa obnovia znak po znaku. Štrukturálne riadky sa tiež vynechajú, takže skrátený dokument zostane dokumentom.

Osem druhov častí sa pred prvým zoradením slova zmení na očíslované zástupky.