llama.cpp Massives Prompt-Neuverarbeitung mit Coding-Agents: Debugging von KV-Cache und Kontextaustausch

✍️ OpenClawRadar📅 Veröffentlicht: 14. Mai 2026🔗 Source
llama.cpp Massives Prompt-Neuverarbeitung mit Coding-Agents: Debugging von KV-Cache und Kontextaustausch
Ad

Ein Entwickler auf r/LocalLLaMA hat ein ernstes Performance-Problem mit llama.cpp, wenn er über llama-swap langkontextige Coding-Agenten (opencode + pi.dev) ausführt. Selbst bei sehr ähnlichen Prompts (LCP-Ähnlichkeit oft >0,99) verwirft das System regelmäßig den KV-Cache und verarbeitet über 40k Token neu, was zu einer TTFT von mehreren Minuten führt.

Beobachtetes Verhalten

  • Der Kontext wächst auf über 50k Token an.
  • Nach mehreren normalen Wiederverwendungen (z.B. prompt eval time = 473 ms / 19 tokens) fällt n_past plötzlich auf ~4-5k.
  • llama.cpp verarbeitet dann den gesamten Prompt neu: n_tokens = 4750 prompt eval time = 222411 ms / 44016 tokens.
  • Die Cache-Nutzung erreicht 4676 MiB und überschreitet das konfigurierte Limit (2500 MiB).

Aktuelle Konfiguration

llama-server --ctx-size 150000 --parallel 1 --ctx-checkpoints 32 --cache-ram 2500 --cache-reuse 256 -no-kvu --no-context-shift
Ad

Vermutete Ursachen

  • Cache-Invalidierung aufgrund Überschreitung des --cache-ram-Limits – das Log zeigt 4676 MiB Nutzung vs. 2500 MiB Limit.
  • Schlechter KV-Wiederverwendungsmechanismus, wenn sich frühe Prompt-Token ändern (möglicherweise häufige Änderungen durch opencode).
  • Unzureichende --ctx-checkpoints oder --cache-reuse für die Kontextgröße von 150k.

Empfehlungen aus der Community

Der Thread hat bisher wenige Antworten, aber naheliegende erste Schritte sind, --cache-ram auf die typische Nutzung zu erhöhen (z.B. 5000+ MiB) oder --ctx-size zu reduzieren, um unter dem Cache-Limit zu bleiben. Außerdem sollte geprüft werden, ob opencode absichtlich Prompt-Präfixe ändert; wenn ja, könnte das Fixieren des System-Prompts oder die Verwendung eines festen Präfixes die Wiederverwendung verbessern.

Für Entwickler mit ähnlichen Setups: Teilt eure funktionierenden Konfigurationen im Quellthread.

📖 Lies die vollständige Quelle: r/LocalLLaMA

Ad

👀 Siehe auch

6 Schleifentypen in produktiven KI-Agenten: Eine einwöchige Log-Analyse
Tipps

6 Schleifentypen in produktiven KI-Agenten: Eine einwöchige Log-Analyse

Analyse von 670 Ereignissen aus 5 Produktionsagenten über eine Woche zeigt 6 Loop-Muster mit hohem Schweregrad, darunter Entscheidungsoszillation, Wiederholungsschleifen, Ping-Pong-Schleifen, Recall-Write-Schleifen, Reflexionsschleifen und Tool-Nichtdeterminismus.

OpenClawRadar
Verwenden von Projektberichten zur Verwaltung des Speichers in großen OpenClaw-Projekten
Tipps

Verwenden von Projektberichten zur Verwaltung des Speichers in großen OpenClaw-Projekten

Ein Entwickler beschreibt einen Prozess, bei dem nach jedem wichtigen Meilenstein ein separater OpenClaw-Worker gestartet wird, um die Codebasis zu analysieren und ein 'Projektnarrativ'-Dokument zu erstellen, das dabei hilft, defekte Pipelines, Redundanzen und fehlende Teile zu identifizieren, die der Haupt-Worker möglicherweise übersieht.

OpenClawRadar
Code KI-Bots zum Kämpfen gegen Menschen in einem neuen Multiplayer-Spiel.
Tipps

Code KI-Bots zum Kämpfen gegen Menschen in einem neuen Multiplayer-Spiel.

Ein neues Mehrspieler-Spiel ermöglicht es Spielern, KI-Bots zu programmieren, die gegen menschliche Spieler in Echtzeit antreten, und bietet eine einzigartige Kombination aus Programmier- und Spielherausforderungen.

OpenClawRadar
OpenClaw API Budgetauslauf: Einstellungen, die sofort geändert werden müssen
Tipps

OpenClaw API Budgetauslauf: Einstellungen, die sofort geändert werden müssen

Die standardmäßige Heartbeat-Funktion von OpenClaw kann API-Budgets durch die Überprüfung von Aufgaben alle 30 Minuten und das Laden vollständiger Kontextdateien, des Speichers und des Chat-Verlaufs jedes Mal belasten. Die Quelle empfiehlt, die aktiven Stunden zu ändern, günstigere Basismodelle zu verwenden, manuell nur bei Bedarf auf Premium-Modelle umzuschalten und /new zu verwenden, um Sitzungen zurückzusetzen.

OpenClawRadar