---
title: "Kompresja promptu"
source: "https://systems-analysis.info/int/Kompresja_promptu"
wiki: "systems-analysis.info/int"
article: "Kompresja_promptu"
language: "pl"
categories:
  - "Category:Large language models"
  - "Category:Machine learning"
  - "Category:Polish"
  - "Category:Prompt engineering"
revision_id: 3460
wiki_created_at: 2026-09-06T23:21:07Z
wiki_modified_at: 2026-09-06T23:21:07Z
downloaded_at: 2026-09-07T22:57:06Z
---

# Kompresja promptu

**Kompresja promptu** (ang. *prompt compression*) — to zbiór metod w prompt inżynierii, mających na celu skrócenie długości tekstu wejściowego (promptu) dla dużych modeli językowych (LLM) przy zachowaniu kluczowych informacji<sup>[\[1\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-jha2024-1)</sup>. Wraz ze wzrostem okna kontekstowego LLM do milionów tokenów (np. w Google Gemini) pojawiła się możliwość przetwarzania bardzo długich tekstów, lecz stworzyło to nowe problemy: wysokie koszty wywołań, zwiększone opóźnienia oraz obniżenie jakości wnioskowania z powodu efektu „zagubienia w środku"<sup>[\[2\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-survey2024-2)</sup>.

Kompresja promptu rozwiązuje te problemy, koncentrując w skróconym wejściu najbardziej istotne dane i odrzucając nadmiarowe. Zmniejsza to ryzyko przekroczenia limitu kontekstu, przyspiesza generowanie i obniża koszty, zachowując przy tym dokładność odpowiedzi<sup>[\[3\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-datacamp-guide-3)</sup>.

## Metody kompresji promptu

Metody kompresji promptu można podzielić na kilka głównych klas.

### Usuwanie tokenów (filtrowanie)

Podejście to polega na usuwaniu najmniej informatywnych tokenów, fraz lub zdań z tekstu źródłowego bez zmiany pozostałych części. Ważność tokenów określana jest heurystycznie.

- **LLMLingua**: Metoda opracowana przez Microsoft, która oblicza perpleksję każdego tokenu i usuwa te z nich, które mało wpływają na przewidywalność tekstu. W wersji **LongLLMLingua** podejście to zostało zaadaptowane dla długich dokumentów, uwzględniając trafność fragmentów względem konkretnego zapytania użytkownika<sup>[\[4\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-jiang2023_llmlingua-4)</sup>.
- **Selective-Context**: Wykorzystuje niewielki model językowy do oceny *self-information* każdego tokenu i odrzuca tokeny o najmniejszej informatywności<sup>[\[5\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-li2023_selective-5)</sup>.
- **PCRL** (Prompt Compression via Reinforcement Learning): Uczy agenta za pomocą uczenia przez wzmacnianie (Reinforcement Learning) podejmowania decyzji dla każdego tokenu — „zachować" lub „usunąć" — w celu maksymalizacji metryki jakości (np. ROUGE) finalnej odpowiedzi<sup>[\[6\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-jung2023_pcrl-6)</sup>.

### Abstrakcyjne sжатие (streszczanie)

W tym podejściu model-kompresor (zazwyczaj mniejszego rozmiaru) generuje krótkie abstrakcyjne streszczenie tekstu źródłowego, które następnie przekazywane jest głównemu LLM.

- **RECOMP** (Retrieval-Compression-Prompting): Dla każdego dokumentu w bazie wiedzy z góry generowane jest krótkie streszczenie (*summary*), uwzględniające możliwe zapytania użytkownika (*query-aware summary*). Pozwala to nie tylko kompresować, lecz także wstępnie przetwarzać informacje<sup>[\[7\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-xu2024_recomp-7)</sup>.
- **PRCA** (Prompt Compression with Reinforced Context Aggregation): Łączy uczenie modelu-sumaryzatora z uczeniem przez wzmacnianie (Reinforcement Learning), aby generować takie streszczenia, które maksymalnie poprawiają jakość odpowiedzi głównego LLM<sup>[\[8\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-yang2023_prca-8)</sup>.
- **Prompt-SAW** (Semantic Aware Winnowing): Przed streszczaniem wyodrębnia z tekstu graf wiedzy (encje i relacje), wybiera trafne węzły grafu i na ich podstawie generuje skompresowany tekst<sup>[\[9\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-ali2024_promptsaw-9)</sup>.

### Ekstrakcyjne kompresowanie

Metoda ta wyodrębnia kluczowe fragmenty (zdania, akapity) z tekstu źródłowego bez ich parafrazowania.

- **Reranker-LLMs**: Wykorzystuje model rankingowy (*reranker*), który ocenia ważność każdego akapitu lub dokumentu dla bieżącego zapytania i wybiera wyłącznie najbardziej trafne<sup>[\[10\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-pradeep2023_reranker-10)</sup>.
- **CompAct**: Demonstruje iteracyjną ekstrakcję-streszczanie. Model kolejno pobiera segmenty długiego tekstu, kompresuje je i sprawdza, czy informacji wystarczy do udzielenia odpowiedzi. Jeśli nie, dodaje kolejny segment i ponownie kompresuje, osiągając znaczną kompresję przy zachowaniu jakości<sup>[\[11\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-yoon2024_compact-11)</sup>.

### Destylacja i „tokeny pamięci"

Nowa klasa metod, w której zamiast tekstu model otrzymuje specjalnie wytrenowane tokeny-zastępniki lub embedding, zawierające skompresowane informacje.

- **Gist Tokens**: Model LLM jest fine-tunowany w celu „zwijania" długich instrukcji w niewielki zestaw specjalnych *gist-tokenów* (np. 20–30 tokenów zamiast kilku tysięcy). Tokeny te są następnie używane zamiast oryginalnego promptu, zapewniając do 26-krotną kompresję przy minimalnej utracie jakości<sup>[\[12\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-mu2023_gist-12)</sup>.
- **Soft Prompt Tuning**: Zamiast tekstowego promptu używane są uczące się „wirtualne tokeny" (embedding), które są dostrajane do rozwiązania konkretnego zadania.
- **SelfCP**: Proponuje wykorzystanie samego zamrożonego LLM jako kompresora. Podając mu segment tekstu ze specjalnymi znacznikami, model generuje gęstą reprezentację (*memory tokens*), która następnie używana jest przez ten sam model do udzielenia odpowiedzi<sup>[\[13\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-gao2024_selfcp-13)</sup>.

## Efektywność i kompromisy

- **Przyspieszenie i redukcja kosztów**: Ponieważ złożoność transformera rośnie kwadratowo (\$O(n^2)\$) wraz z długością sekwencji, kilkukrotne skrócenie promptu przynosi istotne oszczędności. Przykładowo, *gist tokens* przy 26-krotnej kompresji wykazują do 40% oszczędności FLOPs<sup>[\[12\]](https://systems-analysis.info/int/Kompresja_promptu#cite_note-mu2023_gist-12)</sup>.
- **Poprawa jakości**: Niekiedy kompresja promptu może nawet poprawić jakość odpowiedzi, jeśli tekst źródłowy zawierał szum lub rozpraszające szczegóły. Usunięcie nieistotnego kontekstu pomaga modelowi lepiej skupić się na ważnych aspektach zadania.
- **Kompromis jakościowy (faithfulness)**: Zbyt agresywna kompresja może prowadzić do utraty istotnych szczegółów (dat, imion, negacji), co obniży jakość odpowiedzi. Metody abstrakcyjne są szczególnie narażone na ryzyko halucynacji. Kontrola kompletności i dokładności (*faithfulness*) skompresowanego promptu to kluczowe zadanie.

## Związek z innymi kierunkami

- **Retrieval-Augmented Generation (RAG)**: RAG i kompresja promptu są ściśle powiązane. RAG można traktować jako zewnętrzny etap kompresji: zamiast przetwarzania całej bazy danych wykonywane jest wyszukiwanie i selekcja trafnych dokumentów. Kompresja promptu uzupełnia RAG, redukując objętość już wyselekcjonowanych dokumentów przed podaniem ich do LLM.
- **In-Context Learning**: Przykłady w kontekście (demonstracje) znacząco zwiększają długość promptu. Kompresja tych demonstracji (np. za pomocą *Instruction Distillation*, gdzie wiele przykładów zastępowane jest jedną krótką instrukcją) jest aktywnym obszarem badań.

## Literatura

- Ali, M. et al. (2024). *Prompt-SAW: Semantic-Aware Winnowing for Prompt Compression*. arXiv:2403.00000.
- Gao, J.; Cao, Z.; Li, W. (2024). *SelfCP: Compressing Over-Limit Prompt via the Frozen Large Language Model Itself*. arXiv:2405.17052.
- Jiang, H. et al. (2023). *LLMLingua: Compressing Prompts for Accelerated Inference of Large Language Models*. arXiv:2310.05736.
- Jiang, H. et al. (2023). *LongLLMLingua: Accelerating and Enhancing LLMs in Long-Context Scenarios via Prompt Compression*. arXiv:2310.06839.
- Jung, H.; Kim, K. (2023). *PCRL: Discrete Prompt Compression with Reinforcement Learning*. arXiv:2308.08758.
- Li, M. et al. (2023). *Selective-Context: Compressing Context to Summarise and Answer Questions*. arXiv:2307.00000.
- Mu, J. et al. (2023). *Learning to Compress Prompts with Gist Tokens*. NeurIPS 2023.
- Xu, F.; Shi, W.; Choi, E. (2023). *RECOMP: Improving Retrieval-Augmented LMs with Compression and Selective Augmentation*. arXiv:2310.04408.
- Yang, C. et al. (2023). *PRCA: Prompt Compression with Reinforced Context Aggregation*. arXiv:2311.00000.
- Yoon, J. et al. (2024). *CompAct: Interactive Prompt Compression for Long-Document QA*. arXiv:2402.00000.
- Zhang, S. et al. (2024). *Efficient Prompting Methods for Large Language Models: A Survey*. arXiv:2404.01077.
- Jha, S. et al. (2024). *Characterizing Prompt Compression Methods for Long Context Inference*. arXiv:2407.08892.

## Przypisy

1.  <span id="cite_note-jha2024-1">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-jha2024_1-0) Jha, S., et al. (2024). «Characterizing Prompt Compression Methods for Long Context Inference». *arXiv*. <a href="https://arxiv.org/html/2407.08892v1" class="external autonumber" rel="nofollow">[1]</a></span>
2.  <span id="cite_note-survey2024-2">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-survey2024_2-0) «Efficient Prompting Methods for Large Language Models: A Survey». *arXiv*. <a href="https://arxiv.org/html/2404.01077v2" class="external autonumber" rel="nofollow">[2]</a></span>
3.  <span id="cite_note-datacamp-guide-3">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-datacamp-guide_3-0) «Prompt Compression: A Guide With Python Examples». *DataCamp*. <a href="https://www.datacamp.com/tutorial/prompt-compression" class="external autonumber" rel="nofollow">[3]</a></span>
4.  <span id="cite_note-jiang2023_llmlingua-4">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-jiang2023_llmlingua_4-0) Jiang, H., et al. (2023). «LLMLingua: Compressing Prompts for Accelerated Inference of Large Language Models». *arXiv*.</span>
5.  <span id="cite_note-li2023_selective-5">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-li2023_selective_5-0) Li, M. (2023). «Compressing context to summarize and answer questions». *arXiv*.</span>
6.  <span id="cite_note-jung2023_pcrl-6">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-jung2023_pcrl_6-0) Jung, H., & Kim, K. (2023). «Learning to Compress Prompts with Reinforcement Learning». *arXiv*.</span>
7.  <span id="cite_note-xu2024_recomp-7">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-xu2024_recomp_7-0) Xu, F., et al. (2024). «RECOMP: Improving Retrieval-Augmented LMs with Compression and Selective Augmentation». *arXiv*.</span>
8.  <span id="cite_note-yang2023_prca-8">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-yang2023_prca_8-0) Yang, C., et al. (2023). «PRCA: A new framework for prompt compression». *arXiv*.</span>
9.  <span id="cite_note-ali2024_promptsaw-9">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-ali2024_promptsaw_9-0) Ali, M., et al. (2024). «Prompt-SAW: A new method for prompt compression». *arXiv*.</span>
10. <span id="cite_note-pradeep2023_reranker-10">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-pradeep2023_reranker_10-0) Pradeep, R., et al. (2023). «How to select the best passages for RAG?». *arXiv*.</span>
11. <span id="cite_note-yoon2024_compact-11">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-yoon2024_compact_11-0) Yoon, J., et al. (2024). «CompAct: A new framework for interactive prompt compression». *arXiv*.</span>
12. <span id="cite_note-mu2023_gist-12">↑ <sup>[12.0](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-mu2023_gist_12-0)</sup> <sup>[12.1](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-mu2023_gist_12-1)</sup> Mu, J., et al. (2023). «Learning to Compress Prompts with Gist Tokens». *OpenReview*. <a href="https://openreview.net/forum?id=2DtxPCL3T5" class="external autonumber" rel="nofollow">[4]</a></span>
13. <span id="cite_note-gao2024_selfcp-13">[↑](https://systems-analysis.info/int/Kompresja_promptu#cite_ref-gao2024_selfcp_13-0) Gao, C., et al. (2024). «SelfCP: Compressing Over-Limit Prompt via the Frozen Large Language Model Itself». *arXiv*. <a href="https://arxiv.org/html/2405.17052v2" class="external autonumber" rel="nofollow">[5]</a></span>
