# Compression Language Packs (Lietuvių) 🌐 **Languages:** 🇺🇸 [English](../../../../compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇪🇹 [am](../../../am/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇸🇦 [ar](../../../ar/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇦🇿 [az](../../../az/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇧🇬 [bg](../../../bg/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇧🇩 [bn](../../../bn/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇧🇦 [bs](../../../bs/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇨🇿 [cs](../../../cs/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇩🇰 [da](../../../da/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇩🇪 [de](../../../de/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇬🇷 [el](../../../el/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇪🇸 [es](../../../es/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇪🇪 [et](../../../et/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇷 [fa](../../../fa/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇫🇮 [fi](../../../fi/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇫🇷 [fr](../../../fr/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇪 [ga](../../../ga/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [gu](../../../gu/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇳🇬 [ha](../../../ha/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇱 [he](../../../he/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [hi](../../../hi/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇭🇷 [hr](../../../hr/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇭🇺 [hu](../../../hu/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇦🇲 [hy](../../../hy/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇩 [id](../../../id/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇳🇬 [ig](../../../ig/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇹 [it](../../../it/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇯🇵 [ja](../../../ja/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇬🇪 [ka](../../../ka/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇰🇭 [km](../../../km/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [kn](../../../kn/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇰🇷 [ko](../../../ko/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇱🇻 [lv](../../../lv/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [ml](../../../ml/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [mr](../../../mr/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇲🇾 [ms](../../../ms/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇲🇹 [mt](../../../mt/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇲🇲 [my](../../../my/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇳🇵 [ne](../../../ne/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇳🇱 [nl](../../../nl/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇳🇴 [no](../../../no/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [or](../../../or/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [pa](../../../pa/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇵🇭 [phi](../../../phi/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇵🇱 [pl](../../../pl/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇵🇹 [pt](../../../pt/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇧🇷 [pt-BR](../../../pt-BR/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇷🇴 [ro](../../../ro/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇷🇺 [ru](../../../ru/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇱🇰 [si](../../../si/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇸🇰 [sk](../../../sk/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇸🇮 [sl](../../../sl/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇷🇸 [sr](../../../sr/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇸🇪 [sv](../../../sv/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇰🇪 [sw](../../../sw/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [ta](../../../ta/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇮🇳 [te](../../../te/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇹🇭 [th](../../../th/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇹🇷 [tr](../../../tr/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇺🇦 [uk-UA](../../../uk-UA/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇵🇰 [ur](../../../ur/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇺🇿 [uz](../../../uz/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇻🇳 [vi](../../../vi/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇳🇬 [yo](../../../yo/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇨🇳 [zh-CN](../../../zh-CN/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇹🇼 [zh-TW](../../../zh-TW/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) --- „Caveman“ glaudinimas gali įkelti konkrečioms kalboms skirtus taisyklių paketus kartu su integruotomis anglų kalbos taisyklėmis. Tai leidžia išlaikyti pagrindinio variklio stabilumą, o portugalų, ispanų, vokiečių, prancūzų, italų, japonų ir būsimų kalbų paketams suteikia galimybę vystytis nepriklausomai. ## Vieta Kalbų paketai yra šiame kataloge: ```txt open-sse/services/compression/rules// ``` Šiuo metu pateikiami paketai (patikrinta pagal `rules/` katalogo turinį): | Kalba | Katalogas | Esamos taisyklių kategorijos | | --------------------- | -------------- | --------------------------------------------------- | | Anglų | `rules/en/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | Ispanų | `rules/es/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | Portugalų (Brazilija) | `rules/pt-BR/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | Indoneziečių | `rules/id/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | Italų | `rules/it/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | Vokiečių | `rules/de/` | `context`, `filler`, `structural` | | Prancūzų | `rules/fr/` | `context`, `filler`, `structural` | | Japonų | `rules/ja/` | `context`, `filler`, `structural` | > **Atitikties pastaba:** `en`, `es`, `pt-BR`, `id` ir `it` paketai turi visas 5 kategorijas; `de`, `fr`, `ja` pateikiami su 3 kategorijomis. Jei nėra `dedup` ir `ultra` kategorijų, automatiškai ir be pranešimo naudojamos integruotos anglų kalbos taisyklės. Kviečiame prisidėti prie mažesnių paketų papildymo failais `dedup.json` ir `ultra.json`. > > `pt-BR` paketas pagrįstas Lenine Júnior sukurta sistema **[Troglodita](https://github.com/leninejunior/troglodita)** — tai nuo pagrindų Brazilijos portugalų kalbos gramatikai sukurta glaudinimo sistema (pleonazmų mažinimas, PT-BR perteklinių žodžių šalinimas, techninės santrumpos Brazilijos programuotojų bendruomenei). > > Etaloninis kategorijų sąrašas ir kiekvienos kategorijos schema pateikiami faile [`open-sse/services/compression/rules/_schema.json`](../../open-sse/services/compression/rules/_schema.json) (JSON Schema juodraštis 2020-12). ## Kalbos aptikimas `languageDetector.ts` naudoja nesudėtingas euristikas, kad nustatytų kalbą pagal užklausos tekstą. Į sukonfigūruotą numatytąją kalbą vis tiek atsižvelgiama, o kai reikia tikslios kontrolės, aptikimą galima išjungti konfigūracijoje. Aptikimo rezultatas naudojamas tik taisyklių paketams parinkti. Jis nekeičia teikėjo maršruto parinkimo, lokalės pasirinkimo ar naudotojo sąsajos kalbos. ## Konfigūracijos struktūra Glaudinimo nustatymuose gali būti: ```json { "languageConfig": { "enabled": true, "defaultLanguage": "en", "autoDetect": true, "enabledPacks": ["en", "pt-BR", "es", "id", "de", "fr", "ja"] }, "cavemanConfig": { "language": "en", "autoDetectLanguage": true, "enabledLanguagePacks": ["en", "pt-BR", "es", "id", "de", "fr", "ja"] } } ``` `languageConfig` valdo valdymo skydelio ir peržiūros numatytąsias reikšmes. `cavemanConfig` yra vykdymo metu naudojama variklio konfigūracija, taikoma, kai „Caveman“ glaudina pranešimo tekstą. ## Kalbos paketo pridėjimas 1. Sukurkite `open-sse/services/compression/rules//.json`. 2. Naudokite Caveman taisyklių formatą iš `docs/compression/COMPRESSION_RULES_FORMAT.md`. 3. Keitinius taikykite konservatyviai ir nekeiskite kodo, identifikatorių, URL ar JSON. 4. Pridėkite arba atnaujinkite kalbos pasirinkimo ir keitimo veikimo testus. 5. Jei kalba rodoma naudotojo sąsajos parinkikliuose, pridėkite naujas valdymo skydelio / i18n etiketes. ## API Galimų paketų sąrašą galima gauti taip: ```bash curl http://localhost:20128/api/compression/language-packs ``` Peržiūros galinis taškas priima kalbos konfigūracijos perrašymus: ```bash curl -X POST http://localhost:20128/api/compression/preview \ -H "Content-Type: application/json" \ -d '{ "mode": "standard", "text": "Por favor, eu gostaria que voce basicamente resumisse isso.", "config": { "languageConfig": { "defaultLanguage": "pt-BR", "autoDetect": true } } }' ``` ## SHARED_BOUNDARIES (v3.8.0) Visi 6 kalbų paketai v3.8.0 versijoje gavo `SHARED_BOUNDARIES` sąlygą, kuri taikoma esant kiekvienam Caveman intensyvumo lygiui (LITE, FULL, ULTRA). Ji nurodo varikliui išsaugoti šiuos šablonus pažodžiui, neatsižvelgiant į aplinkinio perteklinio teksto šalinimą: | Šablono tipas | Pavyzdys | | --------------------------------------- | -------------------------------------- | | Aptverti kodo blokai | ` ```python\n...\n``` ` | | Įterptinis kodas | `` `my_var` `` | | URL | `https://example.com/path` | | Failų keliai (absoliutūs + santykiniai) | `/etc/hosts`, `./src/index.ts` | | Klaidų antraštės | `Error:`, `TypeError:`, `SyntaxError:` | | Dėklo sekimo eilutės | ` at functionName (file.ts:12:3)` | Šie šablonai įtraukti į `DEFAULT_CAVEMAN_CONFIG.preservePatterns` (anksčiau buvo `[]`). Ši konstanta yra faile `open-sse/services/compression/types.ts`. ### Kodėl tai svarbu Be SHARED_BOUNDARIES agresyvūs Caveman režimai galėtų pašalinti turinį, kuris atrodė kaip pasikartojanti proza, tačiau iš tikrųjų buvo kodo fragmentas, failo kelias arba klaidos dėklo išklotinė. SHARED_BOUNDARIES veikia kaip nuo kalbos nepriklausomas apsaugos mechanizmas, taikomas prieš vykdant perteklinio teksto šalinimo taisykles. ### preservePatterns tinkinimas Papildomų šablonų galima pridėti vykdymo metu naudojant glaudinimo nustatymus: ````json { "cavemanConfig": { "preservePatterns": [ "```[\\s\\S]*?```", "`[^`]+`", "https?://\\S+", "(?:/|\\./)[^\\s]+", "\\b(?:Error|TypeError|SyntaxError|RangeError):", "\\s+at\\s+\\S+\\s+\\(\\S+:\\d+:\\d+\\)" ] } } ```` Pasirinktiniai šablonai papildo (o ne pakeičia) 6 numatytuosius šablonus. --- ## Eksploatavimo pastabos - Kai kalbos paketo nėra, kaip atsarginis variantas lieka integruotosios anglų kalbos taisyklės. - Netinkami integruotieji JSON paketai nepraeina patikros, kad leidimo ištekliai nepastebimai neprarastų kokybės. - Taisyklių paketai yra tik duomenys ir neturėtų importuoti kodo ar vykdyti savavališkos logikos. - Glaudinimo analizės sluoksnis registruoja pasirinktą režimą ir variklį, o ne visą užklausos tekstą.