---
title: "Prompt compression"
source: "https://systems-analysis.info/wiki/Prompt_compression"
wiki: "systems-analysis.info/wiki"
article: "Prompt_compression"
language: "ru"
categories:
  - "Категория:Prompt инжиниринг"
  - "Категория:Russian"
  - "Категория:Большие языковые модели"
  - "Категория:Машинное обучение"
revision_id: 167
wiki_created_at: 2026-09-06T22:04:44Z
wiki_modified_at: 2026-09-06T22:04:44Z
downloaded_at: 2026-09-07T22:17:59Z
---

# Prompt compression

**Сжатие промпта** (англ. *prompt compression*) — это совокупность методов в промпт-инжиниринге, направленных на сокращение длины входного текста (промпта) для [больших языковых моделей (LLM)](https://systems-analysis.info/wiki/%D0%91%D0%BE%D0%BB%D1%8C%D1%88%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2%D1%8B%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8 "Большие языковые модели") при сохранении ключевой информации<sup>[\[1\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-jha2024-1)</sup>. С ростом [контекстного окна](https://systems-analysis.info/wiki/%D0%9A%D0%BE%D0%BD%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%BD%D0%BE%D0%B5_%D0%BE%D0%BA%D0%BD%D0%BE "Контекстное окно") LLM до миллионов [токенов](https://systems-analysis.info/wiki/%D0%A2%D0%BE%D0%BA%D0%B5%D0%BD "Токен") (например, у Google [Gemini](https://systems-analysis.info/wiki/Gemini "Gemini")) появилась возможность обрабатывать очень длинные тексты, но это создало новые проблемы: высокую стоимость вызовов, увеличение задержки и снижение качества рассуждений из-за эффекта «потери в середине»<sup>[\[2\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-survey2024-2)</sup>.

Сжатие промпта решает эти проблемы, концентрируя в сокращённом вводе наиболее существенные данные и отбрасывая избыточные. Это уменьшает риск превысить лимит контекста, ускоряет генерацию и снижает стоимость, сохраняя при этом точность ответов<sup>[\[3\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-datacamp-guide-3)</sup>.

## Методы сжатия промпта

Методы сжатия промпта можно разделить на несколько основных классов.

### Удаление токенов (фильтрация)

Этот подход заключается в удалении наименее информативных токенов, фраз или предложений из исходного текста без изменения оставшихся частей. Важность токенов определяется эвристически.

- **LLMLingua**: Метод, разработанный Microsoft, который вычисляет [перплексию](https://systems-analysis.info/wiki/%D0%9F%D0%B5%D1%80%D0%BF%D0%BB%D0%B5%D0%BA%D1%81%D0%B8%D1%8F "Перплексия") каждого токена и удаляет те из них, которые мало влияют на предсказуемость текста. В версии **LongLLMLingua** этот подход адаптирован для длинных документов, учитывая релевантность фрагментов по отношению к конкретному запросу пользователя<sup>[\[4\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-jiang2023_llmlingua-4)</sup>.
- **Selective-Context**: Использует небольшую языковую модель для оценки *self-information* каждого токена и отбрасывает токены с наименьшей информативностью<sup>[\[5\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-li2023_selective-5)</sup>.
- **PCRL** (Prompt Compression via Reinforcement Learning): Обучает агента с помощью обучения с подкреплением принимать решение для каждого токена — «оставить» или «удалить» — с целью максимизации метрики качества (например, [ROUGE](https://systems-analysis.info/wiki/ROUGE "ROUGE")) финального ответа<sup>[\[6\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-jung2023_pcrl-6)</sup>.

### Абстрактивное сжатие (резюмирование)

В этом подходе модель-компрессор (обычно меньшего размера) генерирует краткое абстрактное резюме исходного текста, которое затем передаётся основной LLM.

- **RECOMP** (Retrieval-Compression-Prompting): Для каждого документа в базе знаний заранее генерируется краткий пересказ (*summary*), учитывающий возможные запросы пользователя (*query-aware summary*). Это позволяет не только сжимать, но и предварительно обрабатывать информацию<sup>[\[7\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-xu2024_recomp-7)</sup>.
- **PRCA** (Prompt Compression with Reinforced Context Aggregation): Комбинирует обучение модели-суммаризатора с обучением с подкреплением, чтобы генерировать такие пересказы, которые максимально улучшают качество ответов основной LLM<sup>[\[8\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-yang2023_prca-8)</sup>.
- **Prompt-SAW** (Semantic Aware Winnowing): Перед суммаризацией извлекает из текста граф знаний (сущности и отношения), отбирает релевантные узлы графа и на их основе генерирует сжатый текст<sup>[\[9\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-ali2024_promptsaw-9)</sup>.

### Экстрактивное сжатие

Этот метод извлекает ключевые фрагменты (предложения, абзацы) из исходного текста без их перефразирования.

- **Reranker-LLMs**: Использует модель-ранжировщик (*reranker*), которая оценивает важность каждого абзаца или документа для текущего запроса и отбирает только наиболее релевантные<sup>[\[10\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-pradeep2023_reranker-10)</sup>.
- **CompAct**: Демонстрирует итеративную экстракцию-суммаризацию. Модель последовательно берёт сегменты длинного текста, сжимает их и проверяет, достаточно ли информации для ответа. Если нет, добавляет следующий сегмент и снова сжимает, достигая значительного сжатия при сохранении качества<sup>[\[11\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-yoon2024_compact-11)</sup>.

### Дистилляция и «токены памяти»

Новый класс методов, где вместо текста модель получает специально обученные токены-заместители или эмбеддинги, содержащие сжатую информацию.

- **Gist Tokens**: Модель LLM дообучается «сворачивать» длинные инструкции в небольшой набор специальных *gist-токенов* (например, 20-30 токенов вместо нескольких тысяч). Эти токены затем используются вместо исходного промпта, обеспечивая до 26-кратного сжатия при минимальной потере качества<sup>[\[12\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-mu2023_gist-12)</sup>.
- **Soft Prompt Tuning**: Вместо текстового промпта используются обучаемые «виртуальные токены» (эмбеддинги), которые настраиваются для решения конкретной задачи.
- **SelfCP**: Предлагает использовать саму замороженную LLM в качестве компрессора. Подавая ей сегмент текста с особыми метками, модель генерирует плотное представление (*memory tokens*), которое затем используется ею же для ответа<sup>[\[13\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-gao2024_selfcp-13)</sup>.

## Эффективность и компромиссы

- **Ускорение и снижение затрат**: Поскольку сложность трансформера растёт квадратично (\$O(n^2)\$) от длины последовательности, сокращение промпта в несколько раз даёт существенную экономию. Например, *gist tokens* при 26-кратном сжатии демонстрируют до 40% экономии FLOPs<sup>[\[12\]](https://systems-analysis.info/wiki/Prompt_compression#cite_note-mu2023_gist-12)</sup>.
- **Повышение качества**: Иногда сжатие промпта может даже улучшить качество ответов, если исходный текст содержал шум или отвлекающие детали. Удаление нерелевантного контекста помогает модели лучше сфокусироваться на важных аспектах задачи.
- **Компромисс качества (faithfulness)**: Слишком агрессивное сжатие может привести к потере важных деталей (дат, имён, отрицаний), что ухудшит качество ответа. Абстрактивные методы особенно подвержены риску галлюцинаций. Контроль полноты и точности (*faithfulness*) сжатого промпта — ключевая задача.

## Связь с другими направлениями

- **Retrieval-Augmented Generation (RAG)**: RAG и сжатие промпта тесно связаны. RAG можно рассматривать как внешний этап сжатия: вместо обработки всей базы данных производится поиск и отбор релевантных документов. Сжатие промпта дополняет RAG, сокращая объём уже отобранных документов перед подачей в LLM.
- **[In-Context Learning](https://systems-analysis.info/wiki/In-Context_Learning "In-Context Learning")**: Примеры в контексте (демонстрации) значительно увеличивают длину промпта. Сжатие этих демонстраций (например, с помощью *Instruction Distillation*, где множество примеров заменяется одной короткой инструкцией) является активной областью исследований.

## См. также

- [Prompt и контекст](https://systems-analysis.info/wiki/Prompt_%D0%B8_%D0%BA%D0%BE%D0%BD%D1%82%D0%B5%D0%BA%D1%81%D1%82 "Prompt и контекст")
- [Основные приёмы Prompt Engineering](https://systems-analysis.info/wiki/%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D1%91%D0%BC%D1%8B_Prompt_Engineering "Основные приёмы Prompt Engineering")
- [Automatic Prompt Engineer (APE)](https://systems-analysis.info/wiki/Automatic_Prompt_Engineer_(APE) "Automatic Prompt Engineer (APE)")
- [Prompt](https://systems-analysis.info/wiki/Prompt "Prompt")
- [Prompt инжиниринг](https://systems-analysis.info/wiki/Prompt_%D0%B8%D0%BD%D0%B6%D0%B8%D0%BD%D0%B8%D1%80%D0%B8%D0%BD%D0%B3 "Prompt инжиниринг")

## Литература

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

## Примечания

1.  <span id="cite_note-jha2024-1">[↑](https://systems-analysis.info/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#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/wiki/Prompt_compression#cite_ref-mu2023_gist_12-0)</sup> <sup>[12,1](https://systems-analysis.info/wiki/Prompt_compression#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/wiki/Prompt_compression#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>
