-
Notifications
You must be signed in to change notification settings - Fork 19
Open
Labels
bugSomething isn't workingSomething isn't workingwaiting for responseReplied, and waiting for responseReplied, and waiting for response
Description
Describe the bug
Trying to run the following code...
import { FaissStore } from "langchain/vectorstores/faiss";
import { OpenAIEmbeddings } from "langchain/embeddings/openai";
const vectorStore = await FaissStore.loadFromPython('./data/saved_index/', new OpenAIEmbeddings());
const results = await vectorStore.similaritySearch(query, 5);
Fails with the following Error on macOS 10.15.7
Uncaught (in promise) TRPCClientError: Could not import faiss-node. Please install faiss-node as a dependency with, e.g. `npm install -S faiss-node` and make sure you have `libomp` installed in your path.
Error: dlopen(/Users/michael/Workspace/potteryhelper.com/node_modules/faiss-node/build/Release/faiss-node.node, 1): Symbol not found: __ZNKSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE3strEv
Referenced from: /Users/michael/Workspace/potteryhelper.com/node_modules/faiss-node/build/Release/faiss-node.node (which was built for Mac OS X 12.6)
Expected in: /usr/lib/libc++.1.dylib
at TRPCClientError.from (transformResult-6fb67924.mjs?v=5f4c615b:4:20)
at httpBatchLink.mjs?v=5f4c615b:190:56
from @ transformResult-6fb67924.mjs?v=5f4c615b:4
(anonymous) @ httpBatchLink.mjs?v=5f4c615b:190
Promise.catch (async)
callWithAsyncErrorHandling @ runtime-core.esm-bundler.js:168
invoker @ runtime-dom.esm-bundler.js:345
and this error on Netlify...
May 29, 12:37:31 AM: 36d0dca3 INFO Could not import faiss-node. Please install faiss-node as a dependency with, e.g. `npm install -S faiss-node` and make sure you have `libomp` installed in your path.
Error: libgomp.so.1: cannot open shared object file: No such file or directory
Environment:
- Operating system: macOS 10.15.7
- Nodejs Version: v18.12.1
- Package Version: [e.g. v0.2.0]
To Reproduce
Steps to reproduce the behavior:
- npm install faiss-node and "langchain": "^0.0.84"
- run the above code
Expected behavior
index is rebuilt from python files and returns data
Screenshots
Additional context
I was able to get my local environment running by
- git checkout faiss-node & npm install
- Upgrade my CMake
- npm run build
- npm link
- then back in my project... npm link faiss-node... effectively swapping out the locally built module for my project and it's dependencies
So I guess it's just an issue with compiling the library for older versions of macOS?
Here are my package.json dependencies
"dependencies": {
"@pinia/nuxt": "^0.4.6",
"@trpc/client": "^10.9.0",
"@trpc/server": "^10.9.0",
"daisyui": "^2.51.5",
"faiss-node": "^0.2.0",
"generate-password-ts": "^1.6.3",
"langchain": "^0.0.84",
"openai": "^3.2.1",
"pickleparser": "^0.1.0",
"pinia": "^2.0.30",
"stripe": "^11.12.0",
"superjson": "^1.12.2",
"trpc-nuxt": "^0.8.0",
"zod": "^3.20.2"
},
and faiss-node in my package-lock.json...
"node_modules/faiss-node": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/faiss-node/-/faiss-node-0.2.0.tgz",
"integrity": "sha512-4HNyK0WX26OTb4UbaJh810wY6gCYag53NssjMKCA9GT37bP0reGXz6YGOBjpbC/EzqJlYvsqKcDIzbJSfkTieg==",
"hasInstallScript": true,
"dependencies": {
"bindings": "^1.5.0",
"node-addon-api": "^6.0.0",
"prebuild-install": "^7.1.1"
},
"engines": {
"node": ">= 14.0.0"
}
},
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingwaiting for responseReplied, and waiting for responseReplied, and waiting for response