[Paper] 优化 LLM 代码建议:基于反馈的时序与轻量状态界限

发布: (2025年11月24日 GMT+8 15:29)
6 min read
原文: arXiv

Source: arXiv - 2511.18842v1

概览

大型语言模型(LLM)已成为现代代码补全工具的核心,但开发者常常在不合适的时机收到建议——要么打断工作流,要么根本不显示。本文提出了一种基于反馈的时机系统,学习 何时 展示 LLM 生成的代码片段,减少无效的推理调用,并在真实开发环境中提升接受率。

主要贡献

  • 自适应时机算法:根据开发者近期的接受/拒绝行为动态调整建议的延迟。
  • 轻量级状态估计器:二元预测器,用于判断开发者的认知 “准备度”,在不进行重度仪器化的情况下限定延迟范围。
  • 接受率的 Logistic 转换:将近期反馈平滑映射为延迟决策。
  • 实地研究:对专业开发者进行为期两个月的实验,展示了建议接受率提升 3 倍,且不必要的推理调用减少 75 %。
  • 开源参考实现(足够轻量,可嵌入现有 IDE 插件)。

方法论

  1. 反馈循环 – 每次展示建议时,系统记录开发者是接受、阅读后拒绝,还是根本未看到(盲目拒绝)。
  2. 状态界定 – 使用简单的二元分类器(基于光标活动、打字速度、近期 IDE 事件等轻量信号)预测开发者是否 “认知准备好”。该预测上限最大延迟。
  3. Logistic 延迟映射 – 将近期接受率输入 Logistic 函数,得到平滑的概率曲线,再映射为具体延迟(例如 200 ms – 2 s)。接受率越高,延迟越低,建议出现得更快。
  4. 部署 – 算法在 IDE 插件内部运行,在每次向 LLM 发起推理请求前调整延迟。无需重型剖析或服务器端改动。
  5. 评估 – 两个月期间,作者比较了三种配置:(a) 无延迟,(b) 固定延迟(500 ms),以及 (c) 自适应时机系统。指标包括建议接受率、盲目拒绝率和总推理调用次数。

结果与发现

配置接受率盲目拒绝率节省的推理调用
无延迟4.9 %8.3 %
固定延迟15.4 %2.1 %~45 %
自适应时机(本工作)18.6 %0.36 %≈75 %
  • 更高的接受率:自适应时机将建议推送到开发者更易接受的时刻,使接受率从不足 5 % 提升至接近 19 %。
  • 盲目拒绝大幅下降:通过在开发者可能注意到的时机才展示建议,系统将未读的拒绝率降低了超过 20 倍。
  • 成本效率:每次 LLM 推理都可能代价高昂(尤其是大模型),75 % 的无效调用削减直接转化为更低的云费用和更快的 IDE 响应。

实际意义

  • IDE 插件开发者 – 自适应时机逻辑可轻松嵌入现有自动补全扩展,提升用户体验而无需重新设计底层 LLM。
  • 企业工具 – 托管内部 LLM 服务的公司可通过避免不必要的推理调用立即节省成本,尤其在大团队中自动补全流量高的情况下。
  • 开发者生产力 – 更少的中断和更相关的建议意味着更顺畅的编码过程,可能降低上下文切换带来的疲劳。
  • LLM 服务提供商 – 将 “智能时机” 作为服务端特性推出,可成为差异化竞争点,让提供商在按调用计费的模型上仍能为客户提供更高 ROI。

局限性与未来工作

  • 二元认知状态 – 当前预测器仅区分 “准备好” 与 “未准备好”,可能过于简化开发者的细微状态。
  • 信号集合 – 模型依赖通用 IDE 事件;更丰富的遥测(如眼动追踪、语音指令)或能提升准确性,但也会带来隐私顾虑。
  • 可推广性 – 实地研究聚焦于特定的专业开发者和语言;需要在更广泛的技术栈上进行验证。
  • 模型无关性 – 虽然方法轻量,但在极低延迟的本地 LLM 上集成可能需要进一步调优延迟界限。

未来研究可探索多类别认知建模、加入用户可自定义的时机偏好,并评估对代码质量和开发者满意度的长期影响。

作者

  • Mohammad Nour Al Awad
  • Sergey Ivanov
  • Olga Tikhonova

论文信息

  • arXiv ID: 2511.18842v1
  • 分类: cs.SE, cs.AI, cs.HC
  • 发布日期: 2025 年 11 月 24 日
  • PDF: Download PDF
Back to Blog

相关文章

阅读更多 »