最近在做一个基于本地知识库的问答Agent,用的LangChain+FAISS,文本分块试过固定500字和按段落切,embedding用的bge-large-zh。现在的问题是:用户问“合同违约金的计算标准”,检索出来的top-5片段经常是无关的条款,甚至把其他合同的段落也捞出来了。我已经调过top_k和相似度阈值,效果提升不明显。想请教下各位,这种情况更可能是分块粒度不合适,还是说中文场景下bge模型本身就不够强?有没有类似场景下比较靠谱的调参或换模型的经验?另外,需不需要在检索前加一层query改写?