本页整合 xb/doc/ai_application/ 旧文档的核心内容,聚焦三种场景:RAG、Agent 工具、以及依赖 xb 的分析仪表盘。
tenant_id, lang, tags)。queryVec := embedder.Encode(prompt)
resultsJSON, _ := xb.Of(&DocVector{}).
Custom(qdrantCustom).
Eq("tenant_id", tenantID).
VectorSearch("embedding", queryVec, 8).
Build().
JsonOfSelect()
将 resultsJSON 传给 LangChain/LlamaIndex/Semantic Kernel 等框架即可,因为 xb 输出原生 Qdrant JSON。
recommend_feed)。Meta(func) 注入 agent/session ID,在拦截器中执行配额或审计。ScrollID 分批返回结果。示例:
func RecommendFeedTool(input RecommendInput) (string, error) {
json, err := xb.Of(&FeedVector{}).
Custom(qdrantCustom).
Eq("tenant_id", input.Tenant).
VectorSearch("embedding", input.Vector, input.Limit).
Build().
JsonOfSelect()
if err != nil {
return "", err
}
return string(json), nil
}
即便前端只消费 SQL,也可以借助 xb 统一记录:
Meta(func) 中写入 TraceID、UserID、Model。AfterBuild 拦截器,将 SQL/JSON 摘要送到观测系统。SqlOfSelect() 与 JsonOfSelect(),方便关联。| 工具链 | 建议 |
|---|---|
| LangChain | 将 xb builder 封成 Runnable,直接返回 JsonOfSelect |
| LlamaIndex | 实现自定义 retriever,使用 xb 生成的 JSON |
| Semantic Kernel | 通过 IQueryFunction 将 xb 调用暴露给技能 |
QUICKSTART.md:基础 APIQDRANT_GUIDE.md:高级向量调用VECTOR_GUIDE.md:嵌入与多样性实践FILTERING.md:自动过滤机制如果你有重复可复用的 AI 流程,欢迎在此文件追加案例或提交 PR。