星环科技分布式向量数据库Transwarp Hippo自发布已来,受到了众多用户的欢迎,帮助用户实现向量数据的存储、管理和检索,探索和实践大模型场景。
Transwarp Hippo支持存储、索引以及管理海量的向量式数据集,具备高可用、高性能、易拓展等特点,能够高效地解决向量相似度检索、高密度向量聚类等问题,满足文本/语音/图像/视频检索、个性化推荐、智能问答等场景。同时,Hippo可扩展大模型的时间与空间边界,联合星环分布式图数据库、知识图谱,帮助用户高效、低成本地构建行业领域的大模型应用,激发出更多更深入的业务场景。
本文将主要介绍Hippo的混合检索特性,即一套系统支持向量与全文联合检索,提高文本数据的召回精度,从而提升大语言模型应用的准确率。
一库搞定向量+全文联合检索|提升大模型准确率
在大语言模型应用中,向量数据库作为中间载体,可以有效地解决大模型在知识时效性低、输入能力有限、准确度低等问题,赋予大模型拥有“长期记忆”。
因此,向量数据库的召回精度直接影响大模型输出结果的准确率。然而,在一些实践场景中,对于向量数据库本身而言,单一使用向量检索会产生召回准确率不高的问题:
- 对噪声和冗余信息敏感:若向量数据库中存在大量的噪声和冗余信息,则检索的准确率会降低;
- 对特征选择的依赖:在向量检索中,需要对数据进行特征提取和选择,若特征选择不当,则会影响检索的准确性;
- 对查询语义理解的局限性:当查询语义比较复杂或模糊时,向量检索无法准确理解用户的意图,导致准确率降低;
此外,像一些特殊情况,如所检索内容未构建特征或特征比重较小时,会导致准确率降低,甚至无召回结果。针对文本搜索场景,全文检索更适合做关键字匹配,可以避免检索内容低频的问题。而向量检索则能找出字面上不同但语义上相近的内容。
通过将向量检索和全文检索的联合召回,可以降低漏检和误检的概率,能够实现比单独使用向量或全文检索更高的精度。 此外,向量数据与全文数据在存储、计算上有很大的差别,单一的数据库架构很难同时高效支持这两种场景。 例如,对于公开数据集如ANN Benchmark,Elasticsearch的性能远落后于专业的向量数据库。
星环科技向量数据库Hippo底层使用自研的分布式数据管理系统TDDMS,能够支持向量数据和全文数据统一存储管理。一套数据库系统即可支持向量与全文数据联合检索召回,避免了部署多套系统带来的架构复杂、开发运维成本高等问题。 同时,Hippo提供兼容Elasticsearch协议的SDK支持,方便用户更便捷地使用向量数据库。
例如,当查询“A公司业务发展情况”时,通过向量检索可以检索出A公司“主要业务”、“经营模式”、“财务情况”、“市场地位”等信息,通过全文检索可以检索出知识库中和关键字“业务”、“发展”相关的结果作为补充。 通过将两者检索的结果进行结合,可以使得大模型回答的结果更加丰满和准确。
当查询“A公司产品经理B的履历”时,若该产品经理B在知识库中出现的频率较低或未构建特征时,单一使用向量检索召回的结果可能主要是A公司介绍。而通过全文检索则会检索出产品经理B相关的内容,通过向量+全文的联合检索召回,使得大模型能够准确地给出答案。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。