知識管理權限:查詢元資料
本篇將說明如何透過查詢元資料控管 Agent 可參考的資料、知識範圍。
功能說明
AI 對話系統導入時,因使用者權限、使用需求不同通常需對 「 知識庫 / AI 助理 / 對話平台 」 的可用範圍進行細緻控管。
在 MaiAgent 中,可以利用附加在不同對話 / 身分層級的查詢元資料,決定「這個人 / 這段對話能參考哪些內容」。
查詢元資料是什麼?
查詢元資料是一組限定查詢範圍的動態條件,能夠指定使用者在某對話平台下能查詢的 「 知識庫、FAQ、符合標籤條件的文件 」 等資料內容。
它不取代聯絡人等身分機制,而是讓身分 「 有條件地發揮作用 」 ,實現對話層級的最小權限控制。
訊息 / 對話 / 聯絡人 是容器,查詢元資料是掛在容器上、實際決定可視範圍的條件
權限層級概念
查詢元資料可以設定在三個層級,各自對應不同的設定方式:
訊息
僅該則訊息
內部問答右側的知識選擇;Web Chat 嵌入時帶入的查詢元資料;對話 API
對話
該段對話的所有訊息
建立對話的 API
聯絡人
該聯絡人的所有對話
後台聯絡人編輯(查詢構建器或 JSON)、聯絡人 API
另外,Agent 本身可以設定一組預設的標籤過濾條件,作為最後的兜底,設定方式見 知識庫標籤過濾。
可參考以下文件操作:
文件篩選條件判斷層級
Agent 檢索知識時,由上而下取第一個「有設定」的層級,整份套用:
某一層沒有設定時,往下一層查找。
第一個有設定的層級整份生效,不與下層合併:例如聯絡人設定了查詢元資料,該聯絡人的對話就不會再套用 Agent 的預設標籤過濾。
Agent 的預設標籤過濾只在訊息、對話、聯絡人三層都沒有設定時才會套用。
透過層層傳遞,查詢元資料成為 AI 回應邏輯的實際決策依據。「空設定」與「未設定」的差別等 JSON 細節,見技術人員手冊 開始建構—使用 JSON 格式。
適用範圍與限制
查詢元資料只管知識庫檢索(文件、FAQ、標籤)。它不會套用到:
資料庫(Text to SQL):Agent 查資料庫時不看查詢元資料,也沒有逐次請求限制資料表的欄位。資料庫的範圍由資料庫是否啟用、是否關聯到這個 Agent、指定資料表 與 角色權限 決定;要讓不同身分查到不同資料,請用不同的 Agent 搭配不同的資料庫連線或唯讀帳號。
工具與 MCP:工具能不能被呼叫由 Agent 的工具設定與角色權限決定。
角色指令:條件本身不會送進模型,Agent 不知道自己被限制了什麼;要讓模型知道使用者身分,請用 contextData。
實際應用情境

同一個 Agent 服務多種身分時,只要依身分帶入不同的查詢元資料:
訪客
知識庫:一般
檔案文件:無
標籤:訪客
FAQ:1、2
取得 一般 知識庫中含 訪客 標籤的文件及 FAQ 1、FAQ 2
一般會員
知識庫:一般
檔案文件:A、B、C
標籤:無
FAQ:無
取得 一般 知識庫中 A、B、C 文件與所有 FAQ
客服人員
知識庫:員工
檔案文件:無
標籤:客服
FAQ:無
取得 員工 知識庫中標註為 客服 標籤的文件與所有 FAQ
內部員工
知識庫:員工
檔案文件:A、B
標籤:無
FAQ:無
取得 員工 知識庫中 A、B 文件與所有 FAQ
管理員
知識庫:員工、一般
檔案文件:無
標籤:無
FAQ:無
取得 員工 與 一般 知識庫中所有文件內容及 FAQ
小結:企業使用查詢元資料的價值
🎯 多維身分交叉控管(會員等級+地區+產品線)
🎯 即時查詢控制:無需複製 Agent,只要改條件即可因應場景切換
🎯 大型知識庫靈活管理:標籤與知識庫可隨場景拆分與授權
建議將查詢元資料納入產品架構核心,讓企業能以最少設定達成最多授權彈性, 確保知識安全,同時提升對話體驗與維運效率。
最後更新於
這有幫助嗎?