chopratejas
|
7c2c55abc0
|
Add Compression Hooks — extension points for SaaS and advanced customization
Three hooks at well-defined pipeline stages:
1. pre_compress(messages, ctx) → messages
Modify messages before compression: cross-turn dedup, memory injection.
2. compute_biases(messages, ctx) → dict[int, float]
Per-message compression bias: position-aware, phase-aware, learned.
3. post_compress(event) → None
Observe results: failure-driven learning, analytics, A/B testing.
- headroom/hooks.py: CompressionHooks, CompressContext, CompressEvent
- ProxyConfig.hooks: optional, default None (zero overhead)
- Wired into Anthropic and OpenAI handlers
- ContentRouter reads hook biases, multiplies with tool bias
- 11 tests
|
2026-02-19 08:17:30 -08:00 |
|