兄弟们,最近搞了波RAG落地,发现这玩意儿没那么玄乎,但坑是真的多。简单说,RAG就是把外部知识塞给大模型,让它别瞎编。但搞不好,它就是“检索增强胡扯”。
先说说部署和模型选择。别一上来就上大模型,7B-13B的本地模型(比如Qwen、Llama)做检索够用了,成本低、响应快。关键是向量库,我踩过最深的坑是**分块策略**:太长模型记不住,太短检索噪音大。建议按段落分块,保留上下文,别用固定token切割。嵌入模型也别贪大,bge-small就比bge-large快3倍,效果差不太多。
使用上,别指望RAG能一步到位。你喂的文档质量决定了AI智商。比如给模型扔一堆技术手册,它可能就把“弃用API”当成最佳实践。我一般加个**元数据过滤**(日期、版本),动态更新知识库。另外,别只召回Top-k,试试**混合检索**(稀疏+稠密),能救回不少相关但语义不近的内容。
最后问个硬核问题:你们在生产环境里,RAG的**延迟和召回率**是怎么平衡的?有没有用预检索+缓存策略的?来唠唠。 |