يوجد خطأ في دالة `generate()` الخاصة بـ Hugging Face يؤدي إلى مخرجات غير صحيحة عندما يكون `past_key_values` عبارة عن `DynamicCache` تم بناؤه خارجيًا. تؤثر هذه المشكلة على طرق ضغط ذاكرة التخزين المؤقت KV مثل SnapKV وH2O وKIVI التي تعيد بناء الذاكرة من بيانات prefill. السبب الجذري هو فشل في نشر السياق الموضعي، مما أدى إلى فقدان الدقة بنسبة 10.7 نقطة مئوية على Qwen3-VL-8B.
- إضافة فئة الطريقة `DynamicCache.from_kv_tensors()` لإعادة بناء الذاكرة بأمان مع الحالة الداخلية الصحيحة.
- اشتراط وجود `attention_mask` و`position_ids` صريحة أثناء التوليد لاستعادة الجودة الأساسية.
- تخصص الطريقة الجديدة قوائم داخلية مسبقًا عبر معلمة اختيارية `num_hidden_layers` للتوافق العكسي.
يضمن هذا الإصلاح أن تعمل سير عمل ضغط KV بإنتاج مخرجات موثوقة من خلال التعامل بشكل صحيح مع طول التسلسل وأقنعة الانتباه.