LangChain.js
是 LangChain 生态下的 JavaScript/TypeScript 版本框架,专注于帮助开发者快速构建由大语言模型(LLM)驱动的应用程序,核心目标是简化 AI 应用开发流程,同时保证技术选型的未来兼容性。
用前端视角来看的话,它就是给前端做 AI 应用的「工具箱 + 组装手册」:我们平时写前端,会用 React/Vue 这类框架拼 UI 组件,用 axios 封装请求,用 Next.js 适配不同运行环境;而 LangChain.js 就是帮你「拼 AI 功能」的工具:不用从零写 “调用 ChatGPT / 通义千问”“让 AI 读 PDF/Notion 文档”“让 AI 联网搜信息” 这些逻辑,它把这些能力做成了现成的 “AI 组件”,你像搭积木一样拼起来,就能快速做出有实际用途的 AI 应用(比如智能文档问答、AI 助手、内容总结工具等)。
最新的langchainjs要求Node.js 20+
langchainjs的一些包分类说明
官方包分类介绍
| 包名 | 功能说明 |
|---|---|
| langchain | 主包,对外暴露的主入口。包含智能体、提示词、编排核心逻辑 |
| @langchain/core | 底层抽象接口(定义 AI 调用、工具扩展的基础规则) |
| @langchain/community | 社区维护的第三方集成(文档加载、存储等) |
| @langchain/* | 官方适配包(对接 OpenAI/Anthropic/ 百度等 AI 厂商、Weaviate 向量库) |
langchain的一些核心功能介绍
| LangChain.js 功能 | 前端类比 | 实际用途举例 |
|---|---|---|
| 文档加载器 | 前端的 FileReader / 上传解析组件 | 让 AI 读取 PDF/Notion/GitHub 文档 |
| 工具(Tool) | 前端的自定义 Hook(封装小功能) | 给 AI 加 “计算器 / 网页搜索 / 调企业 API” 能力 |
| 智能体(Agent) | 前端的状态管理(比如 Redux) | 让 AI 自己判断 “该用哪个工具”(比如问营收就调用搜索工具) |
| 存储层(向量 / 对话存储 | 前端的 localStorage等缓存 | 存 AI 对话记录、存文档的 “AI 可理解版”(方便快速搜索) |
生态系统
LangSmith
LangSmith 是AI 版的 “前端调试 / 监控工具” (管 AI“做得对不对、快不快”)。
LangGraph
LangGraph 是AI 版的 “前端流程编排工具” (管 AI “怎么做事”)。
俩都是 LangChain.js 生态的 “配套工具”,就像 React(LangChain.js)搭配 XState(LangGraph)+ Sentry(LangSmith)一样,各司其职。
官方适配包
一,LLM / 聊天模型适配包(对接各类大模型)
| 包名 | 核心定位 | 关键能力 / 导出内容 | 适用场景 |
|---|---|---|---|
| langchain-anthropic | 对接 Anthropic(Claude)系列模型 | 1,聊天模型类(ChatAnthropic) 2, 提示词转换工具 3,多类工具(网页搜索、代码执行、文本编辑等) | 调用 Claude 模型做长文本对话、工具调用(如数据分析、网页抓取) |
| langchain-aws | 对接 AWS 生态 AI 服务 | 1,聊天模型类 2,嵌入模型 3,检索器相关工具 | 调用 AWS Bedrock 等平台的 AI 模型、基于 AWS 做检索增强生成(RAG) |
| langchain-baidu-qianfan | 对接百度千帆大模型平台 | 1,聊天模型类 2,嵌入模型 | 调用百度千帆的各类大模型、生成文本嵌入向量 |
| langchain-cerebras | 对接 Cerebras 大模型 | 导出聊天模型类 | 调用 Cerebras 平台的大模型进行对话生成 |
| langchain-cohere | 对接 Cohere 大模型 | 1,聊天模型 / LLM 类 2,嵌入模型 3,检索结果重排序(rerank)工具 | 文本生成、语义嵌入、RAG 场景下优化检索结果 |
| langchain-google-common | Google 系服务核心适配层 | 1, 聊天模型 / LLM / 嵌入模型 2,鉴权 / 连接工具 3,安全策略、流式响应处理工具 | 为 Google GenAI/Vertex AI 提供通用能力,支持多模态输入、安全配置 |
| langchain-google-genai | 对接 Google Gemini 模型 | 1,聊天模型类 2,嵌入模型 | 直接调用 Gemini 通用大模型、生成文本嵌入向量 |
| langchain-google-vertexai | 对接 Google Vertex AI 平台 | 适配服务端鉴权的 Google 模型调用能力 | 基于 GCP 服务账号调用 Vertex AI 托管的 Gemini 等模型 |
| langchain-mistralai | 对接 Mistral AI 模型 | 1,聊天模型 / LLM 类 2,嵌入模型 | 调用 Mistral Large/Codestral 模型做通用文本生成、代码补全 |
| langchain-nomic | 对接 Nomic 嵌入模型 | 仅导出嵌入模型相关内容 | 生成 Nomic 体系的文本嵌入向量 |
| langchain-ollama | 对接本地 / 私有部署的 Ollama 模型 | 1,聊天模型 / LLM 类 2,嵌入模型 3, 类型定义 | 无需联网,调用本地部署的 Llama 3/Phi/Mistral 等模型(隐私优先场景) |
| angchain-openai | 对接 OpenAI/Azure OpenAI 核心包 | 1, ChatGPT/GPT-4 聊天模型 2,LLM 类 / 嵌入模型 3,Azure OpenAI 全适配 4,工具调用能力 | 调用 OpenAI 原生模型、Azure 托管的 OpenAI 模型、生成嵌入向量、工具调用 |
| langchain-xai | 对接 XAI 相关服务 | 导出实时搜索工具(xaiLiveSearch) | 基于 XAI 服务做实时网络搜索、补充 RAG 场景的实时信息 |
| langchain-yandex | 对接 Yandex GPT 模型 | 1,聊天模型 / LLM 类 2,嵌入模型 3,支持 Api-Key/IAM Token 双鉴权 | 调用 Yandex 云平台的 GPT 模型(俄语 / 多语言场景优势) |
二,向量数据库适配包(对接各类向量存储)
| 包名 | 核心定位 | 关键能力 / 导出内容 | 适用场景 |
|---|---|---|---|
| langchain-pinecone | 对接 Pinecone 向量数据库 | 1,向量存储操作类 2, 翻译工具 3,嵌入模型 | 云端向量存储、大规模 RAG 场景的检索 |
| langchain-qdrant | 对接 Qdrant 向量数据库 | 向量存储操作类(代码库配置引用,无具体导出) | 轻量向量存储、本地 / 云端混合部署的 RAG 场景 |
| langchain-redis | 对接 Redis 向量存储 | 向量存储操作类(代码库配置引用) | 缓存 + 向量存储一体化、低延迟的检索场景 |
| langchain-weaviate | 对接 Weaviate 向量数据 | 1,向量存储操作类 2,翻译工具 | 语义检索、结合知识图谱的向量检索场景 |
| langchain-mongodb | 对接 MongoDB 生态 | 1,向量存储 2,聊天记录存储 3,缓存 / 通用存储 | MongoDB 中存储向量、聊天历史,做一体化数据管理 |
三,工具 / 其他服务适配包
| 包名 | 核心定位 | 关键能力 / 导出内容 | 适用场景 |
|---|---|---|---|
| langchain-exa | 对接 Exa 搜索工具 | 导出检索器、工具类 | 精准网页内容检索、深度爬取,补充 RAG 信息 |
| langchain-mixedbread-ai | 对接 Mixedbread AI 服务 | 1,嵌入模型 2, 重排序工具 | 生成文本嵌入向量、优化检索结果排序 |
| langchain-tavily | 对接 Tavily 搜索工具 | 搜索工具类(代码库配置引用) | 实时网络搜索、为 LLM 补充最新外部信息 |