# Compression Language Packs (ગુજરાતી) 🌐 **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) · 🇳🇬 [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) · 🇱🇹 [lt](../../../lt/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 કમ્પ્રેશન બિલ્ટ-ઇન અંગ્રેજી નિયમો ઉપરાંત ભાષા-વિશિષ્ટ નિયમ પૅક્સ લોડ કરી શકે છે. આ મુખ્ય એન્જિનને સ્થિર રાખે છે અને સાથે જ પોર્ટુગીઝ, સ્પેનિશ, જર્મન, ફ્રેન્ચ, ઇટાલિયન, જાપાનીઝ તથા ભાવિ ભાષા પૅક્સને સ્વતંત્ર રીતે વિકસિત થવાની મંજૂરી આપે છે. ## સ્થાન ભાષા પૅક્સ અહીં સ્થિત છે: ```txt open-sse/services/compression/rules// ``` હાલમાં ઉપલબ્ધ પૅક્સ (`rules/` ડિરેક્ટરીની સામગ્રી સામે ચકાસેલા): | ભાષા | ડિરેક્ટરી | ઉપલબ્ધ નિયમ શ્રેણીઓ | | ------------------- | -------------- | --------------------------------------------------- | | અંગ્રેજી | `rules/en/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | સ્પેનિશ | `rules/es/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | પોર્ટુગીઝ (બ્રાઝિલ) | `rules/pt-BR/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | ઇન્ડોનેશિયન | `rules/id/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | ઇટાલિયન | `rules/it/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | જર્મન | `rules/de/` | `context`, `filler`, `structural` | | ફ્રેન્ચ | `rules/fr/` | `context`, `filler`, `structural` | | જાપાનીઝ | `rules/ja/` | `context`, `filler`, `structural` | > **સમાનતા નોંધ:** `en`, `es`, `pt-BR`, `id`, અને `it` પૅક્સમાં તમામ 5 શ્રેણીઓ છે; `de`, `fr`, `ja` 3 શ્રેણીઓ સાથે ઉપલબ્ધ છે. ગેરહાજર `dedup` અને `ultra` શ્રેણીઓ કોઈ સૂચના વિના બિલ્ટ-ઇન અંગ્રેજી નિયમોનો ફૉલબૅક તરીકે ઉપયોગ કરે છે. નાના પૅક્સ માટે `dedup.json` અને `ultra.json` ઉમેરવાના યોગદાન આવકાર્ય છે. > > `pt-BR` પૅક Lenine Júnior દ્વારા બનાવવામાં આવેલી **[Troglodita](https://github.com/leninejunior/troglodita)** પર આધારિત છે — જે બ્રાઝિલિયન પોર્ટુગીઝ વ્યાકરણ માટે શરૂઆતથી રચાયેલી કમ્પ્રેશન સિસ્ટમ છે (અતિરિક્ત શબ્દપ્રયોગમાં ઘટાડો, PT-BR પૂરક શબ્દો દૂર કરવા, dev BR સમુદાય માટે ટેક્નિકલ સંક્ષેપો). > > અધિકૃત શ્રેણી સૂચિ અને પ્રત્યેક શ્રેણીની સ્કીમા [`open-sse/services/compression/rules/_schema.json`](../../open-sse/services/compression/rules/_schema.json)માં ઉપલબ્ધ છે (JSON Schema draft 2020-12). ## ભાષાની ઓળખ `languageDetector.ts` પ્રોમ્પ્ટ ટેક્સ્ટમાંથી ભાષાનું અનુમાન કરવા માટે હળવી હ્યુરિસ્ટિક્સનો ઉપયોગ કરે છે. રૂપરેખાંકિત ડિફૉલ્ટ ભાષાનું હજુ પણ પાલન કરવામાં આવે છે, અને જ્યારે ચોક્કસ નિયંત્રણ જરૂરી હોય ત્યારે રૂપરેખાંકન દ્વારા ઓળખ અક્ષમ કરી શકાય છે. ઓળખનું આઉટપુટ ફક્ત નિયમ પૅક્સ પસંદ કરવા માટે વપરાય છે. તે પ્રદાતા રૂટિંગ, લોકેલ પસંદગી અથવા UI ભાષાને બદલતું નથી. ## રૂપરેખાંકનનું સ્વરૂપ કમ્પ્રેશન સેટિંગ્સમાં આનો સમાવેશ થઈ શકે છે: ```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` ડૅશબોર્ડ/પૂર્વાવલોકનના ડિફૉલ્ટ્સને નિયંત્રિત કરે છે. `cavemanConfig` એ રનટાઇમ એન્જિનનું રૂપરેખાંકન છે, જેનો ઉપયોગ Caveman સંદેશના ટેક્સ્ટને કમ્પ્રેસ કરતી વખતે થાય છે. ## ભાષા પૅક ઉમેરવું 1. `open-sse/services/compression/rules//.json` બનાવો. 2. `docs/compression/COMPRESSION_RULES_FORMAT.md` માં આપેલા Caveman નિયમ ફોર્મેટનો ઉપયોગ કરો. 3. રિપ્લેસમેન્ટ્સ સાવચેતીપૂર્વક રાખો અને કોડ, આઇડેન્ટિફાયર્સ, URLs અથવા JSON બદલવાનું ટાળો. 4. ભાષાની પસંદગી અને રિપ્લેસમેન્ટની વર્તણૂક માટે પરીક્ષણો ઉમેરો અથવા અપડેટ કરો. 5. જો ભાષા UI પસંદગીકારોમાં દેખાતી હોય, તો નવા ડૅશબોર્ડ/i18n લેબલ્સ ઉપલબ્ધ કરાવો. ## API ઉપલબ્ધ પૅક્સ માટે આ રીતે ક્વેરી કરી શકાય છે: ```bash curl http://localhost:20128/api/compression/language-packs ``` પૂર્વાવલોકન એન્ડપોઇન્ટ ભાષા કૉન્ફિગ ઓવરરાઇડ્સ સ્વીકારે છે: ```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) તમામ 6 ભાષા પૅક્સને v3.8.0 માં `SHARED_BOUNDARIES` ક્લૉઝ મળ્યો, જે દરેક Caveman તીવ્રતા (LITE, FULL, ULTRA) પર લાગુ થાય છે. તે એન્જિનને આસપાસના ફિલર દૂર કરવામાં આવે તો પણ આ પેટર્ન્સને યથાવત્ જાળવવાની સૂચના આપે છે: | પેટર્નનો પ્રકાર | ઉદાહરણ | | --------------------------------- | -------------------------------------- | | ફેન્સ્ડ કોડ બ્લૉક્સ | ` ```python\n...\n``` ` | | ઇનલાઇન કોડ | `` `my_var` `` | | URLs | `https://example.com/path` | | ફાઇલ પાથ્સ (ઍબ્સોલ્યુટ + રિલેટિવ) | `/etc/hosts`, `./src/index.ts` | | ભૂલ હેડર્સ | `Error:`, `TypeError:`, `SyntaxError:` | | સ્ટૅક ટ્રેસ લાઇન્સ | ` at functionName (file.ts:12:3)` | આ પેટર્ન્સ `DEFAULT_CAVEMAN_CONFIG.preservePatterns` માં સમાવિષ્ટ છે (અગાઉ `[]` હતું). આ કૉન્સ્ટન્ટ `open-sse/services/compression/types.ts` માં છે. ### આ શા માટે મહત્ત્વપૂર્ણ છે SHARED_BOUNDARIES વિના, આક્રમક Caveman મોડ્સ પુનરાવર્તિત ગદ્ય જેવું લાગતું, પરંતુ વાસ્તવમાં કોડ સ્નિપેટ, ફાઇલ પાથ અથવા એરર સ્ટૅક હોય એવું કન્ટેન્ટ દૂર કરી શકતા હતા. SHARED_BOUNDARIES ફિલર નિયમો લાગુ થાય તે પહેલાં લાગુ પડતી ભાષા-નિરપેક્ષ સુરક્ષા વ્યવસ્થા તરીકે કાર્ય કરે છે. ### preservePatterns ને કસ્ટમાઇઝ કરવું કમ્પ્રેશન સેટિંગ્સ દ્વારા રનટાઇમ પર વધારાના પેટર્ન્સ ઉમેરી શકાય છે: ````json { "cavemanConfig": { "preservePatterns": [ "```[\\s\\S]*?```", "`[^`]+`", "https?://\\S+", "(?:/|\\./)[^\\s]+", "\\b(?:Error|TypeError|SyntaxError|RangeError):", "\\s+at\\s+\\S+\\s+\\(\\S+:\\d+:\\d+\\)" ] } } ```` કસ્ટમ પેટર્ન્સ 6 ડિફૉલ્ટ્સને વિસ્તારે છે (બદલતા નથી). --- ## કાર્યકારી નોંધો - કોઈ ભાષા પૅક ઉપલબ્ધ ન હોય ત્યારે અંગ્રેજીના બિલ્ટ-ઇન નિયમો ફૉલબૅક તરીકે રહે છે. - અમાન્ય બિલ્ટ-ઇન JSON પૅક્સ વૅલિડેશનમાં નિષ્ફળ જાય છે, જેથી રિલીઝ ઍસેટ્સની ગુણવત્તા જાણ થયા વિના ન ઘટે. - નિયમ પૅક્સ ફક્ત ડેટા હોવા જોઈએ અને તેમણે કોડ ઇમ્પોર્ટ ન કરવો જોઈએ કે મનસ્વી લૉજિક ચલાવવો જોઈએ નહીં. - કમ્પ્રેશન ઍનલિટિક્સ લેયર પસંદ કરાયેલ મોડ અને એન્જિન રેકોર્ડ કરે છે, સંપૂર્ણ પ્રૉમ્પ્ટ ટેક્સ્ટ નહીં.