位置與距離僅為閱讀布局,不代表關係強度或可信度。
關係由規則及結構化欄位抽取,尚未逐筆人工核實。虛線「提及於」只是文件連結,不是語意主張。
這個 KG-RAG 如何運作?
1.資料從哪裡來
使用靜宜官方來源快照,保留原始網址、SHA-256、擷取時間與頁碼或 HTML 定位。原始資料包於 2026/09/30~10/01 擷取;本次另重新蒐集八個院系單位與相關校級公開資料,補齊人工智慧系沿革及教職員、動態師資名冊、課程與申請規定。成功重取的內容更新為新快照,未重取的有效舊資料保留原日期,不偽裝為最新。上方數量依目前發布版本即時讀取。
隔離內容、未核對 OCR、錯誤頁與已知衝突資料不直接當作現行答案依據。資料仍不包含登入後系統或即時借用空檔,不能宣稱全站百分之百完整。
2.知識圖譜怎麼建立
目前使用 Python 規則與有原文依據的結構化關係抽取,儲存在 SQLite 的 entities、edges、chunks,沒有讓 LLM 自由猜測關係。師資頁必須具有明確姓名與研究專長欄位,才能建立「教師 → 專長」;課程資料則建立「入學年度規劃 → 規劃必修/選修 → 課程」,保留學分、年級與學期。
每條邊保存證據片段 ID,能回到原文與來源網址。新資料加入有直接證據的系所沿革與名冊任職關係;圖譜數量依當前版本顯示。研究專長不代表實際授課;課程規劃不代表當學期開課或最低畢業學分。
3.問題如何找到知識
本機 Jina 中文嵌入模型 jina-embeddings-v2-base-zh 產生正規化向量,FAISS 執行語意近鄰搜尋。同時使用 SQLite FTS5,以中文雙字片段與英數詞做 BM25 關鍵字搜尋。兩條排名以近似 RRF 的 1 / (60 + rank) 加分合併。
系統先辨識系所範圍,扣除作為範圍的系名後,再以問題文字比對圖譜實體名稱,最多擴展兩層關係,把關聯證據加入候選並依距離加分。另補系內關鍵字候選、核心頁與原問題片語加分,避免只因系名相同就把所有教師排到前面。指定系所時會依明確別名限定來源範圍;沿革與名冊問題優先取對應核心頁,避免以研究人工智慧誤當人工智慧系任職。來源網域本身不是任教證據。最後排除刪除文件,依明確「入學年度」篩選,再取 Top-K。這不是 LLM 產生 SQL,也沒有使用學習式重排模型。
4.模型與資料如何分工
模型負責根據取回的原文組織答案,來源以 [S1] 等標記。三個 llm-api-test 入口共用同一知識來源,模型名稱及對話各自獨立;API 金鑰只在後端。每次推論前確認指定模型為 ready,忙碌或停止時回報狀態,不自動換模。
API 模型目前以保守的 4096 context 設定串接,參考證據最多約 1,500 字元,一般片段最多 500 字元、完整名冊最多 1,000 字元、更名調整最多 800 字元,輸出上限 512 tokens。字元限制不等於精確 token 計算,長問題仍可能超過限制。這些入口略過 LLM 關鍵字改寫,避免一個問題占用多筆推論;代詞問題只附上一個先前使用者問題作線索。
5.版本一致性與目前限制
資料與索引先在獨立版本建立,驗證後以 active.json 切換。單次檢索固定讀取同一版本的 FAISS、meta.json 與圖譜,避免更新時混用。三個比較入口均跟隨共用來源的版本更新;公平比較仍需固定問題、時間、取樣設定及證據長度。
- 實體目前主要以名稱合併,尚未完成全面的別名處理、同名消歧或歷史任職時間建模。
- 未建完整校務語意本體;流程、租借、畢業法規等多數仍以原文混合檢索回答。
- 年度過濾依明確入學年標記,沒有完整理解所有身份、學制、例外條件或時間範圍。
- 圖譜中的引用存在不代表事實已核實;模型仍可能誤讀或引用不支持答案。
- 581 題題庫已準備,尚未進行批次模型評測,不能宣稱已有問答正確率。