장기 세션에서 OpenClaw 느려짐 수정: llama.cpp 캐시에 대한 contextInjection continuation-skip

자체 호스팅 OpenClaw와 llama.cpp를 사용할 때 세션이 90k 토큰을 넘어가면서 점점 느려진다면, 원인은 매 턴마다 프롬프트 캐시를 조용히 무효화하는 단일 OpenClaw 설정일 수 있습니다. r/openclaw의 한 사용자가 문제를 추적하고 간단한 해결책을 찾았습니다.
환경 설정
- 듀얼 RTX 3090에서 Qwen3.6-27B-Q8_0 (텐서 병렬)
- llama-server:
--cache-prompt,--ctx-size 400000,--parallel 2 - LAN을 통해 연결된 OpenClaw
증상
llama-server 로그에 매 턴마다 다음과 같이 표시되었습니다:
forcing full prompt re-processing due to lack of cache data
erased invalidated context checkpoint (pos_min = 57172)
erased invalidated context checkpoint (pos_min = 60139)
erased invalidated context checkpoint (pos_min = 91076)
prompt eval time = 130511 ms / 91403 tokens매 턴마다 91k 토큰을 처음부터 다시 처리 — 130초. 캐시는 활성화되어 있고 체크포인트는 존재했지만, llama.cpp는 일치하는 항목을 찾지 못해 전체 재처리로 대체되었습니다.
근본 원인
OpenClaw의 설정 contextInjection (기본값 always)은 모든 워크스페이스 부트스트랩 파일(AGENTS.md, SOUL.md, USER.md, TOOLS.md, MEMORY.md, HEARTBEAT.md, ~15kb)을 연속 턴을 포함한 모든 턴의 시스템 프롬프트에 다시 주입합니다. 이로 인해 토큰 시퀀스가 변경되어 정확한 접두사 일치에 의존하는 llama.cpp의 프롬프트 캐시를 재사용할 수 없게 됩니다.
해결책
openclaw config set agents.defaults.contextInjection continuation-skip --merge그런 다음 게이트웨이를 재시작하세요. continuation-skip은 연속 턴이 아닌 새 사용자 메시지에서만 부트스트랩 파일을 주입하여 프롬프트를 안정적으로 유지하고 캐시를 유효하게 만듭니다.
결과
전: 턴당 91,403 토큰 재처리, 130초 프롬프트 평가, 캐시 재사용 0%, 답변당 2분 이상.
후: 턴당 513 새 토큰, 1.3초 프롬프트 평가, 캐시 재사용 99.7%, 답변당 약 5초. 100배 더 빠름.
진단 방법
ssh your-server "journalctl -u llama.service --no-pager -n 50 | grep -iE 'cache|re-process|checkpoint'"캐시 손상 신호: forcing full prompt re-processing due to lack of cache data, erased invalidated context checkpoint 반복, 프롬프트 처리 30초 초과. 건강한 캐시 신호: restored context checkpoint, f_keep = 0.99+, graphs reused = 큰 숫자, 프롬프트 처리 5초 미만.
또한 추가 개선을 위해 --ctx-size를 400k(세션당 200k)로, OpenClaw contextTokens를 200k로, memoryFlush.softThresholdTokens를 30k에서 10k로 조정하세요.
📖 전체 소스 읽기: r/openclaw
👀 See Also

AI 에이전트 용어 실용 용어집 (하네스, 스캐폴드, 에이전트 등)
허깅페이스 블로그에서 AI 에이전트 용어(하니스, 스캐폴드, 에이전트 등)를 간단한 정의와 실제 예시로 설명한 용어집입니다.

Dev 채널을 통해 OpenClaw에서 GPT-5.4를 조기에 이용하는 방법
OpenClaw 개발 채널은 현재 안정 버전 출시 전에 GPT-5.4에 접근할 수 있는 방법을 제공합니다. 사용자는 특정 명령어를 사용하여 게이트웨이를 개발 채널로 전환한 후 재시작해야 모델 목록에서 확인할 수 있습니다.

로컬에서 llama.cpp 구성 세부 정보로 OmniCoder-9B 실행하기
개발자가 중급 사양 하드웨어에서 특정 llama.cpp 플래그(체인 오브 씽킹 출력을 비활성화하는 --reasoning-budget 0 포함)를 사용해 OmniCoder-9B로 HumanEval 평균 96.7% 점수를 달성했습니다. 이 설정은 Q6_K 양자화 모델을 RTX 3080(10GB VRAM)에서 실행했습니다.

신입 엔지니어가 AI로 성공하는 7가지 방법: 기본기 숙달, AI와 협업, 종단간 프로젝트 구축
IEEE Spectrum의 Lokesh Lagudu가 AI 시대에 새로 진입한 엔지니어를 위한 7가지 실용적인 조언을 제공합니다. 기본기, AI 협업, 프로젝트 기반 학습을 강조합니다.