以下是关于知识库搜索的相关信息:
网址:https://search.atomecho.cn/
1.添加知识库:选择刚才添加的知识库内容,这里可以同时添加多个知识库2.参数设置:|配置|说明||-|-||搜索策略|选择如何从知识库中搜索内容片段,不同的检索策略适应于不同的场景。检索到的内容片段的相关性越高,大模型根据召回内容生成的回复的准确性和可用性也越高。<br><br>语义检索:像人类一样去理解词与词,句与句之间的关系。推荐在需要理解语义关联度和跨语言查询的场景使用。例如下面两组句子,第一组的语义关系就更强。<br>"狼追小羊"和"豺狼追山羊"<br>"狼追小羊"和"我爱吃炸猪排"<br>全文检索:基于关键词进行全文检索。推荐当查询内容包含以下场景时使用<br>特定名称或专有名词,术语等,例如比尔盖茨、特斯拉Model Y<br>缩写词,例如SFT<br>ID,例如,12s1w1s2系列<br>混合检索:结合全文检索和语义检索的优势,并对结果进行综合排序召回相关的内容片段。||最大召回数量|选择从检索结果中返回多少个内容片段给大模型使用。数值越大,返回的内容片段就越多。<br>||最小匹配度|根据设置的匹配度选取要返回给大模型的内容片段。低于设定匹配度的内容不会被返回。<br>该配置可过滤掉一些低相关度的搜索结果。<br><br>Tips:最大召回数量和最小匹配度直接影响输出效果,这两个值需要进行协调的多轮测试,找出最优值。|
针对上面的问题,OpenAI发布过这样一篇文档,说明如何使用两步搜索来增强GPT的能力:搜索:搜索内部的知识库,检索相关文本。请求:将检索到的文本内容部分发送给GPT大模型,并向其提出问题。具体的操作步骤如下:1、准备搜索数据(仅一次)1)搜集数据:获取需要的数据,公开数据或者私有的数据2)切块:将文档切分成短小的3)嵌入:通过OpenAI API对切块的数据进行Embedding结果,4)存储:存储Embedding结果,对于大型数据集的Embedding结果,可以使用向量数据库进行保存。2、搜索(每次查询一次)给定用户问题,从OpenAI API生成查询的embeddings使用embeddings,按照与查询相关性对文本部分进行排序❝距离函数推荐使用:余弦相似性3、提问(每次查询一次)将问题和最相关的部分插入到发送给GPT的消息中返回GPT的答案[heading3]Embedding共有哪些作用[content]搜索(其中结果按与查询字符串的相关性进行排名)聚类(其中文本字符串按相似性分组)建议(建议包含相关文本字符串的项目)异常检测(识别出相关性很小的离群值)多样性测量(分析相似性分布)分类(其中文本字符串按其最相似的标签分类)