針對學術文獻逐條執行多源交叉驗證,逐欄位比對作者、標題、年份、卷期、頁碼,標記卷年/DOI年衝突、作者順序異常、頁碼偏差等問題,輸出結構化驗證報告。可批次處理整篇論文/論文計畫書的參考文獻列表,也可單條檢核,支援與 Zotero 同步修正。
nature-ref-verifier — 學術參考文獻多源驗證技能
觸發詞
verify references、校驗文獻、check references、核對參考文獻、文獻驗證、ref check
適用場景
- 論文計畫書/論文提交前,對全部參考文獻進行最終核查
- 收到審查意見指出引用錯誤時,精準定位問題
- 從舊專案遷移參考文獻至新論文時,批次驗證有效性
- Zotero 資料庫定期健康檢查
工作流程
Step 1: 解析輸入
支援三種輸入格式:
A. 整篇論文/論文計畫書
- 擷取所有
[N]編號的參考文獻列表 - 自動識別每條的 DOI(如有)
B. 單條參考文獻
- 使用者直接貼上一條引用文字
- 或傳入 Zotero item key
C. BibTeX 檔案
- 直接解析
.bib,逐條檢核
Step 2: 多源並行查詢
Step 2.0(最便宜、最先做):DOI 可解析性檢查。 對每條有 DOI 的文獻先請求 https://api.crossref.org/works/<DOI>:404 → DOI 本身錯誤(高度疑似錯號);200 → 比對回傳紀錄的標題/作者/卷期頁與條目,不一致即「DOI 張冠李戴」。單次請求即可發現實務中最常見的一類錯誤(一次 35 條核查中 7/9 的錯誤屬於此類)。
對每條文獻,並行查詢以下來源(可用哪些取決於環境設定):
| 來源 | 適用文獻 | 典型覆蓋率 |
|---|---|---|
| Crossref | 有 DOI 的外文期刊 | ~70%(IEEE 老舊文獻、中文期刊常有缺漏) |
| IEEE Xplore | IEEE 期刊/會議 | IEEE DOI 404 時的備選 |
| WebSearch (Bing/Google) | 無 DOI 或來源缺漏的文獻 | 備回方案 |
| CNKI/萬方 (kimi-datasource / webbridge) | 中文期刊、學位論文 | 中文文獻必查 |
| Zotero 本地庫 (zotero-mcp) | 已入庫文獻 | 快速比對已有資料 |
查詢策略: 優先用 DOI 查詢 Crossref,失敗後退回使用標題+作者搜尋 Web。
批次策略: 超過 20 條時按 10–15 條一組拆分給並行子 Agent,每組獨立查詢後彙整——35 條規模實測 3 個並行子 Agent 即可在一次往返內完成,循序處理會慢上一個數量級。
Step 3: 欄位級比對
對每條文獻執行以下比對矩陣,按嚴重程度分為三級:
🔴 Critical(必須修正)
| 檢查項 | 說明 | 典型案例 |
|---|---|---|
| 作者姓名/順序不一致 | 第一作者不同、順序顛倒、完全編造 | Smogavec→Leckebusch、Vainikainen→Mikhnev |
| 作者漏列 | 條目作者數少於出版方紀錄(常見於 5+ 作者文獻只列前 3-4 人) | TGRS 2019 PCA 文漏列第 5 作者 Ge;TAES 2021 UAV 文漏列第 5 作者 Kim |
| 頁碼差異 ≥5 | 頁碼完全不符合 | Noon: 1309-1319→1444-1449 |
| 文章號字母誤判 | 文章號含字母被寫成形近數字(T/7、l/1、O/0) | SPIE 101880T 誤作 1018807 |
| 標題核心詞不一致 | 非大小寫/標點符號差異 | Iwasaki T→Wu K H、Zhang W→Zhu M H |
| DOI 指向不同論文 | DOI 存在但標題/作者不對應 | Abidi 1995: 10.1109/4.482157→10.1109/4.482187 |
| DOI 張冠李戴 | DOI 可解析但解析到另一篇論文(比對標題作者即可發現) | JAG 2017 SVD 文 DOI 指向同卷 ERT 論文;AST 2022 旋翼文 DOI 指向渦輪噪音論文 |
🟡 Warning(建議核對)
| 檢查項 | 說明 | 典型案例 |
|---|---|---|
| 卷年 ≠ DOI 年 | 卷歸屬年份與 DOI 編號年不一致 | Dadrass 卷2025/上線2024、Ni 卷2022/DOI含2020 |
| Early Access 元資料漂移 | IEEE 等期刊 Early Access 轉正式出版後卷/期/頁/年份變化,以 CrossRef 現有值為準 | TGRS autoencoder 文 59(12):10437-10449,2021 → 60:1-13,2022 |
| 作者中間名缺失/多餘 | "Rabiner L" vs "Rabiner L R" | 一般不影響檢索 |
| 期號缺失 | 腳本有卷無期 | Smogavec 2025: 17→17(10) |
| 頁碼偏差 ≤4 | 細微差異 | Leckebusch 15-24→15-25 |
| 出版社名寫法差異 | "IET" vs "IEE" | 歷史名稱變更 |
🟢 Info(僅供參考)
| 檢查項 | 說明 |
|---|---|
| 標題大小寫不同 | Title Case vs Sentence case |
| 期刊名縮寫 vs 全稱 | "IEEE Trans. AES" vs "IEEE Transactions on Aerospace and Electronic Systems" |
| 標點/連接詞差異 | "and" vs "&" 等 |
Step 4: 信心度評估
每條文獻最終給出一個綜合信心度:
| 等級 | 涵義 |
|---|---|
| ✅ Verified | 多源一致,無須修改 |
| ⚠️ Check suggested | 存在 🟡 級差異,需人工判斷 |
| ❌ Needs fix | 存在 🔴 級差異,必須更正 |
| ❓ Unverifiable | 所有來源均無法查到(如內部報告、老舊學位論文) |
Step 5: 輸出報告
支援以下輸出格式:
Markdown 摘要報告:
## 驗證結果:56 條文獻
- ✅ Verified: 42
- ⚠️ Check suggested: 8
- ❌ Needs fix: 4
- ❓ Unverifiable: 2
### ❌ 必須修正
| # | 問題 | 當前值 | 正確值 | 來源 |
|---|------|--------|--------|------|
| [6] | 作者錯誤 | Smogavec P | Leckebusch J | Wiley |
| [42] | 作者順序顛倒 | Vainikainen P… | Mikhnev V A… | IEEE |
### ⚠️ 建議核對
| # | 問題 | 詳情 |
|---|------|------|
| [18] | 卷年/DOI年不一致 | 卷年2025,DOI年2024 |
BibTeX Patch: 直接生成修正後的 .bib 檔案內容。
Zotero 更新指令: 生成修正指令列表,用於批次修正 Zotero 資料庫。注意寫入路徑的限制(2026 年實測):
- Zotero 7 本地 HTTP API(localhost:23119)唯讀——寫入操作回傳 501,zotero-mcp 類整合不穩定多源於此層包裝或 Zotero 忙碌,直連 curl 加
--max-time探測即可判斷; - 批次寫入首選 pyzotero Web 模式(需 userID + API key,全功能 CRUD,內建 429 退避);
- 無 key 時可用本地
/connector/saveItems端點新增條目(無法修改已有條目); - 直接修改
zotero.sqlite僅在 Zotero 關閉後可行,且需手動維護多表關聯與版本號,僅作為最後手段; - 修正前先確認條目在資料庫中:按標題檢索為空則說明 bib 另有來源(如文獻管理 CSV),Zotero 側無須修正。
多來源交叉驗證策略
┌─────────────┐
│ 使用者輸入 │
│ DOI/標題 │
└──────┬──────┘
│
▼
┌─────────────┐
│ 欄位拆分 │
│ author/title │
│ year/vol/pg │
└──────┬──────┘
│
┌──────────────┼──────────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ CrossRef │ │ IEEE │ │ WebSearch│
│ (DOI) │ │ Xplore │ │ (Bing/GG)│
└────┬─────┘ └────┬─────┘ └────┬─────┘
│ │ │
▼ ▼ ▼
┌──────────────────────────────────────┐
│ 欄位級比對 + 差異評級 │
│ author / title / year / vol / issue │
│ pages / DOI / journal │
└────────────────┬─────────────────────┘
│
▼
┌────────────────┐
│ 信心度評估 │
│ ✅ ⚠️ ❌ ❓ │
└────────────────┘
已知局限與對策
| 局限 | 對策 |
|---|---|
| 中文 DOI 不在 Crossref 中 | 退回至 CNKI/萬方(透過 webbridge 或 WebSearch) |
| IEEE 老舊文獻 DOI 回傳 404 | 用 IEEE Xplore 直接搜尋(其 DOI 未在 Crossref 註冊) |
| 學位論文無 DOI | 用 CNKI / 萬方 / ProQuest 驗證標題+作者+年份 |
| 產品手冊/專利 | 不驗證元資料,僅確認來源可存取 |
| Google 學術搜尋不到部分文獻 | 切換搜尋引擎(Bing、百度學術、Semantic Scholar) |
環境依賴
以下工具為選配,有則啟用、無則降級:
pyzotero[cli]:推薦的 Zotero 讀寫通道(本地唯讀 + Web 讀寫雙模式,CLI 可直接被 Agent 以 Bash 呼叫,無常駐程序)zotero-cli/zotero-mcp:Zotero 資料庫讀寫(本地包裝層,實測穩定度較差)kimi-datasource(scholar):學術搜尋kimi-webbridge:帶登入狀態的 CNKI 查詢- 基礎 WebSearch / FetchURL:通用備回方案






