前端开发者的 AI 入场券:LangChain.js 完全学习资源指南

LangChain.js 是 LangChain 的 JavaScript/TypeScript 实现,为前端开发者提供构建大语言模型应用的模块化工具。其核心概念包括 ChatModel(统一模型接口)、PromptTemplate(可复用模板)、Chain(链式调用)、Tool & Agent(外部能力调用与自主决策)、RAG(检索增强生成)和 Memory(对话记忆管理)。与 Python 版相比,LangChain.js 能与 Next.js、React 等前端技术栈无缝集成,支持边缘部署

发布于2026年5月24日 22:43
编辑零重力瓦力
评论0
阅读21

LangChain 的 Python 版本热度极高,但很多人忽略了:LangChain 的 JavaScript/TypeScript 版本同样强大,而且对前端开发者更友好。如果你一直是写 JS/TS 的,想进入 AI 应用开发领域,LangChain.js 是最自然的入口。

一、LangChain.js 是什么

LangChain.js 是 LangChain 的 JavaScript/TypeScript 实现,专门用于构建基于大语言模型(LLM)的应用。它提供了一套模块化的抽象层,让你可以把 ChatModel、PromptTemplate、Tool、Memory 等组件像搭积木一样组合起来。

核心设计理念:Chain(链)——把多个组件串联成处理管道,从接收用户输入到产生最终输出,每一步都可组合、可替换。

二、六大核心概念

1. ChatModel / LLM

连接大语言模型的统一接口。支持 OpenAI、Google Gemini、Anthropic Claude 等主流模型,切换模型只需改一行配置:

import { ChatOpenAI } from "@langchain/openai";
import { ChatGoogleGenerativeAI } from "@langchain/google-genai";

// 用 OpenAI
const model = new ChatOpenAI({ modelName: "gpt-4o" });
// 换成 Gemini?只需替换这一行
const model = new ChatGoogleGenerativeAI({ model: "gemini-2.0-flash" });

2. PromptTemplate

把 prompt 从硬编码字符串变成可复用的模板,支持变量注入:

import { ChatPromptTemplate } from "@langchain/core/prompts";

const prompt = ChatPromptTemplate.fromMessages([
  ["system", "你是一个{role},用专业但易懂的方式回答问题"],
  ["human", "{question}"],
]);

const formatted = await prompt.invoke({ role: "前端架构师", question: "如何设计微前端" });

三种模板类型:String PromptTemplate(纯文本)、Chat PromptTemplate(对话格式)、MessagesPlaceholder(动态插入历史消息)。

3. Chain(链式调用)

用 pipe() 方法把 PromptTemplate → Model → OutputParser 串成管道:

import { StringOutputParser } from "@langchain/core/output_parsers";

const chain = prompt.pipe(model).pipe(new StringOutputParser());
const result = await chain.invoke({ role: "技术专家", question: "什么是 RAG" });

LangChain 的 LCEL(LangChain Expression Language)让链式调用像 Unix 管道一样自然——上一个组件的输出自动流入下一个。

4. Tool & Agent

Tool 是 Agent 可以调用的外部能力(搜索引擎、数据库查询、API 调用等)。Agent 则根据用户输入自主决定调用哪些 Tool、什么顺序调用:

import { tool } from "@langchain/core/tools";
import { createReactAgent } from "@langchain/langgraph/prebuilt";

const searchTool = tool(async ({ query }) => {
  // 调用搜索 API...
  return results;
}, {
  name: "web_search",
  description: "搜索互联网获取最新信息",
  schema: z.object({ query: z.string() }),
});

const agent = createReactAgent({ llm: model, tools: [searchTool] });

5. RAG(检索增强生成)

让 LLM 基于你的私有数据回答问题。流程分三步:文档分块 → 向量化与存储 → 检索相关片段 + 生成回答:

import { RecursiveCharacterTextSplitter } from "@langchain/textsplitters";
import { MemoryVectorStore } from "langchain/vectorstores/memory";

// 1. 文档分块
const splitter = new RecursiveCharacterTextSplitter({ chunkSize: 1000 });
const docs = await splitter.splitDocuments(rawDocs);

// 2. 向量化存储
const vectorStore = await MemoryVectorStore.fromDocuments(docs, embeddings);

// 3. 检索 + 生成
const retriever = vectorStore.asRetriever();
const ragChain = await createRetrievalChain(retriever, combineDocsChain);

6. Memory(记忆管理)

让对话应用记住上下文。LangChain.js 提供了多种记忆策略:Buffer Memory(保存全部历史)、Summary Memory(自动压缩历史为摘要)、Window Memory(只保留最近 N 轮)。

三、LangChain.js vs Python 版:关键差异

维度 LangChain.js Python LangChain
生态位置 与 Next.js、React、Node.js 无缝集成的唯一选择 Python AI 生态最完整
部署方式 Vercel Edge、Cloudflare Workers、Deno 等边缘运行时 传统服务器、Docker
前端集成 直接在浏览器/SSR 中调用,零中间层 需搭 API 中间层
包管理 @langchain/core + 按需安装子包 langchain 单包起步
社区资源 相对较少但在快速增长 最丰富

选择建议:如果你的应用前端是 JS/TS 技术栈,优先用 LangChain.js——少一层 API 转发意味着更低的延迟和更简单的架构。

四、LangGraph.js:从 Chain 到可控 Agent

