返回首頁

GitHub Repo

Dify 提出 Qdrant 刪除範圍修補,避免共用附件 ID 波及其他資料集

Dify 社群於 11 月 4 日提出修補,為 Qdrant 的按 ID 刪除操作加入資料集範圍限制。提案附有本機重現測試,但公開頁面的合併狀態不一致,正式版本是否收錄仍待確認。

The original uploader was Ggia at Greek Wikipedia. · CC BY-SA 2.5 · Image source
zh-Hant

Dify 社群於 11 月 4 日提出 PR #45586,處理 Qdrant 向量儲存介面的跨資料集誤刪問題。依提交者說明,當兩個資料集共用同一個 collection,且持有相同附件 ID 時,對資料集 A 執行 delete_by_ids,原本可能連帶刪除資料集 B 的向量。修補將刪除條件收緊為同時符合指定文件 ID 與資料集的 group_id。修補提案

技術關鍵在於應用層識別碼的作用範圍。Qdrant 的 point 包含向量及可選的 payload;官方刪除 API 支援直接指定 point ID,也能透過 payload 篩選條件選取資料。資料集若共用 collection,應用程式就必須將自己的資料邊界寫入條件,資料庫才會依該範圍執行刪除。Qdrant 官方文件

提交者表示,測試使用官方 SDK 的本機引擎,搭配固定版本的 qdrant-client 1.9.0。共用附件案例在修補前會刪掉另一資料集的兩筆 point,修補後則保留其他資料集及無關資料;完整 provider 測試模組共十六項通過。這些結果來自提交者公布的測試紀錄,尚不能代表雲端後端或完整部署 API 已驗證,文件刪除時的附件清理也屬另一項工作。驗證範圍

對 RAG 團隊而言,依上述重現條件推論,誤刪可能讓未操作的知識庫失去可檢索內容,造成回答依據減少。工程師可優先檢查 collection 共用方式,並以跨資料集重複附件建立刪除回歸案例,核對目標與非目標資料是否都符合預期。

截至查核時,Dify 的 11 月 5 日提交列表已列出這項修補,但 PR 頁仍顯示開啟,兩者狀態不一致。因此,目前可確認的是問題說明與修補方案已公開,尚不宜宣稱某個正式版本已解決;下一步應追蹤合併紀錄、發布標籤及部署環境測試。主分支提交列表

來源

  1. fix(qdrant): scope ID deletion to the dataset — PR #45586
  2. Points:Delete Points
  3. Dify 提交紀錄