用户登录

我们之前用 HNSWLib 根据一组文本创建了一个 vector store,这些数据可以放在文件里存储起来,使用这些数据文件可以恢复一下这个 vector store。

在这个 Node.js 程序文件里可以声明一个 dataPath,它的值是存储数据的目录,比如当前目录 files 下面的 hnswlib。 在声明这个 vectorStore 的下面,用一下 vectorStore 上的 save 这个方法,把 dataPath 交给这个方法,这样就可以把创建的数据存储到指定的目录的下面。

在终端,运行一下应用,回到项目观察一下,你会发现在 files 下面会有一个 hnswlib 目录,这里的东西就是相关的数据。使用这些数据可以恢复一下 vector store。

在这个程序文件顶部,先导入一个 fs ,它来自 fs 这个模块。在这个 dataPath 的下面再声明一个 dataExist ,它的值用一下 fs.existsSync 这个方法,检查的文件路径先用一下 dataPath,然后是 /docstore.json。

用 let 声明一个 vectorStore,然后 if ,判断一下 !dataExist,如果数据不存在,可以设置一下 vectorStore,它的值就是使用 HNSWLib 上的 fromTexts 根据一组文本创建一个 vector store,下面用 vectorStore.save 把数据保存到文件里。

else,如果数据文件已经存在了,可以设置一下 vectorStore ,它的值等于 await,用一下 HNSWLib 上在的 load 这个方法,把数据目录告诉给这个方法,这里就是 dataPath,然后还需要一个 embeddings。

下面可以在终端,再测试一下,执行 node index.mjs,这里仍然会输出搜索以后找出来的相关的文档。这次应用载入了数据文件以后,创建了一个 vector store ,然后再执行的相关搜索。

HNSWLib:将数据存储在文件里《 LangChain 智能应用开发:文档 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点