当前位置: 首页 > news >正文

如何做网站的滚动图片网站推广软件免费版

如何做网站的滚动图片,网站推广软件免费版,网站建设教程 零基础,西城区网站建设Blog:Routing in RAG-Driven Applications ⭐⭐⭐⭐ 根据用户的查询意图,在 RAG 程序内部使用 “Routing the control flow” 可以帮助我们构建更实用强大的 RAG 程序。路由模块的关键实现就是一个 Router,它根据 user query 的查询意图&…

Blog:Routing in RAG-Driven Applications
⭐⭐⭐⭐

根据用户的查询意图,在 RAG 程序内部使用 “Routing the control flow” 可以帮助我们构建更实用强大的 RAG 程序。路由模块的关键实现就是一个 Router,它根据 user query 的查询意图,来将该请求的处理转发到多个下游 handlers 之一。

1. 不同的应用场景

1.1 路由到 data source

用户想进行交互的数据可能有多种来源,Query Router 可以用于根据 user query 路由到不同的 data source:

20240511194228

1.2 路由到不同的 component

还可以根据问题的性质,将 query 路由到不同的组件类型,比如可能交给 Agent 处理、Vector Store 处理或者直接由 LLM 处理:

20240511194735

1.3 路由到不同的 prompt template

可以根据 question 的不同来定制 prompt template:

20240511194845

1.4 小结

Router 在本质上就是我们可以用于控制 query control flow 的 “if / else” 语句,不过它的特点在于是基于自然语言输入来做出决策

很多 routing 的逻辑都是基于 LLM 或者 ML 算法,这些算法本质上是非确定性的,所以我们无法保证 router 总是能做出 100% 正确的选择。此外,我们也不太可能预测所有进入路由器的不同查询变体。但是,通过采用最佳实践和进行一些测试,我们可以使用路由器来帮助创建更强大的 RAG 应用程序。

2. Natural Language Routers

这里探讨一下由不同的第三方库所实现的 Natural Language Router:

  • LLM Completion Routers
  • LLM Function Calling Routers
  • Semantic Routers
  • Zero Shot Classification Routers
  • Language Classification Routers

2.1 LLM Completion Router

利用 LLM 的 Chat Completion 的功能,以对话的形式要求 LLM 从 prompt 中提供的一组单词或 topics 中选择一个来作为 routing 的结果。如下图的示例程序所示:

1715431892457

这种思路也是 LlamaIndex 的 LLM Selector router 的工作思路。

2.2 LLM Function Calling Router

这种方法利用 LLM 的 Function Calling 能力来选择 routing 的路线结果。在 LLM 函数调用中,将不同的 routing 路线设置为具有相应描述的函数,然后,根据向 LLM 传递的 query,它能够返回正确的函数(即路线)供我们使用。

这是 LlamaIndex 中的 Pydantic Router 的内部工作方式。

2.3 Semantic Router

这种路由器类型利用嵌入式表示和相似度搜索来选择最佳的 routing 方式。

每条路由都有一组与其相关联的示例查询,这些查询会做 embedding 并作为 vector 存储。将新来的 query 也进行 embedding,然后对其他来自 router 中的示例查询进行相似性搜索,与 query 匹配度最相近的 routing 路线将被选中。

Python 库 semantic-router 就实现了这一点,下图是官网的示例:

1715434301179

embedding 模型可以选择 OpenAI 提供的 encoder,其实也可以选用其他的 text embedding 模型。

由此,对于一个 user query,semantic_router 就可以将其分为 politics 或者 chitchat 两者之一的 routing 结果。

2.4 Zero Shot Classification Router

Zero Shot Classification 是 NLP 的一类 task,其中 model 在一组 labeled data 上训练后,能够对来自以前未见过的类的新示例进行分类。

在这里,我们的 router 可以利用 zero-shot classification 的 model 为一段 text 分配一个 label,这个 label 是 router 预先定义的标签集。

Haystack 的 ZeroShotTextRouter 就是利用的 Hugging Face 的 zero shot 分类模型来实现的 routing。

2.5 Language Classification Router

这类 router 可以识别出查询语言的语言种类,并根据语言种类对 query 进行路由。如果您的应用程序需要多语言解析能力,那么这种路由器就非常有用。

比如 Haystack 的 TextClassificationRouter 就是利用了 python 的 langdetect 库实现的检索文本的语言,该库本身使用朴素贝叶斯算法来检测语言种类。

2.6 Keyword Router

LlamaIndex 创始人的文章 Unifying LLM-powered QA Techniques with Routing Abstractions 中就提到了 keyword router,它会尝试通过在查询和路由列表之间匹配关键字来选择路由。

这种关键词路由器可以由LLM(语言模型)或其他关键词匹配库来识别关键词。目前未找到相关实现。

2.7 Logical Routers

这些逻辑检查会针对变量进行,比如字符串长度、文件名以及值的比较等,用于处理如何路由查询。它们与编程中常用的 if/else 条件非常相似。

换句话说,它们不是基于理解自然语言查询的意图,而是基于现有的、离散的变量来做出选择。

比如来自 Haystack 的 ConditionalRouter 和 FileTypeRouter。

3. 结论

router 作为基本的构建块,在 RAG 系统中可以发挥很大的作用,它可以将自然语言请求路由到你的应用程序的正确位置,以便尽可能地满足用户的查询需求。

http://www.ritt.cn/news/15635.html

相关文章:

  • 网站外链要怎么做个人博客搭建
  • 网站建设功能需求表温州seo顾问
  • 企业电子商务网站建设规划爱站网长尾词挖掘工具
  • 网站开发及维护是什么域名访问网站
  • 网站制作怎么创业事件营销案例
  • 做调查问卷能挣钱的网站品牌推广运营策划方案
  • 企业内部网站制作安卓优化大师手机版下载
  • 同江佳木斯网站设计网站优化关键词排名
  • 杭州seo关键词优化公司优化工作流程
  • 大连网站网页设计公司自己怎么做关键词优化
  • 网站制作公司网站建设如何宣传推广自己的产品
  • 做网站SEO用什么电脑方便seo都用在哪些网站
  • 网站有备案是正规的吗郑州网站推广优化公司
  • 虚拟仿真中心 网站建设百度新闻官网
  • 响应式环保网站百度推广seo自学
  • 厦门网站制作策划网络推广的优化服务
  • 厦门市做网站优化中国搜索引擎大全
  • adobeXD做网站店铺100个关键词
  • iis 添加网站百度公司招聘条件
  • 网站开发自我介绍代码营销策划公司取名大全
  • 做的网站里面显示乱码怎么解决方法百度如何精准搜索
  • 网站怎么做谷歌推广产品推广哪个平台好
  • 平面设计可以做网站?宁波免费seo排名优化
  • 上海外贸推广建站我赢网客服系统
  • 整站seo排名公司企业seo服务
  • 前端效果网站东莞网站提升排名
  • 宝安住房和建设局网站电话百度竞价网站
  • 国外做的比较好的购物网站哪里可以引流到精准客户呢
  • 延庆宜昌网站建设seo优化推广工程师
  • 网站设计 网站开发 西安seo关键词优化举例