Ctxpact: 로컬 LLM을 위한 컨텍스트 압축 프록시

Ctxpact는 AI 에이전트와 로컬 LLM 사이에 위치하는 경량의 OpenAI 호환 프록시로, 제한된 컨텍스트 윈도우를 가진 모델에 도달하기 전에 과도하게 큰 입력을 지능적으로 압축합니다. 이는 16k 컨텍스트 윈도우만 가진 모델에 100k 이상의 토큰 페이로드를 전송하는 OpenClaw 및 Hermes와 같은 에이전트 워크플로우를 위해 설계되었으며, 여기서 단순 자르기는 중요한 정보를 잃게 됩니다.
작동 방식
이 시스템은 3단계 압축 파이프라인을 사용합니다:
- DCP (동적 컨텍스트 가지치기): 도구 호출을 중복 제거하고, 대체된 파일 쓰기를 제거하며, 오류 스택 추적을 자릅니다. LLM 호출 없이 순수 구조적 처리입니다.
- 요약: 오래된 대화 차례를 제거하고 LLM 생성 요약으로 대체합니다. 최근 차례의 슬라이딩 윈도우는 그대로 유지합니다.
- 추출: 입력이 여전히 너무 큰 경우(예: 110k 소설), 토큰 예산 내에서 가장 관련성 높은 콘텐츠를 추출하기 위해 16가지 추출 전략 중 하나를 사용합니다.
추출 전략
추출 단계는 다음과 같은 16가지 전략을 구현합니다:
- 0 LLM 호출: 임베딩 유사성(ChromaDB), 섹션 헤더, 휴리스틱 키워드 grep, LLMLingua 압축
- 1 LLM 호출: LLM이 검색어를 생성하고, IDF 가중치 단어 수준 매칭으로 컨텍스트를 조립
- 2 LLM 호출 (최고 정확도): readagent — 임베딩 + BM25 + RRF 융합, 이중 LLM 용어 확장, 위치 인식 발췌
- N LLM 호출: 다중 턴 도구 호출 루프, DSPy 코드 생성, 맵-리듀스 청킹
벤치마크 결과
총 331개의 GGUF 모델에 대해 2개 모델(LFM2-8B-A1B 및 Qwen3.5-9B)로 12가지 전략을 테스트했습니다:
- 프랑켄슈타인 테스트: 110k 토큰이 12k 토큰으로 압축, 8개 독해 질문; 8/8 정답, 3회 연속 실행에서 결정적, 0% 변동성
- LoCoMo-MC10: 다중 세션 대화 QA, 10선택, 무작위 기준은 10%; readagent + Qwen3.5-9B는 15/20(75%) 점수
- 종합 성능: readagent + Qwen3.5-9B는 87.5% 달성, rlm + Qwen3.5-9B는 80.0% 달성
주요 발견 사항
- 전략 선택보다 모델 선택이 더 중요: LFM2에서 Qwen3.5로 전환하면 모든 전략이 +25-50% 포인트 향상되었습니다. 중간 전략은 모델만 변경하여 5/8에서 7/8로 향상되었습니다.
- NR-MMLU가 컨텍스트 엔지니어링 성능을 예측: LFM2의 47% NR-MMLU 대 Qwen3.5의 65%는 정확도 차이에 직접 매핑됩니다.
- 2 LLM 추출 호출이 최적점: 0에서 1 호출로 의미 있는 향상; 1에서 2 호출로 최고 정확도 도달. 2 호출 이상에서는 정확도 하락.
- readagent와 rlm은 획기적인 전략: 둘 다 프랑켄슈타인에서 8/8 달성. Q4(아일랜드 질문)를 해결하는 유일한 전략입니다. readagent는 LoCoMo에서 75%로 rlm의 60% 대비 도메인 간 선도.
기술적 세부사항
- 아키텍처: 독립형 프록시(LiteLLM 플러그인 및 사이드카 프로세스 고려) — 획기적인 전략이 파이프라인 중간 LLM 호출 필요
- 구현: 약 11k 줄의 Python, FastAPI 서버, 3개 엔드포인트, OpenAI 호환, 무거운 프레임워크 없음
- 호환성: 모든 llama-server / Ollama / vLLM 백엔드 앞에 바로 배치 가능. API 키 없음, 클라우드 없음, 모든 것이 사용자 하드웨어에서 실행
컨텍스트 윈도우를 초과하는 에이전트 워크플로우로 로컬 LLM을 실행하는 개발자에게 Ctxpact는 하드웨어 제약 내에서 정보 무결성을 유지하면서 실용적인 솔루션을 제공합니다.
📖 전체 Source 읽기: r/LocalLLaMA
👀 See Also

토큰 낭비 없이 클로드 채팅 간 맥락 유지하는 2-프롬프트 시스템
한 개발자가 전체 클로드 대화를 구조화된 컨텍스트 블록으로 압축하고 새 채팅에 로드하여 결정, 작업 및 다음 단계를 보존하는 두 개의 프롬프트를 공유합니다.

클로드 코드의 읽기 도구가 이미지 해상도를 묵시적으로 낮추어 환각을 유발함
Claude Code의 `read` 도구는 모델이 이미지를 보기 전에 조용히 해상도를 낮추어, 스크린샷에서 텍스트를 추출할 때 출력 품질이 저하되고 인식하지 못한 환각 현상이 발생하게 됩니다.

JobPilot: 자동화된 구직 지원을 위한 Claude 코드 플러그인
JobPilot은 Playwright 브라우저 자동화를 사용하여 구직 및 지원 과정을 자동화하는 Claude Code 플러그인입니다. 구직 게시판 검색, 지원서 자동 작성, 자기소개서 생성, 지원 통계 추적 등의 명령어를 포함합니다.

클로드 코드 템플릿을 위한 맞춤형 음성 추출 과정
개발자가 LLM-ism 금지 목록, 반-퍼포먼스 규칙, 형식별 음성 모드를 포함한 510줄의 SKILL.md 파일로 결과를 낸 Claude Code용 맞춤형 음성 스킬을 만들기 위한 3단계 추출 과정을 공유합니다. 이 오픈소스 템플릿은 10개 이상의 글 샘플을 사용하여 모든 언어에서 작동합니다.