You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Node.js中Langchain相关的ERR_PACKAGE_PATH_NOT_EXPORTED错误?

问题与解决思路

问题详情

使用Node.js结合Langchain开发时,运行代码出现导出路径错误:

业务代码

import "dotenv/config";
import { ChatOpenAI } from "@langchain/openai";

const chatModel = new ChatOpenAI({
  openAIApiKey: process.env.OPENAI_KEY,
});

const response = await chatModel.invoke("hello");
console.log(response);

报错信息

Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './utils/function_calling' is not defined by "exports" in C:\\REWORD\\server\\node_modules\\@langchain\\core\\package.json imported from C:\\REWORD\\server\\node_modules\\@langchain\\openai\\dist\\chat_models.js

当前依赖配置

{
  "dependencies": {
    "@langchain/openai": "^0.0.23",
    "langchain": "^0.1.30",
  },
  "overrides": {
    "@langchain/core": "0.1.5"
  }
}

问题原因

Langchain生态下的各个包(@langchain/core、@langchain/openai、langchain)版本必须严格兼容。当前强制指定了@langchain/core@0.1.5,但搭配的@langchain/openai@0.0.23版本过旧,两者内部导出结构不匹配,导致@langchain/openai找不到@langchain/core中对应的路径。

解决步骤

  1. 移除版本强制覆盖:删除package.json中overrides字段下的@langchain/core配置,让包管理器自动安装与@langchain/openai、langchain匹配的@langchain/core版本。

  2. 清理并重装依赖:

    • 删除项目根目录下的node_modules文件夹
    • 删除package-lock.json(npm)或yarn.lock(yarn)文件
    • 执行npm install或yarn install重新安装依赖
  3. 可选:手动指定兼容版本组合
    若需要固定版本,可将@langchain/openai升级到与langchain@0.1.30兼容的版本,示例配置:

    {
      "dependencies": {
        "@langchain/openai": "^0.1.10",
        "langchain": "^0.1.30"
      }
    }
    

内容的提问来源于stack exchange,提问作者Jhj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 22:09:55