最近在用LangChain + Chroma搭一个本地知识库,文档主要是PDF技术手册,大概2000多页。切块用的RecursiveCharacterTextSplitter,chunk_size=500,overlap=50。embedding用的bge-large-zh,检索top_k=5。测试的时候发现有些问题明明文档里有答案,但就是检索不到对应的chunk,换个问法又能搜到。也试过调大top_k到10,但噪音明显变多,LLM回答开始跑偏。想问下这种情况一般怎么排查?是切块粒度的问题,还是embedding模型对技术文档的语义匹配本身就不太行?有没有什么实际可操作的优化思路?