{
  "schema_version": 1,
  "builder_plan": {
    "scenario": "Long customer conversations exhaust memory or limit concurrent requests.",
    "change": "Change only the attention cache policy, after checking model and runtime support.",
    "baseline": "The same model with its ordinary attention cache.",
    "steps": [
      "Locate the paper's implementation and check its license, model support, data needs, and hardware requirements. Stop here if you cannot obtain the required artifacts.",
      "Save a small set of representative product tasks and expected outcomes. Keep evaluation tasks out of any training or tuning, and choose quality and cost limits before running.",
      "Run the baseline and the proposed change on identical inputs. Keep other settings fixed and repeat paired runs to expose variation.",
      "Save per-task outputs, failures, timings, and all usage costs. Review regressions before expanding the test."
    ],
    "measure": "Peak cache memory, long-context answer quality, first-token latency, and requests completed.",
    "decision": "Keep the change only if it meets your preselected quality and latency limits and improves the metric you care about after setup and operating costs. Otherwise retain the baseline. This is an exploration plan, not a validated recommendation."
  },
  "builder_review": null,
  "arxiv_id": "2609.04263",
  "title": "Quality Recovery for Quantized KV Caches via Low-Rank Attention Adaptation",
  "summary": "The method replaces retraining or changing the KV-cache quantizer with distillation of the floating-point-cache model into low-rank Q/K/V projection updates, applied while the student runs a physically packed low-bit incremental cache. It costs an offline distillation run per model-quantizer pair, a small low-rank parameter overhead in the projections, and the validation effort needed to select ranks and runs. Perplexity recovery does not guarantee long-context retrieval recovery: the paper shows perplexity nearly restored at 2-bit while associative retrieval remains almost entirely broken, so quality must be validated on retrieval-style workloads, not perplexity alone.",
  "rationale": "The reader can plausibly run this on a single 24 GB GPU for small models, but gains are model- and quantizer-dependent (37.61% to 75.96% gap recovery) and the perplexity-retrieval disconnect requires workload-specific validation before production adoption.",
  "technique": "Low-rank Q/K/V adaptation for quantized KV caches",
  "family": "cache_kv",
  "recommendation": "testar",
  "published": "2026-09-02",
  "as_of": "2026-10-18",
  "editorial_status": "indexed",
  "source_url": "https://arxiv.org/abs/2609.04263",
  "independent_implementations": 0,
  "total_implementations": 0,
  "stars": 0,
  "citations": 0,
  "claims": [
    {
      "claim_id": "claim-01",
      "statement": "The method replaces retraining or changing the KV-cache quantizer with distillation of the floating-point-cache model into low-rank Q/K/V projection updates, applied while the student runs a physically packed low-bit incremental cache. It costs an offline distillation run per model-quantizer pair, a small low-rank parameter overhead in the projections, and the validation effort needed to select ranks and runs. Perplexity recovery does not guarantee long-context retrieval recovery: the paper shows perplexity nearly restored at 2-bit while associative retrieval remains almost entirely broken, so quality must be validated on retrieval-style workloads, not perplexity alone.",
      "basis": "inferred",
      "result": "",
      "baseline": "",
      "conditions": "",
      "source_url": "https://arxiv.org/abs/2609.04263",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "claim_id": "claim-02",
      "statement": "4-bit cache adapters recover 54.24%±2.47% of the held-out perplexity gap on TinyLlama-1.1B and 75.96%±4.04% on Gemma-4-12B; 2-bit perplexity drops from 576.10 to 11.40 but only 11-12 of 180 retrieval cases are restored.",
      "basis": "inferred",
      "result": "",
      "baseline": "",
      "conditions": "",
      "source_url": "https://arxiv.org/abs/2609.04263",
      "source_page": null,
      "source_excerpt": ""
    }
  ],
  "exposure_map": [
    {
      "dimension": "quality",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "compute",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "latency",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "operations",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "compatibility",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "security",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "data_and_training",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    },
    {
      "dimension": "reproducibility",
      "basis": "not_evaluated",
      "finding": "",
      "interpretation": "",
      "limitation": "",
      "next_check": "",
      "source_url": "",
      "source_page": null,
      "source_excerpt": ""
    }
  ],
  "risks": [],
  "minimum_test": [],
  "open_questions": [],
  "independent_tests": [],
  "lab_reproductions": [],
  "report_available": false,
  "validation_tier": "unknown",
  "evidence_tier": "unknown",
  "infrastructure_basis": "unknown",
  "equations": [
    {
      "anchor": "S3.E2",
      "label": "(2)",
      "section": "3 Method",
      "role": "baseline",
      "latex": "W^{\\prime}=W+\\frac{\\alpha}{r}BA,",
      "mathml": "<math display=\"block\"><mrow><mrow><msup><mi>W</mi><mo>′</mo></msup><mo>=</mo><mrow><mi>W</mi><mo>+</mo><mrow><mfrac><mi>α</mi><mi>r</mi></mfrac><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>B</mi><mo lspace=\"0em\" rspace=\"0em\">​</mo><mi>A</mi></mrow></mrow></mrow><mo>,</mo></mrow></math>",
      "context": "For a selected projection <math display=\"inline\"><mrow><mi>W</mi><mo>∈</mo><mrow><mo stretchy=\"false\">{</mo><msub><mi>W</mi><mi>Q</mi></msub><mo>,</mo><msub><mi>W</mi><mi>K</mi></msub><mo>,</mo><msub><mi>W</mi><mi>V</mi></msub><mo stretchy=\"false\">}</mo></mrow></mrow></math>, we train",
      "headline": "",
      "explanation": "",
      "objective": "",
      "symbols": {},
      "evidence": "",
      "evidence_url": "",
      "source_url": ""
    },
    {
      "anchor": "S3.E4",
      "label": "(4)",
      "section": "3 Method",
      "role": "loss",
      "latex": "\\mathcal{L}(x)=\\mathrm{KL}\\!\\left(p_{\\mathrm{float}}(\\cdot\\mid x)\\;\\|\\;p_{\\mathrm{packed}}(\\cdot\\mid x;A,B)\\right).",
      "mathml": "<math display=\"block\"><mrow><mi>ℒ</mi><mrow><mo stretchy=\"false\">(</mo><mi>x</mi><mo stretchy=\"false\">)</mo></mrow><mo>=</mo><mpadded width=\"1.431em\"><mi>KL</mi></mpadded><mrow><mo>(</mo><msub><mi>p</mi><mi>float</mi></msub><mrow><mo stretchy=\"false\">(</mo><mo lspace=\"0em\" rspace=\"0em\">⋅</mo><mo lspace=\"0em\" rspace=\"0.167em\">∣</mo><mi>x</mi><mo stretchy=\"false\">)</mo></mrow><mo rspace=\"0.447em\">∥</mo><msub><mi>p</mi><mi>packed</mi></msub><mrow><mo stretchy=\"false\">(</mo><mo lspace=\"0em\" rspace=\"0em\">⋅</mo><mo lspace=\"0em\" rspace=\"0.167em\">∣</mo><mi>x</mi><mo>;</mo><mi>A</mi><mo>,</mo><mi>B</mi><mo stretchy=\"false\">)</mo></mrow><mo>)</mo></mrow><mo lspace=\"0em\">.</mo></mrow></math>",
      "context": "For calibration sequence <math display=\"inline\"><mi>x</mi></math>, the teacher disables adapters and uses no quantized cache. The student enables adapters and the packed cache. We minimize",
      "headline": "",
      "explanation": "",
      "objective": "",
      "symbols": {},
      "evidence": "",
      "evidence_url": "",
      "source_url": ""
    },
    {
      "anchor": "S4.E6",
      "label": "(6)",
      "section": "4 Experimental Protocol",
      "role": "metric",
      "latex": "R=100\\frac{P_{q}-P_{a}}{P_{q}-P_{f}}.",
      "mathml": "<math display=\"block\"><mrow><mrow><mi>R</mi><mo>=</mo><mrow><mn>100</mn><mo lspace=\"0em\" rspace=\"0em\">​</mo><mfrac><mrow><msub><mi>P</mi><mi>q</mi></msub><mo>−</mo><msub><mi>P</mi><mi>a</mi></msub></mrow><mrow><msub><mi>P</mi><mi>q</mi></msub><mo>−</mo><msub><mi>P</mi><mi>f</mi></msub></mrow></mfrac></mrow></mrow><mo lspace=\"0em\">.</mo></mrow></math>",
      "context": "Let <math display=\"inline\"><msub><mi>P</mi><mi>f</mi></msub></math>, <math display=\"inline\"><msub><mi>P</mi><mi>q</mi></msub></math>, and <math display=\"inline\"><msub><mi>P</mi><mi>a</mi></msub></math> denote floating-cache, unadapted packed-cache, and adapted packed-cache perplexity. We report",
      "headline": "",
      "explanation": "",
      "objective": "",
      "symbols": {},
      "evidence": "",
      "evidence_url": "",
      "source_url": ""
    }
  ],
  "equations_status": "selected",
  "core_kind": "formula",
  "equations_fetched_at": "2026-09-25",
  "equations_source_url": "",
  "equations_source_sha256": "",
  "exposures_reviewed_at": "",
  "exposures_source_sha256": ""
}