Files
OmniRoute/docs/i18n/ml/docs/compression/COMPRESSION_GUIDE.md
Diego Rodrigues de Sa e Souza 8feea123bb feat(docs): mirror every docs/ page in all 65 locales (#14106)
* feat(docs): mirror every docs/ page in all 65 locales

Extends the documentation mirrors from the 22-page core set (#13940) to
every Markdown page under docs/: 152 sources x 65 locales = 9,880 mirrors
(6,208 new), language bars rewritten for the full locale list, state
adopted so the blocking drift gate now covers all 152 pages.

run-translation.mjs: an oversized block made only of table rows or list
items (PROVIDER_REFERENCE.md 244-row table, FREE_TIERS.md 71-item list) is
cut at item boundaries and rejoined without a blank line — the single
16-40 KB request outlived the backend socket for verbose scripts. 48
older mirrors whose tables had lost rows were retranslated with --force.

* docs(i18n): refresh mirrors for the sources the base changed since the branch cut

Section-level retranslation of the 29 docs (and README.md) whose source
or mirrors moved on release/v3.8.51 during the run, then state adoption;
the drift gate is green again on the merged tree.
2026-09-18 13:16:46 -03:00

66 KiB
Raw Blame History

🗜️ Prompt Compression Guide — OmniRoute (മലയാളം)

🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW


യോഗ്യമായ കോൺടെക്സ്റ്റിൽ സ്വയമേവ 15-95% ലാഭിക്കൂ. പെട്ടെന്നുള്ള ഒരു അവലോകനത്തിനായി, README കംപ്രഷൻ വിഭാഗം കാണുക.

അവലോകനം

അപ്സ്ട്രീം പ്രൊവൈഡറുകളിലേക്ക് അഭ്യർത്ഥനകൾ എത്തുന്നതിന് മുമ്പ് മുൻകൂട്ടി പ്രവർത്തിക്കുന്ന ഒരു മോഡുലാർ പ്രോംപ്റ്റ് കംപ്രഷൻ പൈപ്പ്ലൈൻ OmniRoute നടപ്പിലാക്കുന്നു. അതായത്, നിങ്ങളുടെ ടോക്കൺ ലാഭം സുതാര്യമായി സംഭവിക്കുന്നു — നിങ്ങളുടെ വർക്ക്ഫ്ലോയിൽ മാറ്റങ്ങളൊന്നും ആവശ്യമില്ല.

ക്ലയന്റ് അഭ്യർത്ഥന
  → കംപ്രഷൻ സ്ട്രാറ്റജി സെലക്ടർ
    → കോംബോ ഓവർറൈഡ് ഉണ്ടോ? → കോംബോ ക്രമീകരണം ഉപയോഗിക്കുക
    → ഓട്ടോ-ട്രിഗർ ത്രെഷോൾഡ് എത്തിയോ? → ഓട്ടോ മോഡ് ഉപയോഗിക്കുക
    → ഡിഫോൾട്ട് മോഡ് ഉണ്ടോ? → ഗ്ലോബൽ ക്രമീകരണം ഉപയോഗിക്കുക
    → ഓഫാണോ? → കംപ്രഷൻ ഒഴിവാക്കുക
  → തിരഞ്ഞെടുത്ത കംപ്രഷൻ മോഡ്
    → ഓഫ്: കംപ്രഷൻ ഇല്ല
    → ലൈറ്റ്: സുരക്ഷിതമായ വൈറ്റ്സ്പേസ്/ഫോർമാറ്റിംഗ് വൃത്തിയാക്കൽ (~15%)
    → സ്റ്റാൻഡേർഡ്: ഗുഹാമനുഷ്യ ശൈലിയിലുള്ള അനാവശ്യ വാക്കുകൾ നീക്കംചെയ്യൽ (~30%)
    → അഗ്രസീവ്: ഹിസ്റ്ററി ഏജിംഗ് + സംഗ്രഹിക്കൽ (~50%)
    → അൾട്രാ: ഹ്യൂറിസ്റ്റിക് പ്രൂണിംഗ് + കോഡ്-ബ്ലോക്ക് ചുരുക്കൽ (~75%)
    → RTK: കമാൻഡ്-അവബോധമുള്ള ടെർമിനൽ/ടൂൾ-ഔട്ട്പുട്ട് ഫിൽട്ടറിംഗ് (60-90% അപ്സ്ട്രീം പരിധി)
    → സ്റ്റാക്ക്ഡ്: ക്രമപ്പെടുത്തിയ മൾട്ടി-എഞ്ചിൻ പൈപ്പ്ലൈൻ, സാധാരണയായി ആദ്യം RTK, തുടർന്ന് Caveman (78-95% യോഗ്യമായ പരിധി)
  → കംപ്രസ് ചെയ്ത അഭ്യർത്ഥന → പ്രൊവൈഡർ

കംപ്രഷൻ മോഡുകൾ

ഓഫ്

കംപ്രഷൻ പ്രയോഗിക്കില്ല. എല്ലാ സന്ദേശങ്ങളും മാറ്റമില്ലാതെ കടന്നുപോകുന്നു.

ലൈറ്റ് മോഡ് (~15% ലാഭം, <1ms ലേറ്റൻസി)

ഏറ്റവും സുരക്ഷിതമായ മോഡ് — അർത്ഥപരമായ മാറ്റങ്ങളൊന്നുമില്ല, ഫോർമാറ്റിംഗ് വൃത്തിയാക്കൽ മാത്രം:

സാങ്കേതികത വിവരണം
collapseWhitespace തുടർച്ചയായ ശൂന്യവരികളും വരികളുടെ അവസാനത്തിലുള്ള സ്പേസുകളും ലയിപ്പിക്കുന്നു
dedupSystemPrompt ഡ്യൂപ്ലിക്കേറ്റ് സിസ്റ്റം സന്ദേശങ്ങൾ നീക്കംചെയ്യുന്നു
compressToolResults വിശദമായ ടൂൾ/ഫങ്ഷൻ ഔട്ട്പുട്ടുകൾ കംപ്രസ് ചെയ്യുന്നു
removeRedundantContent ആവർത്തിച്ച നിർദ്ദേശങ്ങൾ നീക്കംചെയ്യുന്നു
replaceImageUrls base64 ഇമേജ് ഡാറ്റ URI-കൾ ചുരുക്കുന്നു

ഏറ്റവും അനുയോജ്യം: എപ്പോഴും ഓണായുള്ള ഉപയോഗം, സുരക്ഷ നിർണായകമായ വർക്ക്ഫ്ലോകൾ.

സ്റ്റാൻഡേർഡ് മോഡ് (~30% ലാഭം)

Caveman-ൽ നിന്ന് പ്രചോദനം ഉൾക്കൊണ്ടത് — അർത്ഥം നിലനിർത്തിക്കൊണ്ട് അനാവശ്യ വാക്കുകളും അതിവിശദമായ പ്രയോഗങ്ങളും നീക്കംചെയ്യുന്നു:

  • അനാവശ്യ വാക്കുകൾ നീക്കംചെയ്യുന്നു ("please", "I think", "basically", "actually")
  • അതിവിശദമായ പ്രയോഗങ്ങൾ ചുരുക്കുന്നു ("in order to" → "to", "as a result of" → "because")
  • വിനയപൂർവമായ മയപ്പെടുത്തലുകൾ നീക്കംചെയ്യുന്നു ("Would you mind...", "If you could possibly...")
  • കോഡിംഗ് പ്രോംപ്റ്റുകൾക്കായി ക്രമീകരിച്ച 30+ regex നിയമങ്ങൾ

ഏറ്റവും അനുയോജ്യം: ദൈനംദിന കോഡിംഗ് വർക്ക്ഫ്ലോകൾ, ചെലവ് പരിഗണിക്കുന്ന ടീമുകൾ.

അഗ്രസീവ് മോഡ് (~50% ലാഭം)

ദൈർഘ്യമേറിയ സെഷനുകൾക്കായുള്ള സ്മാർട്ട് ഹിസ്റ്ററി മാനേജ്മെന്റ്:

  • മെസേജ് ഏജിംഗ് — പഴയ സന്ദേശങ്ങൾ ക്രമേണ കൂടുതൽ കംപ്രസ് ചെയ്യപ്പെടുന്നു
  • ടൂൾ റിസൾട്ട് സംഗ്രഹിക്കൽ — ദൈർഘ്യമേറിയ ടൂൾ ഔട്ട്പുട്ടുകൾക്ക് പകരം സംഗ്രഹങ്ങൾ നൽകുന്നു
  • ഘടനാപരമായ സമഗ്രതാ ഗാർഡുകൾtool_use + tool_result ജോടികൾ സ്ഥിരതയോടെ തുടരുന്നുവെന്ന് ഉറപ്പാക്കുന്നു
  • കോൺടെക്സ്റ്റ് വിൻഡോ അവബോധം — ഓരോ മോഡലിന്റെയും ടോക്കൺ പരിധികൾ പാലിക്കുന്നു

ഏറ്റവും അനുയോജ്യം: ദൈർഘ്യമേറിയ ഡീബഗ്ഗിംഗ് സെഷനുകൾ, വലിയ കോഡ്ബേസുകൾ.

അൾട്രാ മോഡ് (~75% ലാഭം)

ടോക്കൺ നിർണായകമായ സാഹചര്യങ്ങൾക്കുള്ള പരമാവധി കംപ്രഷൻ:

  • ഹ്യൂറിസ്റ്റിക് പ്രൂണിംഗ് — പ്രസക്തി ത്രെഷോൾഡിന് താഴെയുള്ള സന്ദേശങ്ങൾ നീക്കംചെയ്യുന്നു
  • കോഡ് ബ്ലോക്ക് ചുരുക്കൽ — ആവർത്തനമുള്ള കോഡ് ഉദാഹരണങ്ങൾ കംപ്രസ് ചെയ്യുന്നു
  • ബൈനറി സെർച്ച് ട്രങ്കേഷൻ — കോൺടെക്സ്റ്റ് വിൻഡോയ്ക്കുള്ള ഏറ്റവും അനുയോജ്യമായ കട്ട് പോയിന്റ് കണ്ടെത്തുന്നു
  • അഗ്രസീവ് മോഡിലെ എല്ലാ സവിശേഷതകളും ഉൾപ്പെടുത്തിയിരിക്കുന്നു

ഏറ്റവും അനുയോജ്യം: നിങ്ങൾ തുടർച്ചയായി കോൺടെക്സ്റ്റ് പരിധികളിൽ എത്തുമ്പോൾ.

RTK മോഡ് (60-90% അപ്സ്ട്രീം പരിധി)

കോഡിംഗ്-ഏജന്റ് സെഷനുകളിൽ പ്രത്യക്ഷപ്പെടുന്ന വിശദമായ ടൂൾ ഔട്ട്പുട്ടുകൾക്കായി RTK മോഡ് ഒപ്റ്റിമൈസ് ചെയ്തിരിക്കുന്നു:

  • git status, git diff, git log, ടെസ്റ്റ് റണ്ണറുകൾ, TypeScript/Vite/Webpack ബിൽഡുകൾ, ESLint/Biome/Prettier, npm ഓഡിറ്റ്/ഇൻസ്റ്റാളുകൾ, Docker ലോഗുകൾ, ഇൻഫ്രാ ഔട്ട്പുട്ട്, പൊതുവായ ഷെൽ ഔട്ട്പുട്ട് എന്നിവ പോലുള്ള കമാൻഡ്/ഔട്ട്പുട്ട് ക്ലാസുകൾ കണ്ടെത്തുന്നു
  • open-sse/services/compression/engines/rtk/filters/-ൽ നിന്നുള്ള JSON ഫിൽട്ടർ പാക്കുകൾ പ്രയോഗിക്കുന്നു
  • പ്രോജക്റ്റിലെയോ ഗ്ലോബൽ filters.toml ഫയലുകളിലെയോ RTK TOML സ്കീമ v1 ഫിൽട്ടറുകൾ, ഇൻലൈൻ-ടെസ്റ്റ് സാധൂകരണത്തോടും പ്രോജക്റ്റ് ഫയലുകൾക്കായുള്ള ട്രസ്റ്റ്-ഗേറ്റിംഗോടും കൂടി ഇമ്പോർട്ട് ചെയ്യുന്നു
  • ഇൻലൈൻ പരിശോധനാ സാമ്പിളുകളുള്ള 49 ബിൽറ്റ്-ഇൻ ഫിൽട്ടറുകൾ ഉൾപ്പെടുന്നു
  • ANSI കൺട്രോൾ സീക്വൻസുകൾ, പ്രോഗ്രസ് ബാറുകൾ, ആവർത്തിച്ച വരികൾ, നടപടിയെടുക്കാനാകാത്ത അനാവശ്യ വിവരങ്ങൾ എന്നിവ നീക്കംചെയ്യുന്നു
  • പരാജയങ്ങൾ, പിശകുകൾ, മുന്നറിയിപ്പുകൾ, മാറ്റം വരുത്തിയ ഫയലുകൾ, സംഗ്രഹങ്ങൾ, ദൈർഘ്യമേറിയ ഔട്ട്പുട്ടിന്റെ അവസാനഭാഗം എന്നിവ നിലനിർത്തുന്നു
  • ട്രസ്റ്റ്-ഗേറ്റഡ് പ്രോജക്റ്റ് ഫിൽട്ടറുകൾ, ഗ്ലോബൽ ഫിൽട്ടറുകൾ, ഐച്ഛികമായി റീഡാക്റ്റ് ചെയ്ത റോ-ഔട്ട്പുട്ട് വീണ്ടെടുക്കൽ എന്നിവ പിന്തുണയ്ക്കുന്നു

ഏറ്റവും അനുയോജ്യം: ഷെൽ, ബിൽഡ്, ടെസ്റ്റ്, git, grep, ഫയൽ-ഔട്ട്പുട്ട് ട്രാൻസ്ക്രിപ്റ്റുകൾ എന്നിവയുള്ള ഏജന്റ് സെഷനുകൾ.

സ്റ്റാക്ക്ഡ് മോഡ് (78-95% യോഗ്യമായ പരിധി)

സ്റ്റാക്ക്ഡ് മോഡ് ഒന്നിലധികം കംപ്രഷൻ എഞ്ചിനുകൾ നിർണായകമായ ഒരു ക്രമത്തിൽ പ്രവർത്തിപ്പിക്കുന്നു. ഡിഫോൾട്ട് പൈപ്പ്ലൈൻ ഇതാണ്:

RTK -> Caveman

ഈ ക്രമത്തിൽ ആദ്യം ടെർമിനൽ/ടൂൾ ഔട്ട്പുട്ട് ചുരുക്കുന്നു, തുടർന്ന് ശേഷിക്കുന്ന സ്വാഭാവിക-ഭാഷാ പ്രോംപ്റ്റിൽ Caveman അർത്ഥപരമായ ചുരുക്കൽ പ്രയോഗിക്കുന്നു. സ്റ്റാക്ക്ഡ് പൈപ്പ്ലൈനുകൾ ഗ്ലോബലായോ റൂട്ടിംഗ് കോംബോകൾക്ക് അസൈൻ ചെയ്ത കംപ്രഷൻ കോംബോകൾ വഴിയോ കോൺഫിഗർ ചെയ്യാം.

ഏറ്റവും അനുയോജ്യം: വലിയ ടൂൾ ലോഗുകൾക്കൊപ്പം മനുഷ്യ നിർദ്ദേശങ്ങളോ അസിസ്റ്റന്റ് സംഗ്രഹങ്ങളോ ഉള്ള മിശ്രിത കോൺടെക്സ്റ്റ്.


അപ്സ്ട്രീം ലാഭത്തിന്റെ കണക്ക്

രണ്ട് ഉറവിടങ്ങളിൽ നിന്നുള്ള കംപ്രഷൻ ലാഭം OmniRoute രേഖപ്പെടുത്തുന്നു: അപ്സ്ട്രീം പ്രോജക്റ്റ് ബെഞ്ച്മാർക്കുകളും OmniRoute-ന്റെ സ്വന്തം എൻജിൻ സംയോജനവും.

ഉറവിടം ഇവിടെ ഉപയോഗിച്ച അപ്സ്ട്രീം README കണക്ക്
Caveman ~75% കുറവ് ഔട്ട്പുട്ട് ടോക്കണുകൾ, 65% ബെഞ്ച്മാർക്ക് ശരാശരി ഔട്ട്പുട്ട് ലാഭം, 22-87% പരിധി, കൂടാതെ ~46% ഇൻപുട്ട് കംപ്രഷൻ ടൂൾ
RTK 60-90% കമാൻഡ്-ഔട്ട്പുട്ട് ലാഭം; മാതൃകാ സെഷനിൽ ~118,000 -> ~23,900 ടോക്കണുകൾ, അഥവാ 79.7% ലാഭം (~80%)

ഓവർലാപ്പ് ചെയ്യുന്ന ടൂൾ/കോൺടെക്സ്റ്റ് പേലോഡുകൾക്കായി, ഡിഫോൾട്ട് OmniRoute കോംബോ എൻജിനുകളെ ഇങ്ങനെ സ്റ്റാക്ക് ചെയ്യുന്നു:

RTK -> Caveman

സംയോജിത ലാഭം സങ്കലിതമല്ല, ഗുണനാത്മകമാണ്:

combined = 1 - (1 - RTK savings) * (1 - Caveman input savings)
average  = 1 - (1 - 0.80) * (1 - 0.46) = 89.2%
range    = 1 - (1 - 0.60..0.90) * (1 - 0.46) = 78.4-94.6%

RTK-ക്കും Caveman-നും ഒരേ ഇൻപുട്ട്/കോൺടെക്സ്റ്റ് പേലോഡ് കുറയ്ക്കാൻ കഴിയുമ്പോഴാണ് ആ 78-95% കണക്ക് ബാധകമാകുന്നത്. Caveman റെസ്പോൺസ് ഔട്ട്പുട്ട് മോഡ് വേറിട്ടതാണ്: അത് പ്രവർത്തനക്ഷമമാക്കുമ്പോൾ, Caveman-ന്റെ സ്വന്തം ഔട്ട്പുട്ട് ലാഭം (65% ശരാശരി, ~75% പ്രധാന കണക്ക്, 22-87% പരിധി) ഉപയോഗിക്കുക. മൊത്തം ബില്ലിംഗ് ലാഭം നിങ്ങളുടെ പ്രോംപ്റ്റ്/ഔട്ട്പുട്ട് അനുപാതത്തെ ആശ്രയിച്ചിരിക്കുന്നു.

"യോഗ്യമായത്" എന്നതുകൊണ്ട് യഥാർഥത്തിൽ അർത്ഥമാക്കുന്നത്

15-95% എന്ന പ്രധാന പരിധി യഥാർഥമാണ്, എന്നാൽ അത് ആവർത്തനമുള്ളതോ അനാവശ്യമായി ദൈർഘ്യമേറിയതോ ആയ ഉള്ളടക്കത്തിന് മാത്രമാണ് ബാധകമാകുന്നത് — ആവർത്തിച്ചുള്ള പിശക് വരികൾ, ഒരേ മുന്നറിയിപ്പ് തുടർച്ചയായി പുറപ്പെടുവിക്കുന്ന ഒരു ബിൽഡ് ലോഗ്, അമിതവലുപ്പമുള്ള grep/ഫയൽ-റീഡ് ഡംപ് എന്നിവയ്ക്ക്. എല്ലാ അഭ്യർത്ഥനയിലും ഇത്രയും ലാഭമുണ്ടാകുമെന്ന് ഇതിനർത്ഥമില്ല.

അനുഭവപരമായി സ്ഥിരീകരിച്ചത് (tests/unit/compression/stacked-compression-tool-result-savings.test.ts): ഒരേപോലുള്ള 300 പിശക് വരികൾ അടങ്ങിയ Anthropic-രൂപത്തിലുള്ള tool_result ബ്ലോക്കിനെതിരെ നടത്തിയ ഒരു stacked (RTK + Caveman) റൺ 95.93% ടോക്കൺ ലാഭം / 96.26% ക്യാരക്ടർ ലാഭം നൽകി — പരസ്യപ്പെടുത്തിയ പരിധിക്കുള്ളിൽ തന്നെ. എന്നാൽ, സാധാരണ ആവർത്തനമില്ലാത്ത ടൂൾ ഔട്ട്പുട്ടിനെതിരെ (വൃത്തിയുള്ള ഒരു grep മാച്ച് ലിസ്റ്റ്, ഒരു ചെറിയ ഫയൽ റീഡ്, സാധാരണ സംഭാഷണ ടെക്സ്റ്റ്) ഇതേ പൈപ്പ്ലൈൻ പ്രവർത്തിപ്പിക്കുമ്പോൾ ശരിയായിത്തന്നെ ഏതാണ്ട് പൂജ്യം ലാഭമാണ് ലഭിക്കുന്നത്, കാരണം നീക്കം ചെയ്യാൻ ആവർത്തനമുള്ളതായി ഒന്നുമില്ല; കൂടാതെ കോഡ് ബ്ലോക്കുകൾ, URLs, ഹെഡിങ്ങുകൾ, പതിപ്പുകൾ, അല്ലെങ്കിൽ ALL-CAPS കോൺസ്റ്റന്റ് ഐഡന്റിഫയറുകൾ ഒഴിവാക്കുകയോ മാറ്റുകയോ ചെയ്യുന്ന ഒരു പുനരെഴുത്ത് അയയ്ക്കാൻ validateCompression() (validation.ts) അനുവദിക്കില്ല.

ഇത് പ്രതീക്ഷിക്കുന്ന സുരക്ഷിതമായ പെരുമാറ്റമാണ്, ബഗ് അല്ല: പ്രധാനമായും വൃത്തിയുള്ള ഫയലുകൾ റീഡ്/grep ചെയ്യുന്ന ഒരു കോഡിംഗ് സെഷനിൽ, കംപ്രഷൻ പൂർണ്ണമായി പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടെങ്കിലും മൊത്തം ലാഭം മിതമായിരിക്കും; അതേസമയം പരാജയപ്പെടുന്ന ഒരു ലൂപ്പോ അമിതമായി ഔട്ട്പുട്ട് നൽകുന്ന ഒരു ലിന്ററോ നേരിടുന്ന സെഷനിൽ ആ ട്രാഫിക്കിന് പൂർണ്ണമായ 78-95% പരിധി ലഭിക്കും. ഒരൊറ്റ സെഷന്റെ കുറഞ്ഞ മൊത്തം ലാഭശതമാനം, കംപ്രഷൻ തെറ്റായി കോൺഫിഗർ ചെയ്തതിനുള്ള തെളിവായി ഉപയോഗിക്കരുത് — ആദ്യം അടിസ്ഥാന ടൂൾ ഔട്ട്പുട്ടിൽ യഥാർഥത്തിൽ ആവർത്തനം ഉണ്ടായിരുന്നോ എന്ന് പരിശോധിക്കുക.


ടോക്കൺ ലാഭത്തിന്റെ ദൃശ്യാവിഷ്കാരം

കംപ്രഷൻ ഇല്ലാതെ: 47K ടോക്കണുകൾ LLM-ലേക്ക് അയച്ചു
Lite ഉപയോഗിച്ച്:  40K ടോക്കണുകൾ അയച്ചു             (15% ലാഭം — സുരക്ഷിതം, എല്ലായ്പ്പോഴും സജീവം)
Standard ഉപയോഗിച്ച്: 33K ടോക്കണുകൾ അയച്ചു         (30% ലാഭം — caveman-speak നിയമങ്ങൾ)
Aggressive ഉപയോഗിച്ച്: 24K ടോക്കണുകൾ അയച്ചു       (50% ലാഭം — ഏജിംഗ് + സംഗ്രഹിക്കൽ)
Ultra ഉപയോഗിച്ച്: 12K ടോക്കണുകൾ അയച്ചു            (75% ലാഭം — ഹ്യൂറിസ്റ്റിക് പ്രൂണിംഗ്)
RTK ഉപയോഗിച്ച്: 19K-5K ടോക്കണുകൾ അയച്ചു           (കമാൻഡ്/ടൂൾ ഔട്ട്പുട്ടിൽ 60-90% ലാഭം)
Stacked ഉപയോഗിച്ച്: 10K-2.5K ടോക്കണുകൾ അയച്ചു     (യോഗ്യമായ RTK+Caveman ഉള്ളടക്കത്തിന് 78-95% പരിധി)

കോൺഫിഗറേഷൻ

ഡാഷ്ബോർഡ്

Dashboard → Context & Cache എന്നതിലേക്ക് പോകുക:

  • Caveman — മോഡ് തിരഞ്ഞെടുക്കൽ, ഭാഷാ പാക്കുകൾ, പ്രിവ്യൂ, ആഗോള ഡിഫോൾട്ടുകൾ
  • RTK — കമാൻഡ്-ഫിൽട്ടർ പ്രിവ്യൂ, RTK സുരക്ഷാ ക്രമീകരണങ്ങൾ, ഫിൽട്ടർ കാറ്റലോഗ്
  • Compression Combos — റൂട്ടിംഗ് കോമ്പോകൾക്ക് നിയോഗിച്ചിരിക്കുന്ന പേരുള്ള എഞ്ചിൻ പൈപ്പ്ലൈനുകൾ
  • Auto-Trigger Threshold — ടോക്കൺ എണ്ണം പരിധി കവിയുമ്പോൾ കംപ്രഷൻ സ്വയമേവ സജീവമാക്കുന്നു

ഓരോ കോമ്പോയ്ക്കുമുള്ള ഓവർറൈഡ്

Dashboard → Context & Cache → Compression Combos എന്നതിൽ, ഒരു റൂട്ടിംഗ് കോമ്പോയ്ക്ക് കംപ്രഷൻ കോമ്പോ നിയോഗിക്കുക:

കോമ്പോ: "free-tier-fallback"
  കംപ്രഷൻ കോമ്പോ: "coding-agent-stack"
  പൈപ്പ്ലൈൻ: RTK -> Caveman
  ലക്ഷ്യങ്ങൾ:
    1. if/kimi-k2.7-code
    2. if/qwen3.8-max-preview

പണമടച്ചുള്ള സബ്സ്ക്രിപ്ഷനുകളിൽ ലൈറ്റ് മോഡ് നിലനിർത്തിക്കൊണ്ട്, സൗജന്യ/കോഡിംഗ് പ്രൊവൈഡറുകളിൽ സ്റ്റാക്ക്ഡ് കംപ്രഷൻ ഉപയോഗിക്കാൻ ഇത് നിങ്ങളെ അനുവദിക്കുന്നു.

ഈ "Per-Combo Override" നിയോഗം റൂട്ടിംഗ്-കോമ്പോ കംപ്രഷൻ മോഡ് ഓവർറൈഡിൽനിന്ന് (Default/Off/Lite/Standard/Aggressive/Ultra) വ്യത്യസ്തമായ ഒരു നിയന്ത്രണമാണ് — ആ ഓവർറൈഡ് പേരുള്ള ഒരു കംപ്രഷൻ-കോമ്പോ പൈപ്പ്ലൈൻ തിരഞ്ഞെടുക്കുന്നില്ല; resolveCompressionPlan പരിശോധിക്കുന്ന compressionMode ഫീൽഡ് മാത്രമാണ് അത് സജ്ജമാക്കുന്നത്. ഇത് കോമ്പോ കാർഡിലോ (Dashboard → Combos), അല്ലെങ്കിൽ #6760 മുതൽ, മുകളിൽ രേഖപ്പെടുത്തിയ പൈപ്പ്ലൈൻ-അസൈൻമെന്റ് ചെക്ക്ബോക്സിന് തൊട്ടടുത്തുള്ള Dashboard → Context & Cache → Compression Combos എന്നതിലെ "Assign to routing" പട്ടികയിൽ ഓരോ റൂട്ടിംഗ് കോമ്പോയ്ക്കുമായോ സജ്ജമാക്കാം. രണ്ട് ഇന്റർഫേസുകളും ഒരേ PUT /api/combos/{id} എൻഡ്പോയിന്റ് വഴിയാണ് മാറ്റങ്ങൾ സ്ഥിരമായി സൂക്ഷിക്കുന്നത്.

ഓരോ അഭ്യർത്ഥനയ്ക്കുമുള്ള ഓവർറൈഡ്

ഒരൊറ്റ അഭ്യർത്ഥനയ്ക്കുള്ള കംപ്രഷൻ പ്ലാൻ ഓവർറൈഡ് ചെയ്യാൻ x-omniroute-compression അഭ്യർത്ഥനാ ഹെഡർ അയയ്ക്കുക. ഇതിനാണ് ഏറ്റവും ഉയർന്ന മുൻഗണന — റൂട്ടിംഗ്-കോമ്പോ ഓവർറൈഡ്, സജീവ പ്രൊഫൈൽ, ഓട്ടോ-ട്രിഗർ, പാനലിലെ Default എന്നിവയെല്ലാം ഇതിന് കീഴിലാണ്. അജ്ഞാത മൂല്യങ്ങൾ അവഗണിക്കപ്പെടും (അഭ്യർത്ഥന ഒരിക്കലും നിരസിക്കപ്പെടില്ല), കൂടാതെ ആഗോള മാസ്റ്റർ സ്വിച്ച് ഇപ്പോഴും എല്ലാം നിയന്ത്രിക്കുന്നു: കംപ്രഷൻ ആഗോളമായി ഓഫ് ആയിരിക്കുമ്പോൾ, ഹെഡറിന് അത് ഓൺ ചെയ്യാനാകില്ല. മൂല്യങ്ങൾ:

മൂല്യം ഫലം
off ഈ അഭ്യർത്ഥനയ്ക്ക് കംപ്രഷൻ ഇല്ല.
default പാനലിൽനിന്ന് ലഭിക്കുന്ന Default പ്രൊഫൈൽ (സജീവ പ്രൊഫൈൽ അവഗണിക്കുന്നു).
engine:<id> പ്രവർത്തനക്ഷമമാക്കിയിരിക്കുമ്പോൾ ഒരൊറ്റ എഞ്ചിൻ, ഉദാ. engine:rtk.
<combo> പേരുള്ള കോമ്പോ; ആദ്യം പേര് ഉപയോഗിച്ച് (കേസ് പരിഗണിക്കാതെ), തുടർന്ന് id ഉപയോഗിച്ച് പൊരുത്തപ്പെടുത്തുന്നു.

പ്രയോഗിച്ച പ്ലാൻ X-OmniRoute-Compression: <mode>; source=<source> പ്രതികരണ ഹെഡറിൽ തിരികെ നൽകപ്പെടുന്നു, ഇവിടെ <source> എന്നത് request-header, routing-override, active-profile, auto-trigger, default, അല്ലെങ്കിൽ off എന്നിവയിൽ ഒന്നായിരിക്കും.

API

# കംപ്രഷൻ ക്രമീകരണങ്ങൾ നേടുക
curl http://localhost:20128/api/settings/compression

# കംപ്രഷൻ ക്രമീകരണങ്ങൾ അപ്ഡേറ്റ് ചെയ്യുക
curl -X PUT http://localhost:20128/api/settings/compression \
  -H "Content-Type: application/json" \
  -d '{"defaultMode":"stacked","autoTriggerMode":"stacked","autoTriggerTokens":32000}'

# ഒരു നിർദ്ദിഷ്ട RTK/stacked പേലോഡ് പ്രിവ്യൂ ചെയ്യുക
curl -X POST http://localhost:20128/api/compression/preview \
  -H "Content-Type: application/json" \
  -d '{"mode":"rtk","messages":[{"role":"tool","content":"npm test output here"}]}'

# RTK ഫിൽട്ടർ പാക്കുകൾ പട്ടികപ്പെടുത്തുക
curl http://localhost:20128/api/context/rtk/filters

# ഐച്ഛിക കമാൻഡ് മെറ്റാഡാറ്റ ഉപയോഗിച്ച് RTK നേരിട്ട് പരിശോധിക്കുക
curl -X POST http://localhost:20128/api/context/rtk/test \
  -H "Content-Type: application/json" \
  -d '{"command":"npm test","text":"FAIL tests/example.test.ts\nError: boom"}'

എന്തൊക്കെയാണ് സംരക്ഷിക്കപ്പെടുന്നത്

കംപ്രഷൻ എഞ്ചിൻ എപ്പോഴും സംരക്ഷിക്കുന്നവ:

  • കോഡ് ബ്ലോക്കുകൾ (ഫെൻസ്ഡ്, ഇൻലൈൻ)
  • URL-കളും ഫയൽ പാതകളും
  • JSON ഘടനകളും ഘടനാപരമായ ഡാറ്റയും
  • ഐഡന്റിഫയറുകളും സംരക്ഷിത സാങ്കേതിക ടോക്കണുകളും
  • ഗണിത സമവാക്യങ്ങൾ
  • ടൂൾ/ഫങ്ഷൻ കോൾ നിർവചനങ്ങൾ
  • സിസ്റ്റം പ്രോംപ്റ്റുകൾ (ലൈറ്റ് മോഡിൽ)

എന്തെങ്കിലും ഡാറ്റ സ്ഥിരമായി സൂക്ഷിക്കുന്നതിന് മുമ്പ്, RTK റോ-ഔട്ട്പുട്ട് റിക്കവറി സാധാരണ API കീകൾ, ബെയറർ ടോക്കണുകൾ, Slack ടോക്കണുകൾ, AWS ആക്സസ് കീകൾ, പാസ്വേഡുകൾ, ടോക്കണുകൾ, രഹസ്യങ്ങൾ എന്നിവ മറയ്ക്കുന്നു.


കംപ്രഷൻ സ്ഥിതിവിവരക്കണക്കുകൾ

കംപ്രസ് ചെയ്ത ഓരോ അഭ്യർത്ഥനയുടെയും സ്ഥിതിവിവരക്കണക്കുകൾ സെർവർ ലോഗുകളിൽ ഉൾപ്പെടുന്നു:

{
  "originalTokens": 47200,
  "compressedTokens": 40120,
  "savingsPercent": 15.0,
  "techniquesUsed": ["collapseWhitespace", "dedupSystemPrompt"],
  "mode": "lite",
  "engine": "caveman",
  "compressionComboId": "coding-agent-stack",
  "durationMs": 0.8,
  "rtkRawOutputPointers": []
}

ഘട്ടങ്ങളുടെ റോഡ്മാപ്പ്

ഘട്ടം മോഡുകൾ നില
ഘട്ടം 1 ഓഫ്, ലൈറ്റ് പുറത്തിറക്കി
ഘട്ടം 2 സ്റ്റാൻഡേർഡ്, അഗ്രസീവ്, അൾട്രാ പുറത്തിറക്കി
ഘട്ടം 3 RTK, സ്റ്റാക്ക്ഡ്, കംപ്രഷൻ കോംബോകൾ പുറത്തിറക്കി
ഘട്ടം 4 ഔട്ട്പുട്ട് ശൈലികൾ, SLM-ടയർ അൾട്രാ, മൂല്യനിർണ്ണയ ഹാർനെസ് പുറത്തിറക്കി
ഘട്ടം 4C അഡാപ്റ്റീവ് കോൺടെക്സ്റ്റ്-ബജറ്റ് ("ഡയൽ") — കമ്പ്യൂട്ട് എഞ്ചിൻ + API (PUT /api/settings/compression-ലെ contextBudget) + ഡാഷ്ബോർഡ് മോഡ്/പോളിസി നിയന്ത്രണങ്ങൾ പുറത്തിറക്കി

കടപ്പാടുകൾ

സ്റ്റാൻഡേർഡ് മോഡിലെ കംപ്രഷൻ നിയമങ്ങൾ JuliusBrussee-യുടെ Caveman ( 51K+)-ൽ നിന്ന് പ്രചോദനം ഉൾക്കൊണ്ടവയാണ് — വൈറലായ "എന്തിന് പല ടോക്കണുകൾ ഉപയോഗിക്കണം, കുറച്ച് ടോക്കണുകൾ മതിയാകുമ്പോൾ" എന്ന പ്രോജക്റ്റ്. ~75% കുറവ് ഔട്ട്പുട്ട് ടോക്കണുകൾ, ബെഞ്ച്മാർക്കിൽ ശരാശരി 65% ഔട്ട്പുട്ട് ലാഭം, 22-87% ഔട്ട്പുട്ട് പരിധി, ~46% ഇൻപുട്ട്-കംപ്രഷൻ ടൂൾ എന്നിവ Caveman റിപ്പോർട്ട് ചെയ്യുന്നു.

RTK മോഡ് RTK AI-യുടെ RTK - Rust Token Killer-ൽ നിന്ന് പ്രചോദനം ഉൾക്കൊണ്ടതാണ് — ടെർമിനൽ, ബിൽഡ്, ടെസ്റ്റ്, git, ടൂൾ-ഔട്ട്പുട്ട് ഫിൽട്ടറിംഗ് എന്നിവയ്ക്കായുള്ള ഉയർന്ന പ്രകടനമുള്ള കമാൻഡ്-ഔട്ട്പുട്ട് കംപ്രഷൻ പ്രോജക്റ്റ്. RTK 60-90% ലാഭം റിപ്പോർട്ട് ചെയ്യുന്നു; അതിന്റെ README സാമ്പിൾ സെഷനിൽ ~80% ലാഭിച്ചതായി കാണിക്കുന്നു.


വിപുലമായ കംപ്രഷൻ സിസ്റ്റങ്ങൾ

7 സ്റ്റാൻഡേർഡ് മോഡുകൾക്ക് പുറമേ, കോൺടെക്സ്റ്റിനെ അടിസ്ഥാനമാക്കി സ്വയമേവ പ്രവർത്തിക്കുന്ന നിരവധി വിപുലമായ കംപ്രഷൻ സിസ്റ്റങ്ങൾ OmniRoute-ൽ ഉൾപ്പെടുന്നു.

കാഷ്-അവബോധമുള്ള കംപ്രഷൻ

ചില പ്രൊവൈഡർമാർ (പ്രോംപ്റ്റ് കാഷിംഗ് ഉള്ള Anthropic പോലുള്ളവർ) പ്രോംപ്റ്റ് കാഷിംഗ് പിന്തുണയ്ക്കുന്നു; ചെലവും ലേറ്റൻസിയും കുറയ്ക്കുന്നതിന് പ്രോംപ്റ്റിന്റെ ഭാഗങ്ങൾ കാഷ് ചെയ്യാൻ ഇത് അവരെ അനുവദിക്കുന്നു. കാഷിംഗ് പ്രവർത്തനക്ഷമമാക്കിയിരിക്കുമ്പോൾ, അഗ്രസീവ് കംപ്രഷൻ പ്രകടനത്തെ യഥാർത്ഥത്തിൽ ദോഷകരമായി ബാധിക്കാം, കാരണം അത് കാഷ് ചെയ്ത ടോക്കണുകളിൽ മാറ്റം വരുത്തി കാഷിനെ അസാധുവാക്കുന്നു.

കാഷിംഗ് കോൺടെക്സ്റ്റ് കണ്ടെത്തുകയും അതനുസരിച്ച് കംപ്രഷൻ തന്ത്രം ക്രമീകരിക്കുകയും ചെയ്തുകൊണ്ട് cachingAware.ts മൊഡ്യൂൾ ഇത് പരിഹരിക്കുന്നു.

ഇത് എങ്ങനെ പ്രവർത്തിക്കുന്നു

  1. കാഷിംഗ് കോൺടെക്സ്റ്റ് കണ്ടെത്തുകcache_control മാർക്കറുകൾക്കായി അഭ്യർത്ഥനയുടെ ബോഡി സ്കാൻ ചെയ്യുന്നു
  2. കാഷിംഗ് പ്രൊവൈഡർമാരെ തിരിച്ചറിയുക — ലക്ഷ്യ പ്രൊവൈഡർ കാഷിംഗ് പിന്തുണയ്ക്കുന്നുണ്ടോയെന്ന് പരിശോധിക്കുന്നു
  3. തന്ത്രം ക്രമീകരിക്കുക — കാഷിംഗ് പ്രൊവൈഡർമാർക്കായി aggressive/ultra എന്നതിൽ നിന്ന് standard എന്നതിലേക്ക് താഴ്ത്തുന്നു
  4. സിസ്റ്റം പ്രോംപ്റ്റ് ഒഴിവാക്കുക — സിസ്റ്റം പ്രോംപ്റ്റുകൾ സാധാരണയായി കാഷ് ചെയ്യപ്പെടുന്നതിനാൽ അവ കംപ്രസ് ചെയ്യരുത്
  5. ഡിറ്റർമിനിസ്റ്റിക് രൂപാന്തരങ്ങൾ ഉപയോഗിക്കുക — സ്ഥിരതയുള്ള ഔട്ട്പുട്ട് സൃഷ്ടിക്കുന്ന രൂപാന്തരങ്ങൾ മാത്രം ഉപയോഗിക്കുക

കോഡ് ഉദാഹരണം

import {
  detectCachingContext,
  getCacheAwareStrategy,
} from "@omniroute/open-sse/services/compression/cachingAware";

const body = {
  model: "anthropic/claude-sonnet-4.5",
  messages: [{ role: "user", content: "Hello" }],
  cache_control: { type: "ephemeral" }, // ← കാഷ് മാർക്കർ
};

const ctx = detectCachingContext(body, { provider: "anthropic" });
// → { hasCacheControl: true, provider: "anthropic", isCachingProvider: true }

const strategy = getCacheAwareStrategy("aggressive", ctx);
// → { strategy: "standard", skipSystemPrompt: true, deterministicOnly: true }

എപ്പോൾ ഉപയോഗിക്കണം

കാഷ്-അവബോധമുള്ള കംപ്രഷൻ എപ്പോഴും പ്രവർത്തനക്ഷമമാണ് — കോൺഫിഗറേഷൻ ആവശ്യമില്ല. താഴെപ്പറയുന്ന സാഹചര്യങ്ങളിൽ മാത്രം ഇത് പ്രാബല്യത്തിൽ വരുന്നു:

  • അഭ്യർത്ഥനയിൽ cache_control മാർക്കറുകൾ ഉണ്ടായിരിക്കുമ്പോൾ
  • ലക്ഷ്യ പ്രൊവൈഡർ പ്രോംപ്റ്റ് കാഷിംഗ് പിന്തുണയ്ക്കുമ്പോൾ (Anthropic, OpenAI തുടങ്ങിയവ)

ക്രമാനുഗത ഏജിംഗ്

ദീർഘമായ സംഭാഷണങ്ങളിൽ നിരവധി സന്ദേശ ടേണുകൾ ശേഖരിക്കപ്പെടുന്നു, എന്നാൽ പഴയ ടേണുകൾക്ക് പ്രസക്തി കുറയുന്നു. progressiveAging.ts മൊഡ്യൂൾ ടേൺ ദൂരത്തിനനുസരിച്ച് സന്ദേശങ്ങളുടെ വിശദാംശനില കുറയ്ക്കുന്നു:

  • സമീപകാല ടേണുകൾ (0-3): അതേപടി നിലനിർത്തുന്നു (പൂർണ്ണ വിശദാംശങ്ങൾ)
  • ഇടത്തരം ടേണുകൾ (4-8): ലൈറ്റ് കംപ്രഷൻ (വൈറ്റ്സ്പേസ്, ഫോർമാറ്റിംഗ് വൃത്തിയാക്കൽ)
  • പഴയ ടേണുകൾ (9+): Caveman കംപ്രഷൻ (അനാവശ്യ ഭാഗങ്ങൾ നീക്കംചെയ്യൽ, സംഗ്രഹിക്കൽ)
  • വളരെ പഴയ ടേണുകൾ (20+): ശക്തമായി സംഗ്രഹിക്കുകയോ ഒഴിവാക്കുകയോ ചെയ്യുന്നു

കോഡ് ഉദാഹരണം

import { applyAging } from "@omniroute/open-sse/services/compression/progressiveAging";

const messages = [
  { role: "system", content: "You are a helpful assistant" },
  { role: "user", content: "What is 2+2?" },
  { role: "assistant", content: "4" },
  // ... 50 ടേണുകൾ കൂടി ...
];

const { messages: aged, saved } = applyAging(messages, {
  verbatim: 3, // ആദ്യത്തെ 3 ടേണുകൾ: അതേപടി
  light: 8, // 4-8 ടേണുകൾ: ലൈറ്റ് കംപ്രഷൻ
  moderate: 20, // 9-20 ടേണുകൾ: caveman കംപ്രഷൻ
  // 21+ ടേണുകൾ: ശക്തമായ സംഗ്രഹിക്കൽ
});

// saved = ലാഭിച്ച ടോക്കണുകളുടെ എണ്ണം

എപ്പോൾ ഉപയോഗിക്കണം

ക്രമാനുഗത ഏജിംഗ് aggressive, ultra മോഡുകളിൽ എപ്പോഴും പ്രവർത്തനക്ഷമമാണ്. ഇത് പ്രത്യേകിച്ച് ഫലപ്രദമാകുന്നത്:

  • ദീർഘനേരം നീളുന്ന കോഡിംഗ് സെഷനുകൾ
  • നിരവധി ദിവസങ്ങൾ നീളുന്ന സംഭാഷണങ്ങൾ
  • നിരവധി ടൂൾ കോളുകളുള്ള ഏജന്റിക് വർക്ക്ഫ്ലോകൾ

കേവ്മാൻ ഔട്ട്പുട്ട് മോഡ്

മോഡൽ തന്നെ ചുരുക്കിയതും സംക്ഷിപ്തവുമായ ഔട്ട്പുട്ട് (ഒരു "കേവ്മാൻ" ശൈലി) സൃഷ്ടിക്കാൻ outputMode.ts മൊഡ്യൂൾ സിസ്റ്റം പ്രോംപ്റ്റ് നിർദ്ദേശങ്ങൾ ഇൻജക്റ്റ് ചെയ്യുന്നു.

ഇത് എങ്ങനെ പ്രവർത്തിക്കുന്നു

ഇൻപുട്ട് കംപ്രസ് ചെയ്യുന്നതിന് പകരം, ഈ മോഡ് ഇനിപ്പറയുന്നതുപോലുള്ള ഒരു സിസ്റ്റം പ്രോംപ്റ്റ് ചേർക്കുന്നു:

"ഏറ്റവും കുറച്ച് വാക്കുകളിൽ മറുപടി നൽകുക. ഔപചാരികതകൾ ഒഴിവാക്കുക. ചെറിയ വാക്യങ്ങൾ ഉപയോഗിക്കുക."

ഇത് പ്രത്യേകിച്ച് നന്നായി പ്രവർത്തിക്കുന്നത്:

  • കോഡ് ജനറേഷൻ (കൂടുതൽ സംക്ഷിപ്തമായ ഔട്ട്പുട്ട് = കുറവ് ടോക്കണുകൾ)
  • ദ്രുത ചോദ്യോത്തരങ്ങൾ (വിശദമായ വിശദീകരണങ്ങളുടെ ആവശ്യമില്ല)
  • ബാച്ച് പ്രോസസ്സിംഗ് (ത്രൂപുട്ട് പരമാവധിയാക്കുക)

എപ്പോൾ ഉപയോഗിക്കണം

കേവ്മാൻ ഔട്ട്പുട്ട് മോഡ് ഓപ്റ്റ്-ഇൻ ആണ് — കോംബോ കോൺഫിഗ് വഴി അത് സജ്ജീകരിക്കുക:

{
  "strategy": "auto",
  "config": {
    "auto": {
      "outputMode": "caveman"
    }
  }
}

ഔട്ട്പുട്ട് ശൈലികൾ (കാറ്റലോഗ്)

മുകളിൽ പറഞ്ഞ കേവ്മാൻ ഔട്ട്പുട്ട് മോഡ് ലെഗസി സിംഗിൾ-സ്റ്റൈൽ പാതയാണ്. Phase 4 അതിനെ സംയോജിപ്പിക്കാവുന്ന ഔട്ട്പുട്ട് ശൈലികളുടെ ഒരു കാറ്റലോഗാക്കി പൊതുവൽക്കരിച്ചു: open-sse/services/compression/outputStyles/catalog.ts-ലെ OUTPUT_STYLE_CATALOG. ഓരോ ശൈലിയും മോഡൽ തന്നെ ചെലവ് കുറഞ്ഞ ഔട്ട്പുട്ട് സൃഷ്ടിക്കാൻ സഹായിക്കുന്ന ഒരു സിസ്റ്റം-പ്രോംപ്റ്റ് നിർദ്ദേശമാണ്; ശൈലികൾ ഒരുമിച്ച് പ്രവർത്തനക്ഷമമാക്കാം, അവ കാറ്റലോഗിലെ ക്രമത്തിൽ ഇൻജക്റ്റ് ചെയ്യപ്പെടും.

ശൈലി id ഇത് ചെയ്യുന്നത് നിർദ്ദേശ ഭാഷകൾ
സംക്ഷിപ്ത ഗദ്യം terse-prose അനാവശ്യ പദങ്ങൾ/ആർട്ടിക്കിളുകൾ/സന്ദിഗ്ധപ്രയോഗങ്ങൾ ഒഴിവാക്കുന്നു; സാങ്കേതിക ഉള്ളടക്കത്തിന്റെ കൃത്യത നിലനിർത്തുന്നു. ലെഗസി കേവ്മാൻ ഔട്ട്പുട്ട് മോഡിലെ അതേ ടെക്സ്റ്റ് (വീണ്ടും ടൈപ്പ് ചെയ്യാതെ റഫറൻസ് ചെയ്യുന്നു). en, pt-BR, es, de, fr, it, ru, zh, ja, id, vi
കുറവ് കോഡ് less-code YAGNI ക്രമം: പ്രവർത്തിക്കുന്ന ഏറ്റവും ചെറിയ മാറ്റം, ആവശ്യപ്പെടാത്ത അബ്സ്ട്രാക്ഷനുകൾ ഇല്ല. en, pt-BR, es, de, fr, it, ru, zh, ja, id, vi
പോണിടെയിൽ (അലസനായ സീനിയർ ഡെവലപ്പർ) ponytail "ഒരിക്കലും എഴുതാത്ത കോഡാണ് ഏറ്റവും മികച്ച കോഡ്": പുനരുപയോഗം > പുനരെഴുത്ത്, മൂലകാരണം > ലക്ഷണം, പ്രവർത്തിക്കുന്ന ഏറ്റവും ചെറിയ ഡിഫ്. en, pt-BR, es, de, fr, it, ru, zh, ja, id, vi
എനിക്ക് ADHD ഉണ്ട് (പ്രവർത്തനം ആദ്യം) i-have-adhd പ്രവർത്തനം ആദ്യം (ഗദ്യത്തിന് മുമ്പ് കമാൻഡ്/പാത്ത്/സ്നിപ്പെറ്റ്), നമ്പറിട്ട പരിമിതമായ ഘട്ടങ്ങൾ, വ്യക്തമായ ഒരേയൊരു അടുത്ത ഘട്ടം, ആമുഖം/പുനരവലോകനം/സമാപനം എന്നിവ ഇല്ല. ayghri/i-have-adhd-ൽ നിന്ന് അനുരൂപപ്പെടുത്തിയതാണ് (MIT). en, pt-BR, es, de, fr, it, ru, zh, ja, id, vi
സംക്ഷിപ്ത CJK (文言) terse-cjk ക്ലാസിക്കൽ-ചൈനീസ് അതിസംക്ഷിപ്ത ശൈലി. zh (ലൊക്കേൽ നിയന്ത്രിതം: പരിഹരിച്ച ഭാഷ zh ആയിരിക്കുമ്പോൾ മാത്രം ലഭ്യമാകും)

ഓരോ ശൈലിക്കും lite, full, ultra എന്നിങ്ങനെ മൂന്ന് തീവ്രതാ നിലകളുണ്ട് — കൂടാതെ ഓരോ നിലയും പങ്കിട്ട ബൗണ്ടറീസ് ക്ലോസോടെയാണ് അവസാനിക്കുന്നത്; ഇത് കോഡ് ബ്ലോക്കുകൾ, ഫയൽ പാത്തുകൾ, കമാൻഡുകൾ, പിശക് സ്ട്രിങ്ങുകൾ, URLs, ഐഡന്റിഫയറുകൾ എന്നിവ അതേപടി നിലനിർത്തുന്നു.

ഇൻജക്ഷൻ എങ്ങനെ പ്രവർത്തിക്കുന്നു

applyOutputStyles() (open-sse/services/compression/outputStyles/apply.ts) തിരഞ്ഞെടുപ്പിനെ കാറ്റലോഗുമായി പൊരുത്തപ്പെടുത്തുന്നു (അജ്ഞാത ids-ഉം ലൊക്കേലുമായി പൊരുത്തപ്പെടാത്ത ശൈലികളും ഒഴിവാക്കപ്പെടും, ഒരിക്കലും പിശകാകില്ല), തിരഞ്ഞെടുത്ത നിർദ്ദേശങ്ങൾ കാറ്റലോഗിലെ ക്രമത്തിൽ കൂട്ടിച്ചേർക്കുന്നു, ബൗണ്ടറീസ് ക്ലോസ് ഒരിക്കൽ ചേർക്കുന്നു, തുടർന്ന് ഒരൊറ്റ ഐഡംപൊട്ടൻസി മാർക്കറിന് ([OmniRoute Output Styles]) പിന്നാലെ ഫലം സിസ്റ്റം പ്രോംപ്റ്റിന്റെ തുടക്കത്തിൽ ചേർക്കുന്നു — വീണ്ടും പ്രയോഗിച്ചാൽ ഒന്നും സംഭവിക്കില്ല. കണ്ടെത്തിയ അഭ്യർത്ഥനാ ഭാഷയ്ക്ക് വിവർത്തനം ലഭ്യമാണെങ്കിൽ, ഇംഗ്ലീഷിന് പകരം പ്രാദേശികവൽക്കരിച്ച നിർദ്ദേശം ഇൻജക്റ്റ് ചെയ്യപ്പെടും.

എങ്ങനെ പ്രവർത്തനക്ഷമമാക്കാം

ഡാഷ്ബോർഡിൽ: Context → Settings → Compression — ഓരോ ശൈലിക്കും ഓൺ/ഓഫ് ടോഗിളും ലെവൽ സെലക്ടറും ഉള്ള ഓരോ നിര. പ്രോഗ്രാമാറ്റിക്കായി, കംപ്രഷൻ കോൺഫിഗ് തിരഞ്ഞെടുപ്പ് ഇപ്രകാരം സംഭരിക്കുന്നു:

{
  "outputStyles": [
    { "id": "i-have-adhd", "level": "full" },
    { "id": "less-code", "level": "lite" }
  ]
}

പിന്നോട്ടുള്ള അനുയോജ്യത: ലെഗസി outputMode: "caveman" കോംബോ ക്രമീകരണം ഇപ്പോഴും പ്രവർത്തിക്കുകയും terse-prose-ലേക്ക് മാപ്പ് ചെയ്യുകയും ചെയ്യുന്നു; എല്ലാ ലെഗസി ഭാഷകളിലും പഴയ ഇൻജക്ഷനുമായി ഇത് ബൈറ്റ് തലത്തിൽ സമാനമാണ്.

ഭാഷാ തിരഞ്ഞെടുപ്പ്: languageConfig.enabled ഓണായിരിക്കുമ്പോൾ, autoDetect ഏറ്റവും പുതിയ ഉപയോക്തൃ സന്ദേശത്തിന്റെ ഭാഷ തിരഞ്ഞെടുക്കുന്നു (ഇൻപുട്ട് എഞ്ചിനുകൾ ഉപയോഗിക്കുന്ന അതേ ഡിറ്റക്ടർ); autoDetect ഓഫ് ചെയ്യുന്നത് defaultLanguage സ്ഥിരമാക്കുന്നു. ഓഫ് → ഇംഗ്ലീഷ്.

ശൈലി × ഭാഷ മാട്രിക്സ് tests/unit/compression/output-styles-i18n-matrix.test.ts ഉപയോഗിച്ച് സ്ഥിരപ്പെടുത്തിയിരിക്കുന്നു: കുറഞ്ഞത് ഒരു pt-BR വിവർത്തനമെങ്കിലും (അല്ലെങ്കിൽ വ്യക്തമായി ട്രാക്ക് ചെയ്ത ഒരു ഒഴിവാക്കൽ) ഇല്ലാതെ പുതിയ ശൈലി പുറത്തിറക്കാൻ കഴിയില്ല; നിലവിലുള്ള ഒരു ശൈലിക്ക് ഒരു ലൊക്കേൽ നിശ്ശബ്ദമായി നഷ്ടപ്പെടാനും കഴിയില്ല. ഒരു ശൈലി ചേർക്കാൻ, EXTENDING_COMPRESSION.md കാണുക.

ടൂൾ ഫല കംപ്രഷൻ

ടൂൾ ഫലങ്ങൾക്കായി (ഫങ്ഷൻ കോളുകൾ, ഏജന്റ് ഔട്ട്പുട്ടുകൾ, തിരയൽ ഫലങ്ങൾ തുടങ്ങിയവ) toolResultCompressor.ts മൊഡ്യൂൾ 5 പ്രത്യേക കംപ്രഷൻ തന്ത്രങ്ങൾ നൽകുന്നു:

  1. തിരയൽ ഫല കംപ്രഷൻ — ആവർത്തന ഫലങ്ങൾ നീക്കംചെയ്യുന്നു, മികച്ച N ഫലങ്ങൾ നിലനിർത്തുന്നു
  2. ഫയൽ റീഡ് കംപ്രഷൻ — വലിയ ഫയലുകൾ ചുരുക്കുന്നു, ഹെഡറുകൾ/ഇംപോർട്ടുകൾ സംരക്ഷിക്കുന്നു
  3. കോഡ് എക്സിക്യൂഷൻ കംപ്രഷൻ — അത്യാവശ്യമായ stdout/stderr മാത്രം നിലനിർത്തുന്നു
  4. ഡാറ്റാബേസ് ക്വറി കംപ്രഷൻ — വരികൾ പരിമിതപ്പെടുത്തുന്നു, അമിതവിവരമുള്ള മെറ്റാഡാറ്റ നീക്കംചെയ്യുന്നു
  5. API പ്രതികരണ കംപ്രഷൻ — null ഫീൽഡുകൾ നീക്കംചെയ്യുന്നു, അറേകൾ ചുരുക്കുന്നു

എപ്പോൾ ഉപയോഗിക്കണം

ടൂൾ കോളുകൾ ഉള്ളപ്പോൾ ടൂൾ ഫല കംപ്രഷൻ എപ്പോഴും പ്രവർത്തനക്ഷമമാണ്. കോൺഫിഗറേഷൻ ആവശ്യമില്ല.

സ്റ്റാക്ക്ഡ് പൈപ്പ്ലൈൻ

സ്റ്റാക്ക്ഡ് മോഡ് ഒന്നിലധികം എഞ്ചിനുകൾ ക്രമത്തിൽ പ്രവർത്തിപ്പിക്കുന്നു — സാധാരണയായി ആദ്യം RTK (ടൂൾ ഔട്ട്പുട്ടിൽ 60-90% ലാഭം), തുടർന്ന് Caveman (ശേഷിക്കുന്ന ടെക്സ്റ്റിൽ 30% അധിക ലാഭം). ഇത് ആകെ 78-95% ലാഭം നൽകുന്നു.

ഇത് എങ്ങനെ പ്രവർത്തിക്കുന്നു

ഇൻപുട്ട് (1000 ടോക്കണുകൾ)
  → RTK (കമാൻഡ്-അവബോധമുള്ള ഫിൽട്ടർ) → 200 ടോക്കണുകൾ
    → Caveman (അനാവശ്യ പദങ്ങൾ നീക്കംചെയ്യൽ) → 140 ടോക്കണുകൾ
  → ഔട്ട്പുട്ട് (140 ടോക്കണുകൾ, 86% ലാഭം)

എപ്പോൾ ഉപയോഗിക്കണം

ഇവയ്ക്കായി സ്റ്റാക്ക്ഡ് മോഡ് ഉപയോഗിക്കുക:

  • ടൂൾ-കേന്ദ്രീകൃത വർക്ക്ഫ്ലോകൾ (ഏജന്റിക് കോഡിംഗ്, ഗവേഷണം)
  • ചെലവ്-പ്രധാനമായ ബാച്ച് പ്രോസസ്സിംഗ്
  • പരമാവധി ടോക്കൺ ലാഭം ആവശ്യമുള്ളപ്പോൾ

കോംബോ വഴി കോൺഫിഗർ ചെയ്യുക:

{
  "strategy": "auto",
  "config": {
    "auto": {
      "modePack": "stacked"
    }
  }
}

കോംപ്രഷൻ കോംബോ ഓവർറൈഡുകൾ

വ്യത്യസ്ത ഉപയോഗസാഹചര്യങ്ങൾക്കായി പെരുമാറ്റം സൂക്ഷ്മമായി ക്രമീകരിക്കുന്നതിന്, ഗ്ലോബൽ കോംപ്രഷൻ മോഡ് ഓരോ കോംബോയ്ക്കും ഓവർറൈഡ് ചെയ്യാം:

{
  "id": "coding-combo",
  "strategy": "priority",
  "config": {
    "auto": {
      "weights": { "taskFit": 0.5 },
      "modePack": "quality-first"
    }
  },
  "compressionOverride": {
    "mode": "aggressive",
    "stackedPipelines": ["rtk", "caveman"],
    "preserveToolDefinitions": true
  }
}

ഇത് ഇനിപ്പറയുന്നവയ്ക്ക് ഉപകാരപ്രദമാണ്:

  • കോഡിംഗ് കോംബോകൾ: ദീർഘമായ സെഷനുകൾക്കായി aggressive മോഡ് ഉപയോഗിക്കുക
  • ദ്രുത ചോദ്യോത്തര കോംബോകൾ: വേഗത്തിലുള്ള പ്രതികരണങ്ങൾക്കായി lite മോഡ് ഉപയോഗിക്കുക
  • ടൂളുകൾ കൂടുതലായി ഉപയോഗിക്കുന്ന കോംബോകൾ: പരമാവധി ലാഭത്തിനായി stacked മോഡ് ഉപയോഗിക്കുക
  • പ്രൊഡക്ഷൻ കോംബോകൾ: കാഷിംഗ് പ്രൊവൈഡറുകൾക്കായി cache-aware മോഡ് ഉപയോഗിക്കുക

ഇതും കാണുക