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)

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

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

相关推荐
嘻嘻哈哈樱桃几秒前
牛客经典101题题解集--动态规划
java·数据结构·python·算法·职场和发展·动态规划
gmaajt2 分钟前
Golang怎么做国际化多语言_Golang i18n教程【核心】
jvm·数据库·python
love530love4 分钟前
Podman Machine 虚拟硬盘迁移实战二:用 Junction 把 vhdx 从 C 盘搬到其他盘
c语言·开发语言·人工智能·windows·wsl·podman·podman machine
超梦dasgg6 分钟前
Spring AI 智能航空助手项目实战
java·人工智能·后端·spring·ai编程
李可以量化8 分钟前
DeepSeek 量化交易实战:用标准化提示词模板实现 AI 辅助交易决策
大数据·数据库·人工智能
maqr_11015 分钟前
CSS如何利用Sass定义全局阴影方案_通过变量实现统一CSS风格
jvm·数据库·python
m0_6138562917 分钟前
uni-app怎么做类似于美团的商家评价星级 uni-app五星评分组件制作【实战】
jvm·数据库·python
非优秀程序员25 分钟前
智能体的构成--深入探讨Anthropic、OpenAI、Perplexity和LangChain究竟在构建什么。
人工智能·架构·开源
却道天凉_好个秋27 分钟前
卷积神经网络CNN(七):感受野
人工智能·python·深度学习·神经网络·感受野
码点滴34 分钟前
从“失忆症“到“数智分身“:Hermes Agent 如何重塑你的 AI 交互体验?
人工智能·架构·prompt·ai编程·hermes