Context Compression
This page documents
praisonaiagents.rag.ContextCompressor for compressing retrieved RAG chunks. For compressing conversation history in long agent runs, see LLM Context Compression.How It Works
Overview
The ContextCompressor provides:- Deduplication of similar content
- Query-focused extraction of relevant sentences
- Token-aware truncation to fit budgets
- LLM summarization fallback for aggressive compression
Quick Start
1
Compress retrieved chunks
2
Search with compression via CLI
Compression Strategies
Deduplication
Removes duplicate or near-duplicate content:Query-Focused Extraction
Extracts sentences most relevant to the query:Truncation
Simple truncation to fit token budget:LLM Summarization
Uses LLM for aggressive compression:Compression Results
CompressionResult Structure
Working with Results
CLI Usage
Integration with Agents
Best Practices
Enable LLM summarisation for long chats
Enable LLM summarisation for long chats
llm_summarize=True preserves decisions and facts better than blunt truncation.Hook memory before compress
Hook memory before compress
Use
on_pre_compress to persist important facts before messages are discarded.Pair with smart retrieval
Pair with smart retrieval
Re-fetch compressed-away details via hybrid search instead of keeping everything inline.
Log compression events
Log compression events
Review observability history to confirm compression helps rather than hurts answer quality.
API Reference
ContextCompressor
CompressionResult
Memory backends can implement the
on_pre_compress hook to extract and persist important facts before compression discards messages. See Memory Lifecycle Hooks for details.Related
Smart Retrieval
Hybrid search before compression
Token Budgeting
Set budgets for retrieved context

