在 LangChain 应用里,使用 CSVLoader 可以载入 csv 文件的内容,把内容转换成一组文档。这里我们需要先给项目安装一个包,在终端,项目所在目录的下面,执行 npm install 安装一下 d3-dsv@2 这个包。
回到项目,在项目的 files 目录里我准备好了一个 csv 文档,它有两栏内容,title 还有 category。打开项目下面的 index.mjs 这个 Node.js 程序文件。
在文件的顶部,导入 CSVLoader ,它来自 langchain/document_loaders/fs/csv。然后声明一个 csvLoader ,新建一个 CSVLoader,指定一下要载入的 csv 文档的路径,当前目录 files 下面的 posts.csv。
然后声明一个 documentsFromCSV,等于 await,用一下 csvLoader.load() 这个方法。在控制台上输出 documentsFromCSV。
在终端,运行一下 node index.mjs。这里输出的就是根据一个 csv 文件生成的文档,文档里的 pageContent 里面的文本,就是一行内容,先是 title 冒号然后是一个标题内容,另起一行,然后是 category 冒号,后面是内容分类的名字。
如果你只想提取其中一栏的内容作为文档的 pageContent 属性的值,在创建这个 CSVLoader 的时候,设置一下需要的栏目的名字,比如 title。
回到终端,再运行一下应用。这回生成的这组文档里面,pageContent 属性的值就会是 csv 文档里的 title 这个栏目的值。