一个新的开源项目,DeepRetrieval
咋把RL的思路用到搜索上呢?
这个工作做的有点曲折。
让LLM对query改写,用改写的query去搜索知识库,比较检索到的doc与真实doc的相似度,并赋予Reward。
相当于使用DeepRetrieval的核心还是用RL来训练LLM去改写Query,并通过搜索的相似性来优化模型的训练。
那为什么不直接去RL训练向量模型呢?
拍脑袋可能有几方面原因
- 很多知名的向量模型如,老版BGE系列,是非decoder模型架构。
- 基于生成式模型的向量模型,使用的last_token的向量,继续改造成思考+last token向量的模式,会更麻烦一些,基础部分的向量能力几乎要重新训练。
这种reward很好指定,根据相似度划分不同区间
训练起来没啥太大问题,但是实验对比不是很充分~