預設資料載入器錯誤 - 僅限 pdf-parse v1

描述問題/錯誤/問題

無法載入 pdf-parse。此載入器目前僅支援 pdf-parse v1。請安裝 v1,例如 npm install pdf-parse@^1(v2 尚未支援)。
無法載入 pdf-parse。此載入器目前僅支援 pdf-parse v1。請安裝 v1,例如 npm install pdf-parse@^1(v2 尚未支援)。

使用「預設資料載入器」節點將 PDF 文件讀入簡單向量資料庫時,我收到上述錯誤。我是 n8n 訂閱者,使用他們的雲端瀏覽器解決方案。因此我無法控制執行時環境。

錯誤訊息是什麼(如有的話)?

無法載入 pdf-parse。此載入器目前僅支援 pdf-parse v1。請安裝 v1,例如 npm install pdf-parse@^1(v2 尚未支援)。無法載入 pdf-parse。此載入器目前僅支援 pdf-parse v1。請安裝 v1,例如 npm install pdf-parse@^1(v2 尚未支援)。

請分享你的工作流程

(在畫布上選擇節點並使用鍵盤快捷鍵 CMD+C/CTRL+C 和 CMD+V/CTRL+V 來複製和貼上工作流程。)

分享最後一個節點返回的輸出

關於你的 n8n 設定的資訊

  • n8n 版本:
  • 資料庫(預設:SQLite):
  • n8n EXECUTIONS_PROCESS 設定(預設:own、main):
  • 執行 n8n 的方式(Docker、npm、n8n cloud、桌面應用程式):
  • 作業系統:

這是最近在 n8n 核心平台更新中引入的已知錯誤。在過去幾週內,n8n 社區論壇和 GitHub 上的多個使用者報告了相同的 pdf-parse 依賴項衝突。

替代方案或解決方法:

  • 從您目前的預設資料加載程序節點刪除或斷開 PDF 二進位輸入。
  • 在您的 PDF 來源之後立即新增「從檔案提取」節點。
  • 將操作設定為「從檔案讀取文字」。
  • 在您的預設資料加載程序節點中,將資料類型從 Binary 變更為 JSONText
  • 將來自從檔案提取節點的提取文字輸出字串對應到加載程序中。

希望對您有幫助

既然你使用的是 n8n 雲端版本,就不需要擔心手動安裝套件 — @SE-automations 所描述的解決方案(Extract From File → 將文字作為 JSON/Text 傳入 Default Data Loader)是你目前最好的選擇。

還有一件事:我建議在 https://support.n8n.io 開啟支援工單,並提及此 pdf-parse v2 不相容的問題。n8n 雲端版本是一個託管環境,所以工程團隊可以追蹤此問題,並在下一個雲端版本中優先處理修復。自我回報可以幫助他們瞭解有多少使用者受到影響。

@atawfic ,如果你想要的話,PDF API Hub 提供 PDF 解析功能,支援文字型或掃描 PDF(使用 tesseract)。

以下是工作流程:

n8n - 官方核准節點:

這確實解決了我的問題。感謝你的及時回覆。

建議的解決方案確實有效。我也已向支援團隊回報了這個問題。

謝謝你!

如果您仍然看到此問題,升級應該可以解決。

早安,既然你在 n8n Cloud 上,你說得沒錯,你無法手動安裝套件,所以那個錯誤訊息在你的情況下確實有點誤導人。好消息是有一個解決方案完全不需要觸碰執行時環境。

試試在節點內切換 PDF 加載器:

在你的預設資料加載器節點中,與其直接使用 PDF 加載器,試試這個方法:

  1. 在預設資料加載器之前,加入一個從磁碟讀取/寫入檔案節點(或如果你是透過 HTTP/webhook 取得 PDF,確保它以二進位資料的形式傳遞)

  2. 在預設資料加載器中,檢查你是否可以切換**「資料類型」來使用不同的加載器——有些用戶在使用「二進位」**選項而非專用 PDF 加載器時取得了成功,這樣可以完全繞過 pdf-parse 依賴

如果那不行,另一個方法:

先透過 HTTP 請求節點從檔案擷取節點來路由你的 PDF,以提取原始文字,然後在加載器中使用**「文字」**資料類型將該純文字輸入到向量存儲。這是額外的一步,但完全避免了 pdf-parse 問題。

**這是 n8n cloud 環境,**他們的雲端執行時環境似乎已經採用了 pdf-parse v2,這導致了節點損毀。值得直接向 n8n 提出支援工單,這樣他們可以在他們那邊進行修補,因為其他雲端用戶可能也遇到同樣的問題。