Skip to content

NextJS Faiss Error #52

@INIRU

Description

@INIRU

Describe the bug
NextJS Faiss-node error

⨯ Error: Could not import faiss-node. Please install faiss-node as a dependency with, e.g. `npm install -S faiss-node`.

Error: Could not locate the bindings file. Tried:
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/build/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/build/Debug/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/build/Release/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/out/Debug/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/Debug/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/out/Release/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/Release/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/build/default/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/compiled/21.7.3/darwin/arm64/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/addon-build/release/install-root/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/addon-build/debug/install-root/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/addon-build/default/install-root/faiss-node.node
 → /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/faiss-node/lib/binding/node-v120-darwin-arm64/faiss-node.node
    at FaissStore.importFaiss (webpack-internal:///(rsc)/./node_modules/@langchain/community/dist/vectorstores/faiss.js:362:19)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async readIndex (webpack-internal:///(rsc)/./node_modules/@langchain/community/dist/vectorstores/faiss.js:289:37)
    at async Promise.all (index 1)
    at async FaissStore.loadFromPython (webpack-internal:///(rsc)/./node_modules/@langchain/community/dist/vectorstores/faiss.js:292:32)
    at async POST (webpack-internal:///(rsc)/./src/app/api/chatrooms/[id]/conversations/route.ts:49:25)
    at async /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:55759
    at async eO.execute (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:46527)
    at async eO.handle (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:6:57093)
    at async doRender (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/base-server.js:1345:42)
    at async cacheEntry.responseCache.get.routeKind (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/base-server.js:1555:40)
    at async DevServer.renderToResponseWithComponentsImpl (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/base-server.js:1475:28)
    at async DevServer.renderPageComponent (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/base-server.js:1901:24)
    at async DevServer.renderToResponseImpl (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/base-server.js:1939:32)
    at async DevServer.pipeImpl (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/base-server.js:914:25)
    at async NextNodeServer.handleCatchallRenderRequest (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/next-server.js:272:17)
    at async DevServer.handleRequestImpl (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/base-server.js:810:17)
    at async /Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/dev/next-dev-server.js:339:20
    at async Span.traceAsyncFn (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/trace/trace.js:154:20)
    at async DevServer.handleRequest (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/dev/next-dev-server.js:336:24)
    at async invokeRender (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/lib/router-server.js:173:21)
    at async handleRequest (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/lib/router-server.js:350:24)
    at async requestHandlerImpl (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/lib/router-server.js:374:13)
    at async Server.requestListener (/Users/iniru/Documents/MJC-CHAT/mjc-next/node_modules/next/dist/server/lib/start-server.js:141:13)

Environment:

  • Operating system: Mac Seq 15.0 M3 PRO
  • Nodejs Version: v21.7.3
  • Package Version: ^0.5.1

To Reproduce
Steps to reproduce the behavior:

  1. nextJS app route api faissStoreLoad
import createMDX from '@next/mdx';

/** @type {import('next').NextConfig} */
const nextConfig = {
  reactStrictMode: false,
  transpilePackages: ['three', 'next-mdx-remote'],
  pageExtensions: ['js', 'jsx', 'md', 'mdx', 'ts', 'tsx'], // .md 파일도 페이지로 사용할 수 있음.
  images: {
    remotePatterns: [
      {
        protocol: 'https',
        hostname: 'lh3.googleusercontent.com',
      },
    ],
  },
  experimental: {
    serverComponentsExternalPackages: ['faiss-node'],
  },
};

const withMDX = createMDX({});

export default withMDX(nextConfig);

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions