链载Ai

标题: 必读!RAG好用的3种Router [打印本页]

作者: 链载Ai    时间: 11 小时前
标题: 必读!RAG好用的3种Router

本公众号主要关注NLP、CV、LLM、RAG、Agent等AI前沿技术,免费分享业界实战案例与课程,助力您全面拥抱AIGC。



目前开源了很多LLMs大模,虽然GPT4o一直占据第一位的宝座,但是并不是在每个领域都很强。

例如:写代码的Code-LM、做数学的meta-math,做图文多模态的Macaw-llm等等。都有自己的强项。

PolyRouter提供了一个多LLM路由系统,该系统根据特定需求动态将查询路由到最合适的专家,从而优化性能,减少响应时间和成本,同时提高输出质量。

PolyRouter 解决的问题

PolyRouter与Moe的区别

PolyRouter 提出的路由方案

  1. 随机路由器(Random-Router):该方法随机选择一个专家模型来执行每个测试查询。它重复此过程多次,并根据各种指标评估性能。

  2. kNN路由器(kNN-Router):kNN路由器使用句子变换器对训练查询进行编码,并根据余弦相似度找到与测试查询最接近的训练查询。然后,它选择在最相关的训练查询中表现最佳的专家模型来执行测试查询。

  3. BERT路由器(BERT-Router):该方法在各种评估标准下优于所有其他专家模型和路由方法。它根据特定需求动态将查询路由到最合适的专家,从而优化性能,减少响应时间和成本,同时提高输出质量。

如何训练好一个PolyRouter

第一阶段:准备router数据

  1. 选择专家模型及数据集:首先,需要找到适合特定领域(如生物、编程、物理科学)的指令数据集和模型专家,以便路由模型学习传播相关的查询提示。

  2. 前向传播与收集指标

  1. 生成软标签
  1. 通过softmax函数生成软标签
  1. 参数设置:在评估中,基于BERT相似度分数生成专家的软标签,并设置温度值T=10。

该过程有助于为路由模型准备合适的输入数据,以提高其预测准确性和效率。

第二阶段:训练router

  1. 向量化表示:将指令记录通过路由器的嵌入模型(如Bag-of-Words、TF-IDF、BERT或其他语言模型)进行处理,以生成它们的向量化表示(步骤5)。

  2. 训练分类器:使用生成的嵌入训练提示到专家的分类器(步骤6)。这可以通过非参数的监督学习方法(例如kNN)、经典深度学习模型(例如多层感知器MLP)或更高级的语言序列预训练模型(如BERT)来实现。

第三阶段:Router的应用

  1. 查询处理
  1. 专家模型选择:根据分类模型的预测结果,路由器选择相应的专家提示适配器,提交并执行查询。

  2. 查询响应:查询执行完成后,路由器接收来自专家模型的回复,并将其转发给最终用户(步骤10)。

  3. 监控与调优:在路由器的部署期间,平台提供必要的监控能力,用于排查问题和调整路由模型,例如请求数量、查询的语义上下文、专家模型的命中频率以及总体成本等。






欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5