langchain-dependencies by langchain-ai/langchain-skills
npx skills add https://github.com/langchain-ai/langchain-skills --skill langchain-dependencies核心原则:
| 要求 | Python | TypeScript / Node |
|---|---|---|
| 运行时最低版本 | Python 3.10+ | Node.js 20+ |
| LangChain | 1.0+ (LTS) | 1.0+ (LTS) |
| LangSmith SDK | >= 0.3.0 | >= 0.3.0 |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 框架 | 使用场景 | 核心额外包 |
|---|
| LangGraph | 需要细粒度的图控制、自定义工作流、循环或分支 | langgraph / @langchain/langgraph |
| Deep Agents | 希望开箱即用地获得规划、记忆、文件上下文和技能 | deepagents(依赖于 LangGraph;会将其作为传递依赖安装) |
两者都构建在 langchain + langchain-core + langsmith 之上。
| 包 | 作用 | 最低版本 |
|---|---|---|
langchain | 智能体、链、检索 | 1.0 |
langchain-core | 基础类型与接口(对等依赖) | 1.0 |
langsmith | 追踪、评估、数据集 | 0.3.0 |
| 包 | 使用场景 | 最低版本 |
|---|---|---|
langgraph | 直接构建自定义图 | 1.0 |
deepagents | 使用 Deep Agents 框架 | latest |
| 包 | 供应商 |
|---|---|
langchain-openai | OpenAI (GPT-4o, o3, …) |
langchain-anthropic | Anthropic (Claude) |
langchain-google-genai | Google (Gemini) |
langchain-mistralai | Mistral |
langchain-groq | Groq (快速推理) |
langchain-cohere | Cohere |
langchain-fireworks | Fireworks AI |
langchain-together | Together AI |
langchain-huggingface | Hugging Face Hub |
langchain-ollama | Ollama (本地模型) |
langchain-aws | AWS Bedrock |
langchain-azure-ai | Azure AI Foundry |
这些包有更严格的兼容性要求——除非有特定原因,否则请使用可用的最新版本。
| 包 | 添加功能 | 备注 |
|---|---|---|
langchain-tavily | Tavily 网络搜索 (TavilySearch) | 专用集成包;建议使用最新版 |
langchain-text-splitters | 文本分块工具 | 遵循语义化版本控制,保持最新 |
langchain-community | 1000+ 集成(备用) | 不遵循语义化版本控制 — 固定到次要版本系列 |
faiss-cpu | FAISS 向量存储(本地) | 通过 langchain-community;使用最新版 |
langchain-chroma | Chroma 向量存储 | 专用集成包;建议使用最新版 |
langchain-pinecone | Pinecone 向量存储 | 专用集成包;建议使用最新版 |
langchain-qdrant | Qdrant 向量存储 | 专用集成包;建议使用最新版 |
langchain-weaviate | Weaviate 向量存储 | 专用集成包;建议使用最新版 |
langsmith[pytest] | LangSmith 的 pytest 插件 | 需要 langsmith >= 0.3.4 |
langchain-community 稳定性说明: 此包不遵循语义化版本控制。次要版本更新可能包含破坏性变更。当存在专用集成包时(例如
langchain-chroma、langchain-tavily),请优先使用它们——它们是独立版本控制且更稳定。
| 包 | 作用 | 最低版本 |
|---|---|---|
@langchain/core | 基础类型与接口(对等依赖) | 1.0 |
langchain | 智能体、链、检索 | 1.0 |
langsmith | 追踪、评估、数据集 | 0.3.0 |
| 包 | 使用场景 | 最低版本 |
|---|---|---|
@langchain/langgraph | 直接构建自定义图 | 1.0 |
deepagents | 使用 Deep Agents 框架 | latest |
| 包 | 供应商 |
|---|---|
@langchain/openai | OpenAI (GPT-4o, o3, …) |
@langchain/anthropic | Anthropic (Claude) |
@langchain/google-genai | Google (Gemini) |
@langchain/mistralai | Mistral |
@langchain/groq | Groq (快速推理) |
@langchain/cohere | Cohere |
@langchain/aws | AWS Bedrock |
@langchain/azure-openai | Azure OpenAI |
@langchain/ollama | Ollama (本地模型) |
| 包 | 添加功能 | 备注 |
|---|---|---|
@langchain/tavily | Tavily 网络搜索 (TavilySearch) | 专用集成包;建议使用最新版 |
@langchain/community | 广泛的社区集成集合 | 谨慎使用;优先选择专用包 |
@langchain/pinecone | Pinecone 向量存储 | 专用集成包;建议使用最新版 |
@langchain/qdrant | Qdrant 向量存储 | 专用集成包;建议使用最新版 |
@langchain/weaviate | Weaviate 向量存储 | 专用集成包;建议使用最新版 |
@langchain/core必须在 yarn workspaces 和 monorepos 中显式安装——它是一个对等依赖项,并不总是会自动提升。
</python>
</ex-langgraph-python>
<ex-langgraph-typescript>
<typescript>
LangGraph 项目(与供应商无关)的最小 package.json 依赖项。
```json
{
"dependencies": {
"@langchain/core": "^1.0.0",
"langchain": "^1.0.0",
"@langchain/langgraph": "^1.0.0",
"langsmith": "^0.3.0"
}
}
</python>
</ex-deepagents-python>
<ex-deepagents-typescript>
<typescript>
Deep Agents 项目(与供应商无关)的最小 package.json 依赖项。
```json
{
"dependencies": {
"deepagents": "latest",
"@langchain/core": "^1.0.0",
"langchain": "^1.0.0",
"langsmith": "^0.3.0"
}
}
langchain-tavily # 使用最新版;合作伙伴包,遵循语义化版本控制
langchain-chroma # 使用最新版;合作伙伴包,遵循语义化版本控制
langchain-text-splitters # 使用最新版;遵循语义化版本控制
</python>
</ex-with-tools-python>
<ex-with-tools-typescript>
<typescript>
将 Tavily 搜索和一个向量存储添加到 LangGraph 项目。
```json
{
"dependencies": {
"@langchain/core": "^1.0.0",
"langchain": "^1.0.0",
"@langchain/langgraph": "^1.0.0",
"langsmith": "^0.3.0",
"@langchain/tavily": "latest",
"@langchain/pinecone": "latest"
}
}
| 包组 | 版本控制 | 安全升级策略 |
|---|---|---|
langchain, langchain-core | 严格的语义化版本控制 (1.0 LTS) | 允许次要版本:>=1.0,<2.0 |
langgraph / @langchain/langgraph | 严格的语义化版本控制 (v1 LTS) | 允许次要版本:>=1.0,<2.0 |
langsmith | 严格的语义化版本控制 | 允许次要版本:>=0.3.0 |
专用集成包(例如 langchain-tavily, langchain-chroma) | 独立版本控制 | 允许次要版本更新;使用最新版 |
langchain-community | 不遵循语义化版本控制 | 固定到确切的次要版本系列:>=0.4.0,<0.5.0 |
deepagents | 遵循项目发布 | 在生产环境中固定到经过测试的版本 |
对于所有遵循语义化版本控制的包,破坏性变更只发生在主版本更新中(1.x → 2.x)。已弃用的功能在整个 1.x 系列中仍可运行,但会带有警告。
优先选择专用集成包而非 langchain-community。 当存在专用包时(例如使用 langchain-chroma 而不是 langchain-community 中的 Chroma 集成),请使用它——专用包是独立版本控制且经过更好的测试。
社区工具包(Tavily、向量存储等)应保持最新,除非您的项目需要锁定环境。这些包经常随 LangChain/LangGraph 更新发布兼容性修复。
# LangSmith(始终推荐用于可观测性)
LANGSMITH_API_KEY=<your-key>
LANGSMITH_PROJECT=<project-name> # 可选,默认为 "default"
# 模型供应商 — 设置您使用的
OPENAI_API_KEY=<your-key>
ANTHROPIC_API_KEY=<your-key>
GOOGLE_API_KEY=<your-key>
MISTRAL_API_KEY=<your-key>
GROQ_API_KEY=<your-key>
COHERE_API_KEY=<your-key>
FIREWORKS_API_KEY=<your-key>
TOGETHER_API_KEY=<your-key>
HUGGINGFACEHUB_API_TOKEN=<your-key>
# 常用工具/检索服务
TAVILY_API_KEY=<your-key> # 用于 Tavily 搜索
PINECONE_API_KEY=<your-key> # 用于 Pinecone
langchain>=1.0,<2.0
</fix-legacy-version>
<fix-community-unpinned>
`langchain-community` 可能在次要版本更新时发生破坏性变更——它不遵循语义化版本控制。
langchain-community>=0.4
langchain-community>=0.4.0,<0.5.0
如果存在等效的专用集成包(例如使用 `langchain-chroma` 替代社区版 Chroma 集成),也请考虑切换到它。
</fix-community-unpinned>
<fix-community-tool-outdated>
像 `langchain-tavily` 和向量存储集成这样的社区工具包会随 LangChain 更新发布兼容性修复。使用旧的固定版本可能导致导入错误或工具模式损坏。
langchain-tavily==0.0.1
langchain-tavily>=0.1
</fix-community-tool-outdated>
<fix-community-import-deprecated>
许多过去位于 `langchain-community` 中的工具现在有了具有更新导入路径的专用包。始终优先使用专用包的导入路径。
```python
# 错误 — 已弃用的社区导入路径
from langchain_community.tools.tavily_search import TavilySearchResults
from langchain_community.tools import WikipediaQueryRun
from langchain_community.vectorstores import Chroma
from langchain_community.vectorstores import Pinecone
# 正确 — 使用专用包导入
from langchain_tavily import TavilySearch # pip: langchain-tavily (TavilySearchResults 已弃用)
from langchain_community.tools import WikipediaQueryRun # 尚无专用包
from langchain_chroma import Chroma # pip: langchain-chroma
from langchain_pinecone import PineconeVectorStore # pip: langchain-pinecone
要查找任何集成的当前规范导入路径,请搜索集成目录:https://python.langchain.com/docs/integrations/tools/
每个条目都显示了正确的包和导入路径。如果存在专用包,请使用它——社区路径可能仍然有效,但被视为遗留路径。
// 正确:始终显式列出 @langchain/core { "dependencies": { "@langchain/core": "^1.0.0", "@langchain/langgraph": "^1.0.0" } }
</typescript>
</fix-core-not-installed>
<fix-python-version>
<python>
LangChain 1.0 不支持 Python 3.9 及以下版本。
```python
# 在安装前验证
import sys
assert sys.version_info >= (3, 10), "LangChain 1.0 需要 Python 3.10+"
每周安装量
2.3K
仓库
GitHub 星标数
423
首次出现
2026年3月4日
安全审计
安装于
claude-code1.9K
codex1.8K
cursor1.8K
github-copilot1.8K
opencode1.8K
gemini-cli1.7K
Key principles:
| Requirement | Python | TypeScript / Node |
|---|---|---|
| Runtime minimum | Python 3.10+ | Node.js 20+ |
| LangChain | 1.0+ (LTS) | 1.0+ (LTS) |
| LangSmith SDK | >= 0.3.0 | >= 0.3.0 |
| Framework | When to use | Core extra package |
|---|---|---|
| LangGraph | Need fine-grained graph control, custom workflows, loops, or branching | langgraph / @langchain/langgraph |
| Deep Agents | Want batteries-included planning, memory, file context, and skills out of the box | deepagents (depends on LangGraph; installs it as a transitive dep) |
Both sit on top of langchain + langchain-core + langsmith.
| Package | Role | Min version |
|---|---|---|
langchain | Agents, chains, retrieval | 1.0 |
langchain-core | Base types & interfaces (peer dep) | 1.0 |
langsmith | Tracing, evaluation, datasets | 0.3.0 |
| Package | Use when | Min version |
|---|---|---|
langgraph | Building custom graphs directly | 1.0 |
deepagents | Using the Deep Agents framework | latest |
| Package | Provider |
|---|---|
langchain-openai | OpenAI (GPT-4o, o3, …) |
langchain-anthropic | Anthropic (Claude) |
langchain-google-genai | Google (Gemini) |
langchain-mistralai | Mistral |
langchain-groq | Groq (fast inference) |
langchain-cohere | Cohere |
These packages have tighter compatibility requirements — use the latest available version unless you have a specific reason not to.
| Package | Adds | Notes |
|---|---|---|
langchain-tavily | Tavily web search (TavilySearch) | Dedicated integration package; prefer latest |
langchain-text-splitters | Text chunking utilities | Semver, keep current |
langchain-community | 1000+ integrations (fallback) | NOT semver — pin to minor series |
faiss-cpu | FAISS vector store (local) | Via langchain-community; use latest |
langchain-community stability note: This package is NOT on semantic versioning. Minor releases can contain breaking changes. Prefer dedicated integration packages (e.g.
langchain-chroma,langchain-tavily) when they exist — they are independently versioned and more stable.
| Package | Role | Min version |
|---|---|---|
@langchain/core | Base types & interfaces (peer dep) | 1.0 |
langchain | Agents, chains, retrieval | 1.0 |
langsmith | Tracing, evaluation, datasets | 0.3.0 |
| Package | Use when | Min version |
|---|---|---|
@langchain/langgraph | Building custom graphs directly | 1.0 |
deepagents | Using the Deep Agents framework | latest |
| Package | Provider |
|---|---|
@langchain/openai | OpenAI (GPT-4o, o3, …) |
@langchain/anthropic | Anthropic (Claude) |
@langchain/google-genai | Google (Gemini) |
@langchain/mistralai | Mistral |
@langchain/groq | Groq (fast inference) |
@langchain/cohere | Cohere |
| Package | Adds | Notes |
|---|---|---|
@langchain/tavily | Tavily web search (TavilySearch) | Dedicated integration package; prefer latest |
@langchain/community | Broad set of community integrations | Use sparingly; prefer dedicated packages |
@langchain/pinecone | Pinecone vector store | Dedicated integration package; prefer latest |
@langchain/qdrant | Qdrant vector store | Dedicated integration package; prefer latest |
@langchain/coremust be installed explicitly in yarn workspaces and monorepos — it is a peer dependency and will not always be hoisted automatically.
</python>
</ex-langgraph-python>
<ex-langgraph-typescript>
<typescript>
Minimal package.json dependencies for a LangGraph project (provider-agnostic).
```json
{
"dependencies": {
"@langchain/core": "^1.0.0",
"langchain": "^1.0.0",
"@langchain/langgraph": "^1.0.0",
"langsmith": "^0.3.0"
}
}
</python>
</ex-deepagents-python>
<ex-deepagents-typescript>
<typescript>
Minimal package.json dependencies for a Deep Agents project (provider-agnostic).
```json
{
"dependencies": {
"deepagents": "latest",
"@langchain/core": "^1.0.0",
"langchain": "^1.0.0",
"langsmith": "^0.3.0"
}
}
langchain-tavily # use latest; partner package, semver
langchain-chroma # use latest; partner package, semver
langchain-text-splitters # use latest; semver
</python>
</ex-with-tools-python>
<ex-with-tools-typescript>
<typescript>
Adding Tavily search and a vector store to a LangGraph project.
```json
{
"dependencies": {
"@langchain/core": "^1.0.0",
"langchain": "^1.0.0",
"@langchain/langgraph": "^1.0.0",
"langsmith": "^0.3.0",
"@langchain/tavily": "latest",
"@langchain/pinecone": "latest"
}
}
| Package group | Versioning | Safe upgrade strategy |
|---|---|---|
langchain, langchain-core | Strict semver (1.0 LTS) | Allow minor: >=1.0,<2.0 |
langgraph / @langchain/langgraph | Strict semver (v1 LTS) | Allow minor: >=1.0,<2.0 |
langsmith | Strict semver |
Breaking changes only happen in major versions (1.x → 2.x) for all semver-compliant packages. Deprecated features remain functional across the entire 1.x series with warnings.
Prefer dedicated integration packages over langchain-community. When a dedicated package exists (e.g. langchain-chroma instead of langchain-community's Chroma integration), use it — dedicated packages are independently versioned and better tested.
Community tool packages (Tavily, vector stores, etc.) should be kept at latest unless your project requires a locked environment. These packages frequently release compatibility fixes alongside LangChain/LangGraph updates.
# LangSmith (always recommended for observability)
LANGSMITH_API_KEY=<your-key>
LANGSMITH_PROJECT=<project-name> # optional, defaults to "default"
# Model provider — set the one(s) you use
OPENAI_API_KEY=<your-key>
ANTHROPIC_API_KEY=<your-key>
GOOGLE_API_KEY=<your-key>
MISTRAL_API_KEY=<your-key>
GROQ_API_KEY=<your-key>
COHERE_API_KEY=<your-key>
FIREWORKS_API_KEY=<your-key>
TOGETHER_API_KEY=<your-key>
HUGGINGFACEHUB_API_TOKEN=<your-key>
# Common tool/retrieval services
TAVILY_API_KEY=<your-key> # for Tavily search
PINECONE_API_KEY=<your-key> # for Pinecone
langchain>=1.0,<2.0
</fix-legacy-version>
<fix-community-unpinned>
`langchain-community` can break on minor version bumps — it does not follow semver.
langchain-community>=0.4
langchain-community>=0.4.0,<0.5.0
Also consider switching to the equivalent dedicated integration package if one exists (e.g. `langchain-chroma` instead of the community Chroma integration).
</fix-community-unpinned>
<fix-community-tool-outdated>
Community tool packages like `langchain-tavily` and vector store integrations release compatibility fixes alongside LangChain updates. Using an old pinned version can cause import errors or broken tool schemas.
langchain-tavily==0.0.1
langchain-tavily>=0.1
</fix-community-tool-outdated>
<fix-community-import-deprecated>
Many tools that used to live in `langchain-community` now have dedicated packages with updated import paths. Always prefer the dedicated package import.
```python
# WRONG — deprecated community import path
from langchain_community.tools.tavily_search import TavilySearchResults
from langchain_community.tools import WikipediaQueryRun
from langchain_community.vectorstores import Chroma
from langchain_community.vectorstores import Pinecone
# CORRECT — use dedicated package imports
from langchain_tavily import TavilySearch # pip: langchain-tavily (TavilySearchResults is deprecated)
from langchain_community.tools import WikipediaQueryRun # no dedicated pkg yet
from langchain_chroma import Chroma # pip: langchain-chroma
from langchain_pinecone import PineconeVectorStore # pip: langchain-pinecone
To find the current canonical import for any integration, search the integrations directory: https://python.langchain.com/docs/integrations/tools/
Each entry shows the correct package and import path. If a dedicated package exists, use it — the community path may still work but is considered legacy.
// CORRECT: always list @langchain/core explicitly { "dependencies": { "@langchain/core": "^1.0.0", "@langchain/langgraph": "^1.0.0" } }
</typescript>
</fix-core-not-installed>
<fix-python-version>
<python>
Python 3.9 and below are not supported by LangChain 1.0.
```python
# Verify before installing
import sys
assert sys.version_info >= (3, 10), "Python 3.10+ required for LangChain 1.0"
Weekly Installs
2.3K
Repository
GitHub Stars
423
First Seen
Mar 4, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
claude-code1.9K
codex1.8K
cursor1.8K
github-copilot1.8K
opencode1.8K
gemini-cli1.7K
React 组合模式指南:Vercel 组件架构最佳实践,提升代码可维护性
102,200 周安装
langchain-fireworks | Fireworks AI |
langchain-together | Together AI |
langchain-huggingface | Hugging Face Hub |
langchain-ollama | Ollama (local models) |
langchain-aws | AWS Bedrock |
langchain-azure-ai | Azure AI Foundry |
langchain-chroma | Chroma vector store | Dedicated integration package; prefer latest |
langchain-pinecone | Pinecone vector store | Dedicated integration package; prefer latest |
langchain-qdrant | Qdrant vector store | Dedicated integration package; prefer latest |
langchain-weaviate | Weaviate vector store | Dedicated integration package; prefer latest |
langsmith[pytest] | pytest plugin for LangSmith | Requires langsmith >= 0.3.4 |
@langchain/aws | AWS Bedrock |
@langchain/azure-openai | Azure OpenAI |
@langchain/ollama | Ollama (local models) |
@langchain/weaviate | Weaviate vector store | Dedicated integration package; prefer latest |
Allow minor: >=0.3.0 |
Dedicated integration packages (e.g. langchain-tavily, langchain-chroma) | Independently versioned | Allow minor updates; use latest |
langchain-community | NOT semver | Pin exact minor: >=0.4.0,<0.5.0 |
deepagents | Follow project releases | Pin to tested version in production |