问题所在
仅依赖向量存储的RAG管道基于过时数据生成回答。用户问当前价格、最新功能或近期变化时,向量存储的过时数据导致错误。
Scavio 解决方案
在RAG管道中添加搜索支撑步骤。向量检索前或同时,分类查询意图。时效敏感查询触发实时搜索获取新鲜数据。
之前
用户问"Tesla Model 3当前价格?"向量存储返回3个月前的文档。LLM引用错误价格。
之后
意图分类器将"当前价格"标记为时效敏感。Scavio Amazon和Google搜索返回实时定价。LLM用正确价格回答。
适用人群
构建RAG管道并需要处理时效敏感查询但不只是依赖静态向量存储的AI工程师。
核心优势
- 实时数据填补向量存储无法覆盖的知识缺口
- 意图分类防止对静态查询的不必要API调用
- 双源上下文将回答准确性提升20-40%
- 搜索结果提供可引用的URL用于验证
- 每次搜索支撑调用$0.005
Python 示例
Python
import requests, os
API_KEY = os.environ["SCAVIO_API_KEY"]
H = {"x-api-key": API_KEY, "Content-Type": "application/json"}
FRESH_KEYWORDS = ["current", "latest", "today", "price", "cost", "news", "trending"]
def needs_fresh_data(query: str) -> bool:
return any(kw in query.lower() for kw in FRESH_KEYWORDS)
def search_grounding(query: str) -> str:
resp = requests.post(
"https://api.scavio.dev/api/v1/search",
headers=H,
json={"query": query, "country_code": "us"},
timeout=10,
)
results = resp.json().get("organic_results", [])[:5]
return "\n".join(
f"[{r['title']}]({r['link']}): {r['snippet']}" for r in results
)
def rag_with_grounding(query: str, vector_context: str) -> str:
context_parts = [f"Knowledge base:\n{vector_context}"]
if needs_fresh_data(query):
fresh = search_grounding(query)
context_parts.append(f"Live web results (searched just now):\n{fresh}")
return "\n\n".join(context_parts)
# Example: merge vector store + live search for grounded RAG
vector_ctx = "Tesla Model 3 starts at $38,990 as of Q1 2026..."
grounded = rag_with_grounding("current Tesla Model 3 price", vector_ctx)
print(grounded)JavaScript 示例
JavaScript
const API_KEY = process.env.SCAVIO_API_KEY;
const H = {"x-api-key": API_KEY, "Content-Type": "application/json"};
const FRESH_KEYWORDS = ["current", "latest", "today", "price", "cost", "news", "trending"];
function needsFreshData(query) {
return FRESH_KEYWORDS.some(kw => query.toLowerCase().includes(kw));
}
async function searchGrounding(query) {
const res = await fetch("https://api.scavio.dev/api/v1/search", {
method: "POST",
headers: H,
body: JSON.stringify({ query, country_code: "us" }),
});
const results = (await res.json()).organic_results || [];
return results.slice(0, 5)
.map(r => `[${r.title}](${r.link}): ${r.snippet}`)
.join("\n");
}
async function ragWithGrounding(query, vectorContext) {
const parts = [`Knowledge base:\n${vectorContext}`];
if (needsFreshData(query)) {
const fresh = await searchGrounding(query);
parts.push(`Live web results (searched just now):\n${fresh}`);
}
return parts.join("\n\n");
}
const vectorCtx = "Tesla Model 3 starts at $38,990 as of Q1 2026...";
const grounded = await ragWithGrounding("current Tesla Model 3 price", vectorCtx);
console.log(grounded);使用的平台
包含知识图谱、PAA和AI概览的网页搜索
Amazon
包含价格、评分和评论的产品搜索
YouTube
包含转录和元数据的视频搜索
Walmart
包含定价和配送数据的产品搜索
来自任何subreddit的社区、帖子及线程评论