@566656661
假設你輸入"Find me the content related to ABC12383" (幫我找一下有關ABC12383的内容), 首先你可以給基本模型把這個請求標準化(Normalize), 模型正常情況下會幫你把有關内容拆解成字串 (三字串trigram或者兩字串bigram), 然後幫你在分塊好的内容選出來, 假設你的文件中包含有關於ABC123, ABC23, ABC83, ABC128, ABC238, ABC12383(這個才是想要的)
这个例子中, 就像你说的, 由于ABC123, ABC23, ABC83, ABC128, ABC238, ABC12383 的向量相似度都很高, 所以真正的 ABC12383 的返回优先级并不高. 但在关键词搜索中, ABC12383的优先级往往就很高, 所以召回的chunk中, 会优先返回.
对于准确的内容, 比如产品型号、错误码、文件编号等等,单纯依赖 Embedding 确实容易召回错误的 Chunk, 所以可以结合 BM25 等关键词搜索,然后再交给 Rerank 做最终排序。