LangChain简介,最直白的介绍

拥有 API Key 就像拿到了发动机,而 LangChain 就是帮你把这个发动机组装成一辆跑车的底盘和传动系统。对于如何获取API key可以看我的上一篇博客教你白嫖免费的额度,绝对够用

下面通俗易懂地介绍一下 LangChain 框架。


1. 什么是 LangChain?

LangChain 是一个开源框架(Python 和 JavaScript 都有),它的核心目标是让开发 LLM(大语言模型)应用变得简单。

如果把大模型(如 GPT、DeepSeek)比作一个"超级大脑 ",那么 LangChain 就是"躯干和四肢"。

  • 大脑(LLM)只负责思考和生成文字。
  • LangChain 负责给大脑装上耳朵(读取文件)、嘴巴(输出格式化数据)、手(联网搜索、操作数据库)以及记忆(记住之前的对话)。

一句话总结: 它是一个中间件,帮你把大模型和外部世界(文件、网页、API)连接起来。


2. 为什么非要用它?直接调 API 不行吗?

如果你只是写一个简单的"你问我答"脚本,直接调 API 确实可以。但一旦你想做一个复杂的应用,就会遇到麻烦:

  1. 模型切换难: 今天用 OpenAI,明天想换 DeepSeek,你需要改很多底层代码。用 LangChain,改一行配置就行。
  2. 记不住事: API 默认是没记忆的。LangChain 提供了现成的"记忆模块"。
  3. 数据喂养难: 想把几百个 PDF 喂给模型?LangChain 提供了全套的文档加载和切割工具。
  4. 流程复杂: 如果任务是"先总结邮件,再翻译成中文,最后存入 Excel",LangChain 的"链(Chain)"可以将这些步骤串联起来。

3. LangChain 的六大核心模块(后面继续详细介绍)

在接下来的学习中,你会反复和这六个概念打交道:

① Model I/O(模型输入/输出)

这是最基础的层。LangChain 把所有大模型(OpenAI, DeepSeek, 阿里通义等)都封装成了统一的接口。

  • 不管后台是哪个模型,你调用的代码都是一样的。
② Prompt Templates(提示词模板)

管理你的提问方式。你不需要每次都手写"请把这句话翻译成英文...",而是定义一个模板,只要填入变量即可。

  • 例子: f"请把 {text} 翻译成 {language}"
③ Memory(记忆)

让 AI 记住之前的对话上下文。

  • 比如"对话缓冲区记忆",能自动保存最近的 5 轮对话发给模型。
④ Chains(链)

核心概念! 把多个步骤串起来。

  • 公式: Prompt + LLM + OutputParser = Chain
  • 比如:先检索维基百科 -> 把结果给模型总结 -> 把总结发邮件。这是一条链。
⑤ Retrieval(检索 / RAG)

这是你之前问的 RAG 的实现部分。

  • 包含:文档加载器(读 PDF/Word)、文本切割器(把长文切块)、向量数据库(存数据)。
⑥ Agents(智能体)

这是最高级的玩法。链(Chain)是写死的流程,而 Agent 是让 AI 自己决定下一步做什么。

  • 你给它工具(Google 搜索、计算器),它会自己思考:"用户问天气的,我应该先调用搜索工具,再回来回答。"

4. 核心语法:LCEL (LangChain Expression Language)

现在学习 LangChain,一定要学它的新语法 LCEL 。它用异或符号 | 来连接步骤,非常类似 Linux 命令或 Python 的位运算。

经典公式:

Prompt | Model | OutputParser

(提示词模板 | 大模型 | 结果解析器)


5. Hello World:你的第一段 LangChain 代码

既然你已经有了 API Key(根据自己情况修改下面的代码,跑一跑是不是可以用),我们可以写一个最简单的"翻译助手"。

准备工作:

在终端安装库:

bash 复制代码
pip install langchain langchain-openai

代码实战:

python 复制代码
import os
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser

# 1. 定义大模型 (配置你的免费 Key)
llm = ChatOpenAI(
    model="deepseek-ai/DeepSeek-V3",  # 这里的名字要看你所用平台的文档
    openai_api_key="sk-xxxxxxxxxx",   # 换成你的 Key
    openai_api_base="https://api.siliconflow.cn/v1", # 换成对应平台的 Base URL
    temperature=0.7
)

# 2. 定义提示词模板 (Prompt)
prompt = ChatPromptTemplate.from_template("请把下面这句话翻译成{target_language}:\n{text}")

# 3. 定义输出解析器 (把 AI 返回的复杂对象转成纯字符串)
parser = StrOutputParser()

# 4. 组装成链 (使用 LCEL 语法 | )
# 数据流向:用户输入 -> 填入模板 -> 发给模型 -> 解析结果
chain = prompt | llm | parser

# 5. 调用链
result = chain.invoke({"target_language": "文言文", "text": "在这个世界上,编程是一件非常有趣的事情。"})

print(result)

接下来你的学习路线建议:

关注朱波蹲后续,及得点赞收藏哦😘😘😘😘

相关推荐
xsd202411183 小时前
步态识别算法全解析:从剪影提取到跨视角身份识别的技术拆解
人工智能
外收内放3 小时前
Python基础语法练习题(57-58)
开发语言·python
朝朝辞暮i3 小时前
VLA 系统学习第 3 课:从一次机器人示范,到真正送进神经网络的 Batch
人工智能·python·深度学习·神经网络·vla
Joy T3 小时前
Spring AI 接入已有 Java 项目的三种架构设计
java·人工智能·springai·ai入门·chatclient·ai service·ai能力接入
m4Rk_3 小时前
【论文阅读】Agent 记忆机制(94):MemGen——在推理过程中动态生成并织入潜在记忆
论文阅读·人工智能·学习·开源·github
IT_陈寒3 小时前
Redis卡顿的锅,这次真不是大key的错
前端·人工智能·后端
小鹿的周先生4 小时前
第11章-Structured-Output
开发语言·人工智能·python
175******631734 小时前
灰片调色适合什么素材
人工智能
大模型真好玩4 小时前
从 SDK 到成熟智能体:拆解 LangChain、Pi、DeepSeek Harness、Claude Code的本质区别
人工智能·agent·deepseek
程序哥聊面试4 小时前
什么是 Sandbox?给 AI Agent 划一道安全边界
人工智能·安全