搞了一周的rag,效果还不如直接把文档贴进prompt里。embedding检索出来的chunk经常牛头不对马嘴。还是我姿势不对?
不是RAG被过度吹捧了而是大部分RAG实现太粗糙。默认的chunk策略(按固定长度切分)效果确实差。试试:1.按语义段落切分 2.调整chunk大小(500-1000字最佳)3.加上chunk overlap 4.用reranker做二次排序
直接贴进prompt效果好是因为上下文完整。但这个方案在文档量大了之后不可行——token限制塞不下。RAG解决的是"在海量文档中找到相关段落"的问题,小文档确实没必要
RAG的效果80%取决于数据预处理不是模型。文档质量差(格式乱、内容重复、过期信息)再好的embedding也救不了。花时间在数据清洗上比调参有用得多
RAG就是被卖课的吹出来的。实际项目里大部分场景用长上下文窗口直接塞就行了。Kimi 200万token、Claude 200K token,哪有那么多文档塞不下的
如果文档量在100页以内直接丢给Claude效果最好别搞RAG。RAG适合的场景是:数据量大(几千页以上)、需要精准检索、有实时更新需求。小数据量用RAG是杀鸡用牛刀
RAG有用但不是银弹
数据质量比技术方案更重要
简单场景确实有用,复杂推理就不行了
embedding质量才是关键,垃圾进垃圾出
我们项目上了rag效果一般,还不如微调
最后一次重构了说到做到
英文文档和中文文档不同步啊