CRAG 解决了 RAG 系统的时间感知痛点,做知识库问答或实时信息检索的团队可以直接参考 Milvus 的实现方案。
传统 RAG 管道无法区分不同年份的文档,向量搜索按语义而非时间排序,导致过时结果与最新内容混在一起。CRAG(Corrective RAG)通过在检索和生成之间增加一个评估步骤来解决这个问题:轻量级模型对检索结果打分,当结果不准确或模糊时,自动转向网络搜索获取最新信息。Milvus 向量数据库支持多租户隔离、混合检索和灵活模式,适合部署 CRAG 的生产环境。
𝗖𝗥𝗔𝗚 𝗰𝗮𝗻 𝗺𝗮𝗸𝗲 𝘆𝗼𝘂𝗿 𝗥𝗔𝗚 𝘀𝘂𝗿𝗳𝗮𝗰𝗲 𝘁𝗵𝗲 𝗮𝗻𝘀𝘄𝗲𝗿 𝘆𝗼𝘂 𝗮𝗰𝘁𝘂𝗮𝗹𝗹𝘆 ...
𝗖𝗥𝗔𝗚 𝗰𝗮𝗻 𝗺𝗮𝗸𝗲 𝘆𝗼𝘂𝗿 𝗥𝗔𝗚 𝘀𝘂𝗿𝗳𝗮𝗰𝗲 𝘁𝗵𝗲 𝗮𝗻𝘀𝘄𝗲𝗿 𝘆𝗼𝘂 𝗮𝗰𝘁𝘂𝗮𝗹𝗹𝘆 𝗻𝗲𝗲𝗱 — 𝘁𝗵𝗲 𝗰𝘂𝗿𝗿𝗲𝗻𝘁 𝗼𝗻𝗲, 𝗻𝗼𝘁 𝗷𝘂𝘀𝘁 𝘁𝗵𝗲 𝗰𝗹𝗼𝘀𝗲𝘀𝘁 𝗺𝗮𝘁𝗰𝗵 𝗶𝗻 𝗺𝗲𝗮𝗻𝗶𝗻𝗴. 𝗕𝘆 𝗱𝗲𝗳𝗮𝘂𝗹𝘁, 𝘆𝗼𝘂𝗿 𝗥𝗔𝗚 𝗽𝗶𝗽𝗲𝗹𝗶𝗻𝗲 𝗽𝗿𝗼𝗯𝗮𝗯𝗹𝘆 𝗱𝗼𝗲𝘀𝗻'𝘁 𝗸𝗻𝗼𝘄 𝘄𝗵𝗮𝘁 𝘆𝗲𝗮𝗿 𝗶𝘁 𝗶𝘀: 𝗶𝘁 𝗰𝗮𝗻'𝘁 𝘁𝗲𝗹𝗹 𝗮 𝟮𝟬𝟭𝟵 𝗮𝗻𝘀𝘄𝗲𝗿 𝗳𝗿𝗼𝗺 𝗮 𝟮𝟬𝟮𝟰 𝗼𝗻𝗲. Vector search ranks by meaning, not time, and two documents from different years can read as almost the same. Search "Python async best practices," for example, and the outdated docs come back alongside the current ones. 𝗬𝗼𝘂 𝗰𝗮𝗻'𝘁 𝗿𝗲𝗹𝗶𝗮𝗯𝗹𝘆 𝗳𝗶𝘅 𝗶𝘁 𝗳𝗿𝗼𝗺 𝘁𝗵𝗲 𝗾𝘂𝗲𝗿𝘆 𝘀𝗶𝗱𝗲 𝗲𝗶𝘁𝗵𝗲𝗿. Embedding models have a weak sense of time, so dropping "2024" into the query nudges the ranking but doesn't actually sort by recency. 𝗖𝗥𝗔𝗚 (𝗖𝗼𝗿𝗿𝗲𝗰𝘁𝗶𝘃𝗲 𝗥𝗔𝗚) 𝗶𝘀 𝘄𝗵𝗮𝘁 𝗳𝗶𝗹𝗹𝘀 𝘁𝗵𝗮𝘁 𝗴𝗮𝗽. 𝗧𝗵𝗲 𝗸𝗲𝘆 𝗶𝘀 𝘁𝗵𝗲 𝗲𝘃𝗮𝗹𝘂𝗮𝘁𝗲 𝘀𝘁𝗲𝗽 𝗶𝘁 𝗮𝗱𝗱𝘀. Between retrieval and generation sits an evaluator — a lightweight model that scores how well each retrieved document matches the query, and doesn't write any answers itself. 𝗪𝗵𝗲𝗻 𝗮 𝗿𝗲𝘀𝘂𝗹𝘁 𝗰𝗼𝗺𝗲𝘀 𝗯𝗮𝗰𝗸 𝗶𝗻𝗰𝗼𝗿𝗿𝗲𝗰𝘁 𝗼𝗿 𝗮𝗺𝗯𝗶𝗴𝘂𝗼𝘂𝘀, 𝗖𝗥𝗔𝗚 𝗴𝗼𝗲𝘀 𝗼𝘂𝘁𝘀𝗶𝗱𝗲 𝘁𝗵𝗲 𝗸𝗻𝗼𝘄𝗹𝗲𝗱𝗴𝗲 𝗯𝗮𝘀𝗲 𝘁𝗼 𝗳𝗶𝗻𝗱 𝘄𝗵𝗮𝘁'𝘀 𝗺𝗶𝘀𝘀𝗶𝗻𝗴: ~ Ambiguous → keep the useful part of what RAG retrieved, refine it, a milvus.io/blog/fix-rag-r… we #RAG a #VectorDatabase e #LLMOps r #AIEngineering r #Milvus esults and go straight to web search, so time-sensitive queries still come back right Across this whole flow, CRAG needs what production systems demand — multi-tenant isolation, hybrid retrieval, and schema flexibility. 𝗠𝗶𝗹𝘃𝘂𝘀 𝗶𝘀 𝗯𝘂𝗶𝗹𝘁 𝘁𝗼 𝗱𝗲𝗹𝗶𝘃𝗲𝗿 𝗲𝘅𝗮𝗰𝘁𝗹𝘆 𝘁𝗵𝗮𝘁. 𝗟𝗲𝗮𝗿𝗻 𝗵𝗼𝘄 𝘁𝗼 𝘀𝗲𝘁 𝘂𝗽 𝗖𝗥𝗔𝗚 𝗵𝗲𝗿𝗲: https://t.co/wWetTlzu3K #RAG #VectorDatabase #LLMOps #AIEngineering #Milvus 💬 0 🔄 0 ❤️ 0 👀 57 ⚡