如何在使用Next.js中的Langchain文档加载器时修复’fs module not found’错误?

huangapple go评论58阅读模式
英文:

How to fix 'fs module not found' error when using Langchain document loaders in Next.js?

问题

我正在进行一个AI项目。我正在使用Langchain和Next.js 13。

我正在尝试在Langchain中使用文档加载器来加载我的PDF文件,但是当我调用加载器时,例如:

import { PDFLoader } from "langchain/document_loaders/fs/pdf";

立即出现错误:

fs模块未找到

预期结果:

根据Langchain文档,不应该出现此错误,因为它说明API支持Next.js环境。

我尝试过的方法:

我尝试使用一个包(pdf.js)来处理PDF文件的上传和解析,但是这也出现了错误。

如何在Next.js中使用Langchain的文档加载器?

英文:

I am working on an AI project. I am using Langchain and Next.js 13.

I am trying to use the document loaders in langchain to load my PDF, however when I call a loader eg

import { PDFLoader } from "langchain/document_loaders/fs/pdf";

Immediately I get an error:

fs module not found

What I expect:

As per langchain documentation, this should not occur as it states that the APIs support Next.js enviroment.

What I have tried

I have tried using a package(pdf.js) to handle PDF file upload and parsing, but I get an error with this as well.

How can I use langchains document loaders in Next.js?

答案1

得分: 2

我终于明白这里的问题了。

尽管 langchain 保证他们的 API 可以在 Node.js 环境下工作,但需要使用像 pathfs 这样的服务器模块的 API 只能在数据获取工具(如 getServerSideProps)或 next.js 的 API 路由中使用。

一旦我将我的文档加载器移到了 API 路由中,我的问题就得以解决。

英文:

I finally understand the issue here.

While langchain guarantees that their API will work in Node.js environments. APIs that require server modules like path and fs can only work in data fetching tools like getServerSideProps or in API routes of next.js

Once I moved my document loaders to the API route my issue was solved.

huangapple
  • 本文由 发表于 2023年5月29日 03:42:08
  • 转载请务必保留本文链接:https://go.coder-hub.com/76353315.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定