设想这样一个搜索相关性模型:用一个 0.5B 量级的小模型,把 item 和 query 拼成一条序列送进去,取最后一个 EOS 位置的隐状态,接一个 MLP 做相关性分档。item 侧拼着标题、属性、详情,动辄上千个 token;query 侧只有几十个。同一条 item 会在许多不同的 query 下被召回,每一次都要连同 query 从头算一遍。于是我们自然会想,能不能把 item 预先压成一小段 KV 存下来,在线只让 query 对着这段 KV 做注意力,把 item 那上千个位置从在线计算里拿掉。
这个想法与 gisting 很接近(Learning to Compress Prompts with Gist Tokens,Jesse Mu、Xiang Lisa Li、Noah Goodman,NeurIPS 2023)。此篇前半讲这篇论文做了什么,后半讨论把它搬到相关性任务上以后,哪些地方成立,哪些地方要改,哪些地方搬不过去。