必须启用属性过滤并配置元数据字段与混合检索策略才能精准召回:在知识库高级设置中添加purchase_date(日期型)、device_model(字符串型)、status(枚举型)三字段,再于知识库节点中选择“混合”搜索策略并启用元数据过滤,输入合规表达式即可实现时间、型号、状态联合筛选。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在扣子平台中,当用户提问“2025年6月后购买的iPhone 15 Pro支持哪些快充协议”,系统却返回了2023年旧款机型的充电说明,根本原因是知识库未对时间、型号、状态等结构化属性做有效约束,导致向量检索召回大量无关片段——必须将向量相似性与属性过滤同步生效,才能让响应既快又准。
启用属性过滤并绑定字段类型
进入扣子Bot后台 →「知识库」→ 点击目标知识库右侧「编辑」→ 下拉至「高级设置」区域 → 找到「元数据字段配置」模块。
点击「添加字段」,依次录入三个关键属性:【purchase_date】(日期型)、【device_model】(字符串型)、【status】(枚举型:active/inactive/legacy)。日期型字段必须选对类型,否则后续无法执行范围比较,比如“purchase_date > '2025-06-01'”会直接报错。
保存后,系统自动为已上传文档中的对应内容打标。若原始PDF或表格里没有显式标注purchase_date,需先在导入前用Excel补全该列,否则该字段将为空,过滤失效。
在知识库节点中开启双通道联合检索
回到智能体编排页面 → 找到已绑定该知识库的「知识库节点」→ 点击右上角「配置」按钮 → 展开「召回配置」面板。
第一步:在「搜索策略」下拉菜单中选择「混合」——这是唯一支持同时触发向量匹配与属性过滤的模式;选“语义”或“全文”都会跳过属性校验逻辑。
扣子 (Windows) 是字节跳动推出的一站式 AI Agent 平台客户端,支持多 Agent 协作、可视化工作流和知识库管理。最新版本新增 Claude Code 与 Codex CLI 接入、多端同步和项目级管理功能,同时优化了插件生态和 AI 响应速度,让用户在 Windows 上即可高效创建、运行和协作智能体,满足个人、团队及企业场景需求。
第二步:勾选「启用元数据过滤」开关 → 在下方输入框中填写过滤表达式:device_model == "iPhone 15 Pro" and purchase_date > "2025-06-01" and status == "active"。
注意:字符串值必须用英文双引号包裹,日期格式严格为YYYY-MM-DD,且不能写成2025/06/01或2025.06.01,否则整个过滤条件被忽略,退化为纯向量检索。
验证属性过滤是否真正生效
方法一:在知识库右上角点击「测试检索」→ 输入问题“iPhone 15 Pro快充协议” → 查看底部「召回详情」面板。
若看到“过滤后剩余chunk数:3”,且这3个片段的purchase_date字段值全部大于2025-06-01,则说明属性过滤已介入;若显示“过滤后剩余chunk数:全部”,说明表达式语法错误或字段未正确映射。
方法二:在工作流中插入一个「日志节点」→ 将知识库节点的output.recall_results作为输入 → 运行一次真实对话 → 检查日志输出中每个召回项是否都含device_model="iPhone 15 Pro"且purchase_date字段值符合预期。
这一步操作起来很简单,直接把日志节点拖进去连上线就行,但能一眼揪出字段映射失败或过滤漏斗失效的问题。










