关于使用RAG与向量搜索枚举指定条件产品的可行性问询
问题
我拥有一个包含近2000份产品描述文档的Qdrant实例,希望通过类似“枚举所有2021年后生产的产品”的查询获取结果,但目前仅返回单个产品。现咨询:使用RAG(搭配OpenAI嵌入)是否是实现该需求的正确方式?
解答
RAG搭配OpenAI嵌入能实现这类需求,但并非最优解,具体分析如下:
- 常规的文本嵌入+向量检索核心是语义相似度匹配,更适配模糊语义类查询(比如“推荐适合户外使用的便携音箱”),但面对“2021年后生产”这类精确范围筛选,它会优先返回与查询语义最贴近的少数结果,而非遍历所有符合条件的文档,这就是你当前仅拿到单个产品的原因。
- 若产品描述中明确包含生产年份这类结构化信息,更高效的方案是:
- 导入Qdrant时,将生产年份作为结构化元数据字段存入向量库
- 查询时先通过元数据过滤(例如执行
filter={"year": {"gt": 2021}})筛选出所有符合时间条件的文档,再结合RAG做后续语义优化或内容提取
- 要是生产年份信息藏在非结构化的产品描述文本中,RAG就有了用武之地:可以先借助大模型从每份文档中提取生产年份并存入元数据字段,再按上述方式进行过滤;或是在查询环节,让大模型先解析查询的筛选条件,再结合向量检索与条件匹配返回全部符合要求的结果。
内容的提问来源于stack exchange,提问作者user3471528
相关产品推荐
相关产品推荐

