PaSa:用双代理架构实现论文交互式检索
详解字节跳动PaSa系统如何通过Crawler与Selector双代理架构,将静态论文库转化为支持对话式深度检索的AI交互代理。
学术研究正面临信息过载的困境:面对海量论文,研究者往往耗费数小时仍难以精准定位相关文献。传统搜索引擎虽能返回关键词匹配结果,却无法理解复杂学术语义,更缺乏主动追踪引文网络、评估论文相关性的能力。PaSa系统的出现,标志着学术检索从“被动索引”迈向“主动代理”的关键转折——它不再只是工具,而是能与用户对话、自主决策、持续优化的AI研究助手。
PaSa的核心创新在于其双代理协同架构:Crawler代理负责广度探索,Selector代理专注深度筛选。当用户输入如“非平稳强化学习中基于UCB的价值方法有哪些?”这类复杂查询时,Crawler首先自主生成多组搜索关键词,调用学术搜索引擎获取初步结果集,并主动追踪高相关论文的参考文献与被引文献,构建引文网络图谱。这一过程模拟了人类研究者“顺藤摸瓜”的文献追溯行为,确保覆盖长尾知识。随后,Selector代理对Crawler收集的每篇论文进行精读,评估其与原始查询的语义相关性,最终输出高精度排序列表。这种分工明确的流水线设计,既避免了单一代理决策负担过重,又通过专业化分工提升了整体效率。
为训练这一复杂系统,PaSa团队构建了两个关键数据集:AutoScholarQuery与RealScholarQuery。前者包含35,000条细粒度合成查询,覆盖顶级AI会议论文,用于强化学习预训练;后者收集真实世界学者提出的复杂学术问题,作为最终性能评估基准。训练采用近端策略优化(PPO)算法,让代理在模拟环境中不断试错,学习最优的搜索路径与筛选策略。值得注意的是,尽管训练数据为合成生成,PaSa在真实场景中的表现却远超预期:其7B参数版本在RealScholarQuery基准上,recall@50指标比Google Scholar高出39.90%,甚至超越了基于GPT-4o提示构建的基线系统。这一结果证明,精心设计的代理架构与训练机制,比单纯依赖大模型规模更能解决垂直领域问题。
对于希望部署类似系统的团队,以下是关键落地参数与操作清单:
- 架构选型:必须分离“探索”与“评估”职能。Crawler需集成至少两个搜索引擎API(如Semantic Scholar、arXiv API),并实现引文爬取模块;Selector需配备轻量级论文解析器(提取标题、摘要、引言、结论)与相关性打分模型(可基于Sentence-BERT微调)。
- 训练数据:若缺乏真实查询,可先构建合成数据集:从领域顶会论文中抽取“方法-问题-结论”三元组,反向生成查询语句。数据规模建议不低于10,000条。
- 强化学习配置:奖励函数需多维度设计——不仅考虑最终召回率,还需惩罚无效搜索次数(如返回0结果的查询)与过度扩展(引文深度超过3层)。初始学习率设为1e-5,采用分层衰减策略。
- 性能监控:上线后必须跟踪三个核心指标:平均查询耗时(目标<15秒)、单次查询API调用次数(目标<8次)、用户首轮点击率(目标>65%)。若点击率低于阈值,触发Selector模型再训练。
- 回滚策略:当新版本recall@20下降超过5%时,自动回滚至上一稳定版本,并冻结Crawler的关键词生成模块,改用人工审核的固定词表。
当前PaSa仍存在明显局限:仅支持英文查询,且在计算机科学以外领域性能显著下降。但其开源代码(github.com/bytedance/pasa)与数据集为后续改进提供了坚实基础。未来方向包括:引入多语言嵌入模型扩展语种支持,集成领域适配器(Domain Adapter)提升跨学科泛化能力,以及增加用户反馈循环——允许研究者对检索结果打分,使代理能动态调整筛选策略。正如论文所述:“PaSa can autonomously make a series of decisions... to ultimately obtain comprehensive and accurate results for complex scholar queries.” 这一愿景的实现,将彻底改变学术研究的工作流,让每位研究者都拥有专属的AI文献助理。