如何安装和管理依赖项¶
LangGraph.js 是 LangChain 生态系统的一部分,其中包括主要 langchain
包以及包含与各个第三方提供商集成的包。它们可以像 @langchain/anthropic
一样具体,该包仅包含 Anthropic 聊天模型的集成,或者像 @langchain/community
一样广泛,该包包含各种社区贡献的集成。
这些包以及 LangGraph.js 本身都依赖于 @langchain/core
,该包包含这些包扩展的基本抽象。
为了确保所有集成及其类型能够正确地相互交互,重要的是它们都使用相同版本的 @langchain/core
。安装 LangGraph 时,也应同时安装 @langchain/core
$ npm install @langchain/langgraph @langchain/core
@langchain/core
必须单独安装,因为它 是 @langchain/langgraph
的对等依赖项。这样做是为了帮助包管理器解析 @langchain/core
的单个版本。尽管如此,在某些情况下,您的包管理器可能会解析多个版本的 core,这可能导致意外的 TypeScript 错误或其他奇怪的行为。
保证只有一个版本的 @langchain/core
的最佳方法是在项目的 package.json
中添加 "resolutions"
或 "overrides"
字段。特定字段名称将取决于您的包管理器。以下是一些示例
提示
yarn
或 pnpm
的 resolutions
或 pnpm.overrides
字段必须在根 package.json
文件中设置。
Also note that we specify EXACT versions for 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 生态系统包一起使用的特殊注意事项。
接下来,查看 一些关于核心功能的操作指南。