session-compression

AI session compression techniques for managing multi-turn conversations efficiently through summarization, embedding-based retrieval, and intelligent context management.

By bobmatnyc · 590 installs

npx skills add bobmatnyc/claude-mpm-skills --skill session-compression

Source repository · Upstream listing

AI Session Compression Techniques Summary Compress long AI conversations to fit context windows while preserving critical information. Session compression enables production AI applications to manage multi turn conversations efficiently by reducing token usage by 70 95% through summarization, embedding based retrieval, and intelligent context management. Achieve 3 20x compression ratios with minimal performance degradation. Key Benefits: Cost Reduction: 80 90% token cost savings through hierarchical memory Performance: 2x faster responses with compressed context Scalability: Handle conversations exceeding 1M tokens Quality: Preserve critical information with <2% accuracy loss When to Use Use session compression when: Multi turn conversations approach context window limits ( 50% capacity) Long running chat sessions (customer support, tutoring, code assistants) Token costs become significant (high volume applications) Response latency increases due to large context Managing conversation history across multiple sessions Don't use when: Short conversations (<10 turns) fitting easily in context Every detail must be preserved verbatim (legal, compliance) Single turn or stateless interactions Context window usage is <30% Ideal scenarios: Chatbots with 50+ turn conversations AI code assistants tracking long development sessions Customer support with multi session ticket history Educational tutors with student progress tracking Multi day collaborative AI workflows Quick Start Basic Setup with LangChain Progressive Compression Pattern Using Anthropic Prompt Caching (90% Cost Reduction) Core Concepts Context Windows and Token Limits Context window: Maximum tokens an LLM can process in a single request (input + output). Current limits (2025): Claude 3.5 Sonnet: 200K tokens (~150K words, ~600 pages) GPT 4 Turbo: 128K tokens (~96K words, ~384 pages) Gemini 1.5 Pro: 2M tokens (~1.5M words, ~6000 pages) Token estimation: English: ~4 characters per token Code: ~3 characters per token Rule of thumb: 1 token ≈ 0.75 words Why compression matters: Cost: Claude Sonnet costs $3/$15 per 1M input/output tokens Latency: Larger contexts increase processing time Quality: Excessive context can dilute attention on relevant information Compression Ratios Compression ratio = Original tokens / Compressed tokens Industry benchmarks: Extractive summarization: 2 3x Abstractive summarization: 5 10x Hierarchical summarization: 20x+ LLMLingua (prompt compression): 20x with 1.5% accuracy loss KVzip (KV cache compression): 3 4x with 2x speed improvement Target ratios by use case: Customer support: 5 7x (preserve details) General chat: 8 12x (balance quality/efficiency) Code assistants: 3 5x (preserve technical accuracy) Long documents: 15 20x (extract key insights) Progressive Compression Thresholds Industry standard pattern: Implementation guidelines: 70% threshold: Remove duplicate/redundant messages, semantic deduplication 85% threshold: Summarize messages older than 20 turns, keep recent 10 15 95% threshold: Multi level hierarchical summarization + vector store archival Emergency (100%): Drop least important messages, aggressive summarization Compression Techniques 1. Summarization Techniques 1.1 Extractive Summarization Selects key sentences/phrases without modification. Pros: No hallucination, fast, deterministic Cons: Limited compression (2 3x), may feel disjointed Best for: Legal/compliance, short term compression 1.2 Abstractive Summarization Uses LLMs to semantically condense conversation history. Pros: Higher compression (5 10x), coherent, synthesizes information Cons: Risk of hallucination, higher cost, less deterministic Best for: General chat, customer support, multi session continuity 1.3 Hierarchical Summarization (Multi Level) Creates summaries of summaries in a tree structure. Pros: Extreme compression (20x+), handles 1M+ token conversations Cons: Complex implementation, multiple LLM calls, information loss accumulates Best for: Long running conversations, multi session applications Architecture: Academic reference: "Recursively Summarizing Enables Long Term Dialogue Memory in Large Language Models" (arXiv:2308.15022) 1.4 Rolling Summarization (Continuous) Continuously compresses conversation with sliding window. Pros: Low latency, predictable token usage, simple Cons: Early details over compressed, no information recovery Best for: Real time chat, streaming conversations 2. Embedding Based Approaches 2.1 RAG (Retrieval Augmented Generation) Store full conversation in vector database, retrieve only relevant chunks. Pros: Extremely scalable, no information loss, high relevance Cons: Requires vector DB infrastructure, retrieval latency Best for: Knowledge bases, customer support with large history Vector database options: ChromaDB: Embedded, easy local development Pinecone: Managed, 50ms p95 latency Weaviate: Open source, hybrid search Qdrant: High performance, payload filtering 2.2 Vector Search and Clustering Group similar messages into clusters, represent with centroids. Pros: Reduces redundancy, identifies themes, multi topic handling Cons: Requires sufficient data, may lose nuances Best for: Multi topic conversations, meeting summaries 2.3 Semantic Deduplication Remove semantically similar messages that convey redundant information. Pros: Reduces redundancy without losing unique content Cons: Requires threshold tuning, O(n²) complexity Best for: FAQ systems, repetitive conversations 3. Token Efficient Strategies 3.1 Message Prioritization Assign importance scores and retain only high priority content. Pros: Retains most important information, flexible criteria Cons: Scoring is heuristic based, may break flow Best for: Mixed importance conversations, filtering noise 3.2 Delta Compression Store only changes between consecutive messages. Pros: Highly efficient for incremental changes Cons: Reconstruction overhead, not suitable for all content Best for: Code assistants with incremental edits 4. LangChain Memory Types 4.1 ConversationSummaryMemory Automatically summarizes conversation as it progresses. Pros: Automatic summarization, simple API Cons: Every turn triggers LLM call Best for: Medium conversations (20 50 turns) 4.2 ConversationSummaryBufferMemory Hybrid: Recent messages verbatim, older summarized. Pros: Best balance of detail and compression Cons: Requires token limit tuning Best for: Most production applications 4.3 ConversationTokenBufferMemory Maintains fixed token budget, drops oldest when exceeded. Pros: Predictable token usage, simple Cons: Loses old information completely Best for: Real time chat with strict limits 4.4 VectorStoreRetrieverMemory Stores all messages in vector database, retrieves relevant ones. Pros: Infinite conversation length, semantic retrieval Cons: Requires vector DB, retrieval overhead Best for: Long running conversations, knowledge bases 5. Anthropic Specific Patterns 5.1 Prompt Caching (90% Cost Reduction) Cache static context to reduce token costs. Cache TTL: 5 minutes Savings: 90% cost reduction for cached tokens Limits: Max 4 cache breakpoints per request Best practices: Cache conversation history, not current query Update cache when context changes significantly Combine with summarization for maximum efficiency 5.2 Extended Thinking for Compression Planning Use extended thinking to plan optimal compression strategy. Production Patterns Checkpointing and Persistence Save compression state for recovery and resume. Resume Workflows Continue conversations across sessions. Hybrid Approaches (Best Practice) Combine multiple techniques for optimal results. Performance Benchmarks Compression Efficiency Technique Compression Ratio Quality Loss Latency Cost Impact Extractive 2 3x <1% <10ms None Abstractive 5 10x 2 5% 1 2s +$0.001/turn Hierarchical 20x+ 5 8% 2 5s +$0.003/turn LLMLingua 20x 1.5% 500ms None RAG Variable <1% 100 300ms +$0.0005/turn Prompt Caching N/A 0% 0ms 90% Token Savings by Use Case Customer Support (50 turn conversation): No compression: ~8,000 tokens/request Rolling summary: ~2,000 tokens/request (75% reduction) Hybrid (RAG + summary): ~1,500 tokens/request (81% reduction) Code Assistant (100 turn session): No compression: ~25,000 tokens/request Hierarchical: ~5,000 tokens/request (80% reduction) Hybrid + caching: ~1,000 tokens/request effective (96% cost reduction) Educational Tutor (multi session): No compression: Would exceed context window RAG + summarization: ~3,000 tokens/request Infinite session length enabled Cost Analysis Example: Claude Sonnet pricing ($3 input, $15 output per 1M tokens) 1,000 conversations, 50 turns each: No compression: Avg 8K tokens/request × 50K requests = 400M tokens Cost: $1,200 With rolling summarization: Avg 2K tokens/request × 50K requests = 100M tokens Summarization overhead: +10M tokens Cost: $330 (72% savings) With hybrid system + caching: First turn: 2K tokens (no cache) Subsequent: 200 tokens effective (90% cache hit) Total: ~15M tokens effective Cost: $45 (96% savings) Tool Recommendations Memory Management Tools Mem0 (Recommended for Production) Best for: Hybrid memory systems with minimal code Features: Automatic hierarchical summarization Built in RAG retrieval Multi user session management Analytics dashboard Pricing: $0.40/1K memory operations Zep Best for: Low latency production deployments Features: <100ms retrieval latency Automatic fact extraction Entity recognition Session management Pricing: Open source (self hosted) or $0.50/1K operations (cloud) ChromaDB Best for: Self hosted vector storage Features: Fully open source Embedded or client server Fast local development Pricing: Free (self hosted) LangChain Best for: Rapid prototyping and experimentation Features: Multiple memory types Framework integration Extensive documentation Pricing: Free (uses your LLM API costs) Compression Libraries LLMLingua Best for: Extreme compression with minimal quality loss Features: 20x compression ratios <2% quality degradation Fast inference (<500ms) Pricing: Free (open source) Use Cases and Patterns Chatbot (Customer Support) Requirements: Multi turn conversations (50 100 turns) Preserve customer context Fast response times Cost efficient Recommended approach: ConversationSummaryBufferMemory (LangChain) 70% threshold: Semantic deduplication 85% threshold: Rolling summarization Prompt caching for frequent patterns Implementation: Code Assistant Requirements: Long development sessions (100+ turns) Preserve technical details Handle large code blocks Track incremental changes Recommended approach: Hierarchical summarization for overall context RAG retrieval for specific code references Delta compression for iterative edits Prompt caching for system prompts Implementation: Educational Tutor Requirements: Multi session tracking Student progress persistence Personalized context retrieval Long term knowledge retention Recommended approach: VectorStoreRetrieverMemory for multi session Fact extraction for student knowledge Progressive compression across sessions Resumable conversations Implementation: