ai-robot-core/ai-service/tools/kb_search_dynamic.md

1.8 KiB
Raw Permalink Blame History

name description triggers anti_triggers tools
kb_search_dynamic 知识库动态检索工具,支持元数据驱动过滤
用户问题需要知识库事实支撑回答
需要按租户元数据动态过滤知识条目
涉及产品知识、政策条款、FAQ查询
用户询问具体业务规则或流程
纯闲聊或问候语
仅流程确认(如"好的"、"明白了"
已有充分 KB 结果且无需补充
用户问题与知识库内容无关
kb_search_dynamic

使用指南

何时使用

当需要知识库事实支撑回答,且需按租户元数据动态过滤时使用。

何时不使用

当用户问题不依赖知识库(纯闲聊/仅流程确认)或已有充分 KB 结果时不重复调用。

参数说明

参数 类型 必填 说明
query string 检索查询文本
tenant_id string 租户 ID系统自动注入
scene string 场景标识,如 open_consult
top_k integer 返回条数默认5
context object 上下文,用于动态过滤字段

示例调用

{
  "query": "退款到账一般要多久",
  "scene": "open_consult",
  "top_k": 5,
  "context": {"product_line": "vip_course", "region": "beijing"}
}

结果解释

  • success=truehits 非空:命中知识,可直接使用
  • missing_required_slots 非空:应先向用户补采信息
  • fallback_reason_code 存在:需降级处理

注意事项

  1. tenant_id 由系统自动注入,模型不要填写
  2. context 字段用于传递动态过滤条件,如产品线、地区等
  3. 避免重复调用:如果上一轮已有充分结果,不要再次调用
  4. 查询文本应保持用户原意,不要过度改写