# Compression Language Packs (Azərbaycan dili) 🌐 **Languages:** 🇺🇸 [English](../../../../compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇪🇹 [am](../../../am/docs/compression/COMPRESSION_LANGUAGE_PACKS.md) · 🇸🇦 [ar](../../../ar/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) · 🇱🇹 [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 sıxışdırması daxili ingilis dili qaydalarına əlavə olaraq dilə xas qayda paketlərini yükləyə bilər. Bu, əsas mühərriki sabit saxlayır, eyni zamanda portuqal, ispan, alman, fransız, italyan, yapon və gələcək dil paketlərinin müstəqil şəkildə təkmilləşməsinə imkan verir. ## Yerləşmə Dil paketləri aşağıdakı qovluqda yerləşir: ```txt open-sse/services/compression/rules// ``` Hazırda təqdim olunan paketlər (`rules/` qovluğunun məzmunu ilə yoxlanılıb): | Dil | Qovluq | Mövcud qayda kateqoriyaları | | ------------------------- | -------------- | --------------------------------------------------- | | İngilis dili | `rules/en/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | İspan dili | `rules/es/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | Portuqal dili (Braziliya) | `rules/pt-BR/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | İndoneziya dili | `rules/id/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | İtalyan dili | `rules/it/` | `context`, `dedup`, `filler`, `structural`, `ultra` | | Alman dili | `rules/de/` | `context`, `filler`, `structural` | | Fransız dili | `rules/fr/` | `context`, `filler`, `structural` | | Yapon dili | `rules/ja/` | `context`, `filler`, `structural` | > **Uyğunluq qeydi:** `en`, `es`, `pt-BR`, `id` və `it` paketləri tam 5 kateqoriyaya malikdir; `de`, `fr`, `ja` isə 3 kateqoriya ilə təqdim olunur. Çatışmayan `dedup` və `ultra` kateqoriyaları səssiz şəkildə daxili ingilis dili qaydalarına geri qayıdır. Daha kiçik paketlərə `dedup.json` və `ultra.json` əlavə etmək üçün töhfələr qəbul olunur. > > `pt-BR` paketi Lenine Júnior tərəfindən hazırlanmış **[Troglodita](https://github.com/leninejunior/troglodita)** layihəsinə əsaslanır — bu, Braziliya portuqal dilinin qrammatikası üçün sıfırdan hazırlanmış sıxışdırma sistemidir (pleonazmların azaldılması, PT-BR doldurucu ifadələrinin silinməsi, Braziliya proqramçı icması üçün texniki qısaltmalar). > > Kanonik kateqoriya siyahısı və hər kateqoriya üzrə sxem [`open-sse/services/compression/rules/_schema.json`](../../open-sse/services/compression/rules/_schema.json) faylında yerləşir (JSON Schema layihəsi 2020-12). ## Dilin Aşkarlanması `languageDetector.ts` sorğu mətninin dilini müəyyən etmək üçün yüngül evristikalardan istifadə edir. Konfiqurasiya edilmiş standart dilə yenə də riayət olunur və dəqiq idarəetmə tələb edildikdə aşkarlama konfiqurasiya vasitəsilə deaktiv edilə bilər. Aşkarlama nəticəsi yalnız qayda paketlərini seçmək üçün istifadə olunur. Bu, provayder marşrutlaşdırmasını, lokal seçimini və ya istifadəçi interfeysinin dilini dəyişmir. ## Konfiqurasiya Strukturu Sıxışdırma parametrlərinə aşağıdakılar daxil edilə bilər: ```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` idarəetmə paneli/önizləmə üçün standart dəyərləri idarə edir. `cavemanConfig` isə Caveman mesaj mətnini sıxışdırarkən istifadə olunan icra zamanı mühərrik konfiqurasiyasıdır. ## Dil Paketinin Əlavə Edilməsi 1. `open-sse/services/compression/rules//.json` faylını yaradın. 2. `docs/compression/COMPRESSION_RULES_FORMAT.md` sənədindəki Caveman qayda formatından istifadə edin. 3. Əvəzləmələri ehtiyatla tətbiq edin və kodu, identifikatorları, URL-ləri və ya JSON-u dəyişdirməyin. 4. Dil seçimi və əvəzləmə davranışı üçün testlər əlavə edin və ya mövcud testləri yeniləyin. 5. Dil UI selektorlarında görünürsə, yeni dashboard/i18n etiketlərini əlçatan edin. ## API Mövcud paketləri aşağıdakı sorğu ilə əldə etmək olar: ```bash curl http://localhost:20128/api/compression/language-packs ``` Önizləmə son nöqtəsi dil konfiqurasiyası əvəzləmələrini qəbul edir: ```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) Bütün 6 dil paketi v3.8.0 versiyasında hər bir Caveman intensivliyində (LITE, FULL, ULTRA) tətbiq edilən `SHARED_BOUNDARIES` bəndini aldı. Bu bənd mühərrikə ətrafdakı doldurucu mətnin silinməsindən asılı olmayaraq, aşağıdakı nümunələri olduğu kimi qorumağı bildirir: | Nümunə növü | Nümunə | | ----------------------------- | -------------------------------------- | | Çərçivələnmiş kod blokları | ` ```python\n...\n``` ` | | Sətirdaxili kod | `` `my_var` `` | | URL-lər | `https://example.com/path` | | Fayl yolları (mütləq + nisbi) | `/etc/hosts`, `./src/index.ts` | | Xəta başlıqları | `Error:`, `TypeError:`, `SyntaxError:` | | Stek izi sətirləri | ` at functionName (file.ts:12:3)` | Bu nümunələr `DEFAULT_CAVEMAN_CONFIG.preservePatterns` daxilində yerləşdirilir (əvvəllər `[]` idi). Sabit `open-sse/services/compression/types.ts` faylında yerləşir. ### Bu niyə vacibdir SHARED_BOUNDARIES olmadan aqressiv Caveman rejimləri təkrarlanan mətn kimi görünən, lakin əslində kod fraqmenti, fayl yolu və ya xəta steki olan məzmunu silə bilərdi. SHARED_BOUNDARIES doldurucu qaydalar icra edilməzdən əvvəl tətbiq olunan, dildən asılı olmayan təhlükəsizlik mexanizmi kimi fəaliyyət göstərir. ### preservePatterns fərdiləşdirilməsi Sıxışdırma parametrləri vasitəsilə icra zamanı əlavə nümunələr daxil edilə bilər: ````json { "cavemanConfig": { "preservePatterns": [ "```[\\s\\S]*?```", "`[^`]+`", "https?://\\S+", "(?:/|\\./)[^\\s]+", "\\b(?:Error|TypeError|SyntaxError|RangeError):", "\\s+at\\s+\\S+\\s+\\(\\S+:\\d+:\\d+\\)" ] } } ```` Fərdi nümunələr 6 standart nümunəni əvəz etmir, onları genişləndirir. --- ## Əməliyyat Qeydləri - Dil paketi olmadıqda daxili ingilis dili qaydaları ehtiyat variant kimi qalır. - Etibarsız daxili JSON paketləri doğrulamadan keçmir ki, buraxılış resurslarının keyfiyyəti xəbərdarlıq edilmədən aşağı düşməsin. - Qayda paketləri yalnız verilənlərdən ibarətdir və kod import etməməli və ya ixtiyari məntiq icra etməməlidir. - Sıxışdırma analitikası qatı tam sorğu mətnini deyil, seçilmiş rejimi və mühərriki qeydə alır.