如何安装和管理依赖¶
LangGraph.js 是 LangChain 生态系统的一部分,该生态系统包括主要的 langchain
包以及包含与各个第三方提供商集成的包。这些包可以非常具体,例如 @langchain/anthropic
,它只包含 Anthropic 聊天模型的集成,也可以很广泛,例如 @langchain/community
,它包含更广泛的社区贡献的集成。
这些包以及 LangGraph.js 本身都依赖于 @langchain/core
,后者包含这些包扩展的基础抽象。
为了确保所有集成及其类型能够正确地相互作用,重要的是它们都使用相同版本的 @langchain/core
。安装 LangGraph 时,您也应该同时安装 @langchain/core
。
@langchain/core
必须单独安装,因为它是 @langchain/langgraph
的对等依赖。这有助于包管理器解析 @langchain/core
的单个版本。
尽管如此,在某些情况下,您的包管理器可能会解析多个版本的 core,这可能导致意外的 TypeScript 错误或其他奇怪的行为。如果您需要确保只拥有一个版本的 @langchain/core
,可以在项目的 package.json
中添加一个 "resolutions"
或 "overrides"
字段。具体的字段名称取决于您的包管理器。以下是一些示例:
提示
yarn
或 pnpm
的 resolutions
或 pnpm.overrides
字段必须设置在根目录的 package.json
文件中。另请注意,我们在 resolutions 中指定精确版本。
如果您使用 yarn
,应设置 "resolutions"
{
"name": "your-project",
"version": "0.0.0",
"private": true,
"engines": {
"node": ">=18"
},
"dependencies": {
"@langchain/anthropic": "^0.2.15",
"@langchain/langgraph": "^0.2.0"
},
"resolutions": {
"@langchain/core": "0.2.31"
}
}
对于 npm
,使用 "overrides"
{
"name": "your-project",
"version": "0.0.0",
"private": true,
"engines": {
"node": ">=18"
},
"dependencies": {
"@langchain/anthropic": "^0.2.15",
"@langchain/langgraph": "^0.2.0"
},
"overrides": {
"@langchain/core": "0.2.31"
}
}
对于 pnpm
,使用嵌套的 "pnpm.overrides"
字段
{
"name": "your-project",
"version": "0.0.0",
"private": true,
"engines": {
"node": ">=18"
},
"dependencies": {
"@langchain/anthropic": "^0.2.15",
"@langchain/langgraph": "^0.2.0"
},
"pnpm": {
"overrides": {
"@langchain/core": "0.2.31"
}
}
}
下一步¶
您现在已经了解了在使用 LangGraph.js 与其他 LangChain 生态系统包时的一些特殊注意事项。
接下来,请查看 关于核心功能的一些操作指南。