大家久等了,咱们继续深入探讨知识库的优化方法。
这是《知识库优化之路》系列的第三篇文章,面向的是普通小白用户——在资源和技术条件有限的情况下,如何仅从用户侧开展一些基础的知识库优化工作,希望对大家有所帮助。
之前的两篇内容,已经介绍了如何把文件转换为Markdown和JSON格式,帮助AI更好地理解资料。但只做这些还远远不够。如果你看过之前关于知识库基本原理的介绍,就会明白构建知识库必须借助嵌入模型。
不同的嵌入模型,其算法、参数、性能各不相同,实际使用效果差异也很大。这一篇,我们重点探讨的是:如何挑选一个性能更优的嵌入模型。
什么是嵌入模型
当你把各种资料文件存入知识库时,计算机其实无法理解这些文字。它只会机械地匹配关键词,比如搜索“苹果”可能同时返回水果价格和手机说明书,效果很不理想。
为了解决这个难题,嵌入模型应运而生。它首先将资料拆分成片段,再转换成数字向量。例如,“忘记密码怎么办?”会被转换为类似 [0.3, -0.8, 1.5…] 的数字串,而语义相近的“账号被锁定如何处理?”则会生成非常接近的数字向量。所有文档转成数字后,被存入向量数据库,计算机就能依据语义相似度自动归类——把“密码问题”和“登录故障”的资料放到同一个隐形区域,即便它们的文字描述完全不同。
用户提问时,嵌入模型直接将问题转为数字向量,在向量数据库中快速匹配最相关的结果。比如员工问“输错密码被锁了怎么办?”,即使知识库里只有“重置密码流程”文档,也能精准关联;用户说“登不进去了”,模型也能绕过字面差异,直接指向密码相关的解决方案。
这种技术让混乱的文档变成结构化的数字网络,计算机不再依赖关键词,而是真正理解语义——就像给知识库装上了GPS,输入模糊描述也能导航到正确答案。所以,嵌入模型的性能优劣,直接决定了知识库的检索质量和整体表现。
有哪些表现较好的嵌入模型
1. BGE系列
BGE系列包含多个模型,最常用的是bge-m3,这是一个多功能、多语言、多粒度的文本嵌入模型。另外还有bge-large-zh-v1.5,更适合纯中文场景;bge-large-en-v1.5 则更擅长处理英文资料。
2. gte-qwen2系列
这个系列主要有gte-Qwen2-7B-instruct 和 gte-Qwen2-1.5B-instruct 两个模型,整体性能都不错——当然7B版本比1.5B版本更强。
3. gemini-embedding-exp-03-07
谷歌推出的嵌入模型,目前高居嵌入模型排行榜首位。
4. nomic-embed-text
Ollama平台上排名第一的嵌入模型,很多本地化部署方案都选用它。
5. multilingual-e5-large-instruct
排名靠前的模型,名称已经说明了它的特色——对多语言支持比较出色。
6. jina-embeddings-v2-base-zh
能够流畅应对中英文双语内容,对长文本也比较友好。
7. xiaobu-embedding-v2
一款中文语义嵌入模型,在多项自然语言处理任务中表现优异。
中文嵌入模型排行榜
实际上,上面提到的只是一部分。想了解更多的嵌入模型,可以关注开源平台Hugging Face——上面提供了包含100多个嵌入模型的排行榜MTEB。
网址:https://huggingface.co/spaces/mteb/leaderboard
注意,这个页面默认显示所有嵌入模型的排名。如果只想看中文排名,需要在Prebuilt Benchmarks那里选择语言 cmn(普通话)。
然后就能看到最新的中文嵌入模型排名。
也可以点击下面的“Download Table”按钮,把整个表格下载下来。
如何使用这些嵌入模型
以上提到的嵌入模型,并不是每一个都适合普通用户——使用方式和难度各有不同,大致分为以下几种情况。
1. 通过CherryStudio直接使用
在CherryStudio里,默认已经添加了一些嵌入模型(名字后面带有“嵌入”标记),可以直接使用,这是最简单的方式。比如硅基流动就带有很多嵌入模型,点击“管理”后,想用哪一个,先点一下嵌入模型后面的“➕”。
然后新建知识库时,它就会出现在选择列表里——不点“➕”的话,是无法选择的。另外,无问芯穹和Gemini也提供了一些嵌入模型,如果之前配置过API,就能直接使用。
2. 通过手动配置添加
还有一些服务平台拥有嵌入模型,但尚未被添加进CherryStudio,需要手动配置。比如很多朋友在用的火山方舟,模型广场里有一个豆包的嵌入模型doubao-embedding-large。想在CherryStudio里使用的话,要先开通服务。
然后在CherryStudio手动添加一下。
3. 通过Ollama本地部署
还有很多模型,不能直接使用上述方法,可以考虑本地部署。最简单的方式是用Ollama来安装部署——先确认想要使用的嵌入模型名称,比如gte-Qwen2-1.5B-instruct,在ollama官网搜索,找到后直接复制安装命令。
通过命令行执行安装。安装完成后,在CherryStudio模型服务里选择Ollama,点击“添加”,输入完整的模型名称。如果不确定名称,可以用“ollama list”查看。
需要注意,如果创建知识库时选的嵌入模型是通过Ollama部署在本地的,那么对话中使用这个知识库时,要确保Ollama软件在正常运行——一旦关闭或退出,知识库就无法使用了。
4. 创建知识库
通过以上几种方式,成功将需要的嵌入模型添加进CherryStudio后,就可以直接创建知识库了。
嵌入模型那里,可以选择之前添加的模型。如果没有出现,可能是添加未成功,可以再检查确认一下。另外,你可能已经注意到了——新的CherryStudio(版本1.1.8)在创建知识库时,已经支持添加重排序模型了。至于重排序模型该如何选择,会在下一篇“知识库优化之路(四)”里继续探讨。

总结
这一篇,主要介绍了一些优秀的嵌入模型及其使用方法。对于不同用户来说,使用难度不太一样——需要根据自己的实际情况,选择适合自己的嵌入模型和使用方式。
因为最近CherryStudio最新升级后知识库支持了rerank(重排序)功能,所以下一步知识库优化的方向就是它了。

