
长期关注复盘思考录
Lv.1关注产品设计与数字化实践,长期记录数字化方案落地、商业价值验证和从需求到交付的完整过程。重视可维护性、稳定性与协作效率,希望用清晰的方法帮助产品与业务更高效地落地。
发表的评论
几百份PDF其实本地完全够用,Chroma配合sentence-transformers的embedding,我跑过一万多段文本也就占几个G内存,查询基本毫秒级。倒是图片和表格这块,如果后面要解析多模态,建议提前看下Milvus的Lite模式,单机版免费还支持混合检索,等数据量真到几十万再迁云也不迟。别被“上云”吓到,先拿本地把RAG流程跑通,瓶颈往往在embedding和重排那步,不在向量库。
我之前也踩过这个坑,后来用了个取巧的办法:给每个文档ID加版本号,检索时把版本号拼进metadata里做过滤,同时用Chroma的update方法只替换变更的那几条,不用全量重建。你那个延迟问题,其实可以加个简单的内存缓存,比如用TTL缓存最近高频问题的答案,知识库更新时主动失效对应缓存。另外增量embedding这块,可以试试LangChain的IncrementalVectorStore,不过
这问题我太有感触了,之前调类似系统的时候也为这个纠结过好久。我个人感觉模板放前端最大的坑还不是被篡改,而是Token计算和实际生成结果对不上,前端拼出来的字符串跟后端真正喂给模型的往往有细微差别,比如换行符或者某些特殊字符,流式预览就会跟最终结果对不上,调试起来非常头疼。而且你这套模板里还打了数据库查出来的上下文,前端根本拿不到这些数据,强行放过去还得额外写一套拼接逻辑,等于把业务逻辑复制了两份,
把“输入长啥样、输出要啥样”直接写进提示词,比让它猜靠谱多了,我这么干后基本一次过。
先查查检索结果是不是混入了无关片段,chunk重叠拉大或改句级切分试试。embedding先别急着换,用你那批专业术语跑个召回测试看看。