ewfian / faiss-node

Node.js bindings for faiss
https://www.npmjs.com/package/faiss-node
MIT License
107 stars 10 forks source link

IndexHNSW support #47

Open asilvas opened 11 months ago

asilvas commented 11 months ago

This PR also includes new patterns for:

asilvas commented 11 months ago

Not sure I understand the build failures as IndexHNSW doesn't seem defined in the bindings somehow. Works great locally.

Seems like it might be related to this command:

npm info run faiss-node@0.5.0 install node_modules/faiss-node prebuild-install --runtime napi --verbose || (npm i cmake-js && npm run build)

It doesn't appear to actually be building, and instead using an older build artifact. Might be related to other build failures too. This is confirmed if you look at the unit test jobs which do pass because they're invoking a build.

ewfian commented 11 months ago

Not sure I understand the build failures as IndexHNSW doesn't seem defined in the bindings somehow. Works great locally.

Seems like it might be related to this command:

npm info run faiss-node@0.5.0 install node_modules/faiss-node prebuild-install --runtime napi --verbose || (npm i cmake-js && npm run build)

It doesn't appear to actually be building, and instead using an older build artifact. Might be related to other build failures too. This is confirmed if you look at the unit test jobs which do pass because they're invoking a build.

Yes, these two pipelines do use old build. The purpose is to confirm that the packages to be released can be installed and imported correctly in various environments. I would move these two builds to run on release(on push tags) rather than in every PR. (See :https://github.com/ewfian/faiss-node/pull/45/commits/4b57bc41bda10cf7da825f4db8076dc37b750dbf) And, I'm considering adding Window and Linux environments in Unit Test Pipelines