本文研究代码大语言模型(Code LLM)在提示词扰动下的安全性与功能性之间的信息论权衡。作者将代码补全任务建模为从自然语言提示到代码输出的映射过程,提出了容量(Cap)和安全性(Sec)两个信息论量:Cap衡量生成代码与理想正确代码之间的互信息,即模型的功能容量;Sec衡量扰动提示下生成代码与原始提示下生成代码之间的互信息,即扰动保留量。文中证明了Cap + Sec ≤ H(c^*) + I(p; ̃p)的理论上界,其中H(c^*)是任务熵,I(p; ̃p)是提示扰动引入的泄漏。通过确定性嵌入推论得到了隐藏状态版本,并利用tokenizer/gzip边界给出了模型无关的任务熵上限。实验部分,作者在两个模型(CodeLlama和Qwen)、两个数据集(HumanEval和MBPP)、两种精度(INT4/BF16)以及多种估计器消融下,验证了嵌入检查不等式成立,饱和度为0.27-0.92,定理松弛为2.36-26.94 nats。此外,提出了上下文混合余弦相似度作为生成-提示对齐信号,与pass@1具有显著相关性(如CodeLlama-HumanEval中ρ=0.36, p<0.0001)。自适应压力测试(包括23种扰动池、固定通用后缀和提示嵌入PGD)均留下正松弛,表明当前模型远未达到理论安全预算上限。本文为评估和提升代码LLM对提示扰动的鲁棒性提供了理论框架。
💡 推荐理由: 该研究从信息论角度量化了代码LLM在功能与安全性之间的根本权衡,为理解提示注入等攻击提供了理论基础,并给出了模型无关的安全预算上限,有助于设计更鲁棒的代码生成系统。
🎯 建议动作: 研究跟进