LangGraph.js 是 LangChain 团队推出的低级 Agent 编排框架,被 Replit、Uber、LinkedIn、GitLab 等公司使用。它解决了传统 Agent 的最大痛点——可控性

  • 状态图(StateGraph):每个 Agent 步骤是一个节点,节点间的流转用边定义,支持条件分支和循环
  • 持久化:Agent 的每一步状态都可以持久化到数据库,中断后可恢复
  • 人工介入(Human-in-the-loop):在任何节点暂停等待人类审批后继续
import { StateGraph, END } from "@langchain/langgraph";

const graph = new StateGraph({ channels: stateSchema })
  .addNode("analyze", analyzeNode)
  .addNode("search", searchNode)
  .addNode("respond", respondNode)
  .addEdge("analyze", "search")
  .addConditionalEdges("search", routeDecision)
  .addEdge("respond", END);

当你的 Agent 需要复杂决策逻辑、多步审核或长时间运行时,LangGraph.js 比 AgentExecutor 更可靠。

五、推荐学习资源

官方资源

视频教程

实战项目

书籍

  • 《LangChainJS For Beginners》(Nathan Sebhastian):从零到部署的完整指南,涵盖 OpenAI、Gemini 等多模型

中文社区

六、5 分钟上手实战

如果你已经装好了 Node.js,只需要 3 步就能跑起来:

# 1. 安装核心包
npm install @langchain/core @langchain/openai

# 2. 设置 API Key
export OPENAI_API_KEY="your-key-here"

# 3. 第一个 Chain
import { ChatOpenAI } from "@langchain/openai";
import { ChatPromptTemplate } from "@langchain/core/prompts";
import { StringOutputParser } from "@langchain/core/output_parsers";

const model = new ChatOpenAI({ modelName: "gpt-4o-mini" });
const prompt = ChatPromptTemplate.fromMessages([
  ["system", "用最多3句话解释"],
  ["human", "{topic}"],
]);
const chain = prompt.pipe(model).pipe(new StringOutputParser());

const answer = await chain.invoke({ topic: "什么是 LangChain.js" });
console.log(answer);

七、总结

LangChain.js 不是 Python 版的"二等公民"。对于 JavaScript/TypeScript 开发者来说,它是构建 AI 应用最自然的工具选择——无需学 Python、无需搭中间层、直接在你熟悉的技术栈里拥抱 AI。

从 Chain 到 Agent,从 RAG 到 LangGraph,LangChain.js 的生态正在快速追赶 Python 版。现在上车,刚好赶上最活跃的发展期。


推荐学习路径:官方中文文档入门 → GitHub 教程动手做 → 视频课程深入理解 → LangGraph.js 进阶 Agent → 自己的项目中实战

相关文章

LangChain 让 Agent 的技能不再只靠提示词:Interpreter Skills 把确定性写进代码
智能体工程
2026年6月6日
0 条评论
零重力瓦力

LangChain 让 Agent 的技能不再只靠提示词:Interpreter Skills 把确定性写进代码

LangChain 发布实验性功能 Interpreter Skills,专门用于解决 AI Agent 执行路径不确定的问题。该功能通过增加代码模块,将确定性逻辑从提示词转移至代码,使模型仅负责判断与委托。其核心优势包括执行确定性、解释器内状态持久化及精细化安全边界,有效缓解长流程中的“上下文焦虑”。这标志着 Agent 架构向“提示词定义意图、代码保障执行”的混合模式演进,提升了任务执行的稳定性与可靠性。

#智能体工程#LangChain
阅读全文
别再纠结 Claude Code 还是 Cursor,高效开发者在同时用两个
AI 编程开发
2026年6月5日
0 条评论
零重力瓦力

别再纠结 Claude Code 还是 Cursor,高效开发者在同时用两个

高效开发者倾向于组合使用 AI 编程工具而非二选一。实战表明,Cursor 适合单文件精细调整,Claude Code 擅长跨文件重构与后台任务,两者互补可显著提升效率。多智能体并行及“先规划后编码”策略能加速 SaaS 开发,但需警惕 AI 生成质量下滑等问题。此外,Hermes Agent 等自动化工具可替代人工定时任务。建议以 Cursor 为主、Claude Code 处理复杂任务,初学者应循序渐进掌握工具组合拳。

#Claude Code#AI 编程
阅读全文
Windsurf 2.0 拆解:Devin 被塞进编辑器,氛围编程终于有了“调度中心”
AI 编程开发
2026年6月2日
0 条评论
零重力瓦力

Windsurf 2.0 拆解:Devin 被塞进编辑器,氛围编程终于有了“调度中心”

Cognition 发布 Windsurf 2.0,深度整合 Devin 实现本地思考与云端执行分工。新版推出 Agent Command Center 支持多智能体可视化管理,搭载自研 SWE-1.5 模型大幅提升代码定位与编辑速度,并引入 Spaces 容器解决上下文延续问题。Pro 版调整为日配额制且包含 Devin 功能。相比 Cursor 3,Windsurf 2.0 凭借自研模型与云端执行能力,更适合处理陌生代码库及长任务自动化场景。

#智能体#AI 编程
阅读全文
互动讨论

评论区

围绕《前端开发者的 AI 入场券:LangChain.js 完全学习资源指南》展开交流,未登录用户可浏览评论,登录后可参与讨论。

评论数
0
登录后参与评论
支持发表观点与回复一级评论,互动后将同步到消息中心。
登录后评论
暂无评论,欢迎成为第一个参与讨论的人。