로컬 BERT를 사용해 LLM 컨텍스트를 90% 압축하기 (Rust로 구현)
Using local BERT to compress LLM context by 90% (Built in Rust)
핵심 요약
로컬 BERT 모델을 활용해 LLM 입력 컨텍스트를 효율적으로 압축하여 토큰 비용과 속도를 개선하는 도구 'PandaFilter' 소개.
- PandaFilter 도구 — 로컬 BERT 모델을 사용하여 LLM 컨텍스트를 최대 99%까지 압축함.
- Rust 기반 구현 — 성능과 안전성을 위해 100% Rust 언어로 개발됨.
- 결정론적 필터링 — BERT 모델 사용 전 단계에서 정규식과 규칙 기반의 결정론적 필터링을 우선 적용함.
- 다양한 도구 연동 — Claude Code, Cursor, Windsurf 등 주요 AI 코딩 도구와 쉽게 연동 가능함.
컨텍스트 윈도우를 '브루트 포스'로 밀어넣는 건 비용도 많이 들고 느려. 그래서 이 문제를 근본적으로 해결하기 위해 PandaFilter라는 도구를 만들었어.
원시 셸 출력을 LLM에 그대로 쏟아붓는 대신, PandaFilter가 이를 가로채서 로컬 BERT 모델(~90MB)을 사용해 의미론적 압축을 수행해.
기술 스택:
•언어: 성능과 안전성을 위해 100% Rust 사용.
•모델: HuggingFace를 통해 로컬에서 실행되는 all-MiniLM-L6-v2 (BERT).
•로직: 필터링, 중복 제거, 구조적 매핑을 위한 8단계 DSL.
주요 결과:
•pip install: 1,787 토큰 → 9 토큰 (-99%)
•cargo build: 1,923 토큰 → 93 토큰 (-95%)
•git diff: 6,370 토큰 → 861 토큰 (-86%)
panda init 한 번이면 Claude Code, Cursor, Windsurf 등과 바로 연동돼.
커뮤니티에 질문: 다들 긴 에이전트 세션에서 컨텍스트 압력을 어떻게 처리하고 있어? 혹시 전처리용으로 로컬 SLM이나 BERT를 실험 중인 사람 있어?

