LangChain学习笔记-1.LangChain概述

0 阅读8分钟

LangChain概述

第一部分:LangChain 是什么?

1. 一句话描述

LangChain 就像一个"积木连接器",帮你把大语言模型和你的数据、工具、软件连接起来,轻松搭建功能强大的智能应用。


2.概念辨析

概念辨析
LangChain相当于 LangChain For Python
LangChain4J相当于 LangChain For Java

笔者所写教程为前者,即 LangChain For Python。后续内容需要一定的 Python 基础,不过适时笔者会补充相关文章供大家学习或复习。(笔者 Python 也很菜)


3. 基于微服务与 AI 大模型的智能应用系统架构及交互流程

flowchart TD
    %% 定义样式:微服务层(圆角矩形+边框)、大模型层(蓝色边框)、中间工具(红色填充)、核心节点(填充色)
    classDef microserviceLayer stroke:#000,stroke-width:2px,rx:10px,ry:10px,fill:none
    classDef modelLayer stroke:#007bff,stroke-width:2px,rx:10px,ry:10px,fill:none
    classDef toolNode fill:#ffcccc,stroke:#ff0000,stroke-width:1px,rx:5px,ry:5px
    classDef coreNode fill:#f0f0f0,stroke:#333,stroke-width:1px,rx:5px,ry:5px

    %% 1. 微服务层(最上层)
    subgraph MicroserviceLayer [微服务支撑层]
        direction LR
        S1[服务发现]
        S2[服务治理]
        S3[服务网关]
        S4[配置管理]
        S5[监控与日志]
        S6[负载均衡]
        S7[安全管理]
    end
    MicroserviceLayer:::microserviceLayer

    %% 2. LangChain 层
    T[LangChain<br/>LangChian4j]:::toolNode

    %% 3. 大模型层(最下层)
    subgraph ModelLayer [大模型核心层]
        direction TB
        M[大模型]:::coreNode
        M --> M1[模型推理]
        M1 --> R[响应服务请求]
        M --> M2[模型训练]
        M2 --> O[优化模型参数]
        R --> Result[返回结果给客户端]
        O --> Result
    end
    ModelLayer:::modelLayer

    %% 箭头连接
    S1 & S2 & S3 & S4 & S5 & S6 & S7 --> T
    T --> M

上面的图应该能让我们更好理解 LangChain 在软件开发中的生态位。


第二部分:学习 LangChain 能干什么?(找工作角度)

大模型开发的分类(从技术层级 + 场景维度)

大模型开发不是"一竿子到底"的单一工程,而是分层级、分场景的体系化工作。我们可以把它拆成基础通用大模型」「行业垂直大模型」「超级个体 + 智能体」 三层,每层解决的问题、技术路径、应用场景都不同:

图(临时).png

1. 基础通用大模型(底层“地基”)

  • 定义:在大规模通用数据(互联网文本、图像、音频等多模态数据)上训练的模型,具备"通用认知能力"(比如理解语言、生成内容、简单推理)。
  • 典型代表:GPT-4、LLaMA、通义千问、文心一言等。
  • 核心能力
    • 处理通用任务(如文本生成、问答、翻译、代码编写);
    • 具备基础推理能力(逻辑分析、简单因果判断);
    • 支持多模态交互(文本、图像、语音等混合输入/输出)。
  • 开发重点
    • 数据:海量、多源、高质量的通用数据(需清洗、去重、合规);
    • 算法:大模型架构(Transformer 及其变体)、训练优化(混合精度、分布式训练);
    • 算力:超大规模 GPU/TPU 集群(训练成本极高)。

2. 行业垂直大模型(中层“适配”)

  • 定义:在基础通用大模型之上,用行业专属数据(如医疗病历、金融财报、工业质检报告)微调/二次训练的模型,聚焦特定行业的深度需求
  • 典型代表:医疗大模型(如"华佗大模型")、金融大模型(如"BloombergGPT")、工业大模型(如"羚羊工业互联网大模型")。
  • 核心能力
    • 理解行业术语(如医疗的"病理切片"、金融的"K 线形态");
    • 解决行业痛点(如医疗辅助诊断、金融风控建模、工业设备故障预测);
    • 适配行业流程(如医疗问诊流程、金融合规审核流程)。
  • 开发重点
    • 数据:行业内的高质量、标注数据(需与领域专家合作获取);
    • 方法:微调(Fine-tuning)(全参数/LoRA 等轻量化微调)、领域适配训练(保留通用能力,强化行业知识);
    • 评估:行业指标(如医疗的"诊断准确率"、金融的"风控召回率")。

3. 超级个体+智能体(上层“应用”)

  • 定义:大模型技术+个体/组织需求深度融合,打造“人+AI”协同的智能体(Agent) 或“超级个体”工具,直接服务于个人/团队的生产力提升

  • 典型代表:AI编程助手(如Cursor)、AI办公助手(如Notion AI)、个人知识管理智能体(如Obsidian AI插件)、企业级智能客服(如京东云言犀)。

  • 核心能力

    • 个性化交互:理解用户的习惯、偏好、历史行为(如记住用户的写作风格、工作流);
    • 任务闭环:从“需求理解→执行→反馈→优化”全流程自动化(如AI写周报:分析工作内容→生成初稿→根据反馈修改);
    • 多工具协同:调用外部工具(如Excel、CRM、代码仓库)完成复杂任务(如“查销售数据→分析趋势→生成PPT”)。
  • 开发重点

    • 交互:自然语言理解+上下文记忆(长期对话不丢信息);
    • 任务:工作流拆解(把复杂任务拆成“小步骤”交给大模型+工具执行);
    • 集成:对接业务系统(如企业内部OA、客户管理系统)。

层级关系:"地基→适配→应用"的递进

  • 基础通用大模型是底层支撑,提供"通用智能";
  • 行业垂直大模型是中层优化,把通用智能"翻译"成行业能用的能力;
  • 超级个体 + 智能体是上层应用,把行业能力"封装"成个人或团队能直接用的工具。

学习 LangChain 主要服务于第三个层级。

第三部分:LLM 应用技术架构(以 LangChain 为核心)

除了理解 LangChain 本身的定位,我们还需要从系统架构的视角,看看 LLM 是如何从底层"算力 + 模型"一路向上,支撑到最终用户能用的 AI 应用。这张架构图把整个链路拆成了四层,每一层都有明确的职责和代表性工具:

flowchart TD
    %% 定义样式:UI层(浅灰)、服务层(浅蓝)、模型层(浅绿)、存储层(浅黄)
    classDef uiLayer fill:#f0f0f0,stroke:#333,stroke-width:1px,rx:8px,ry:8px
    classDef serviceLayer fill:#e6f3ff,stroke:#333,stroke-width:1px,rx:8px,ry:8px
    classDef modelLayer fill:#e6ffe6,stroke:#333,stroke-width:1px,rx:8px,ry:8px
    classDef storageLayer fill:#fff2cc,stroke:#333,stroke-width:1px,rx:8px,ry:8px

    %% 1. 存储层(最底层)
    subgraph StorageLayer [Storage Layer 存储层]
        direction LR
        Pinecone[Pinecone<br/>向量数据库]
        Chroma[Chroma<br/>开源向量库]
        Redis[Redis<br/>缓存+向量存储]
    end
    StorageLayer:::storageLayer

    %% 2. 模型层
    subgraph ModelLayer [Model Layer 模型层]
        direction LR
        OpenAI[OpenAI GPT系列]
        HuggingFace[Hugging Face<br/>开源LLM]
        Claude[Claude<br/>Anthropic]
    end
    ModelLayer:::modelLayer

    %% 3. 服务/链层
    subgraph ServiceLayer [Service/Chain Layer 服务/链层]
        direction LR
        LangChain[LangChain<br/>LLM应用框架]
        FlowChain[FlowChain]
        PromptChain[PromptChain]
    end
    ServiceLayer:::serviceLayer

    %% 4. UI交互层
    subgraph UILayer [UI Layer UI交互层]
        direction LR
        Langflow[Langflow<br/>LangChain GUI]
        CustomUI[自定义前端]
    end
    UILayer:::uiLayer

    %% 箭头流向(从下到上)
    StorageLayer --> ModelLayer
    ModelLayer --> ServiceLayer
    ServiceLayer --> UILayer
各层职责详解
  • 存储层(Storage Layer) 负责存储文本、图像等内容编码后的"特征向量",支持向量相似度查询。当用户说"找和我这篇文档语义最像的内容"时,系统会计算输入文本的向量,与库中已有的向量比对,找到最相似的结果。
  • 模型层(Model Layer) 提供大语言模型的调用能力,是整个系统的"智能核心"。用户可以调用 GPT-4、Llama、Claude 等模型,获取聊天、问答、翻译、总结等基础能力。
  • 服务/链层(Service/Chain Layer) 这是 LangChain 的"主战场"。它像一个"积木连接器",把模型层、存储层、提示词(Prompt)、外部工具串联起来,构建出更复杂的业务逻辑。比如:用 LangChain 调用 GPT 模型 + 向量数据库(查知识)+ 自定义工具(查订单状态),组合成一个"智能客服"。
  • UI 交互层(UI Layer) 让用户能可视化地操作 LLM 应用。比如 Langflow 是 LangChain 的可视化界面,通过拖拽组件就能搭建 AI 应用原型,不需要写代码也能快速实验和验证想法。
与 LangChain 的关系

可以看到,LangChain 位于"服务/链层"。它不直接做模型训练,也不直接做前端展示,而是专注于"连接"——把底层的模型、存储、工具,与上层的业务逻辑、用户界面整合成一个可用的 AI 应用系统。

这也是为什么学习 LangChain,本质上是学习如何用"模块化、链式"的方式,把大模型与你的业务场景连接起来。它不替代模型,也不替代前端,但它是让 LLM 真正"落地到业务"的关键桥梁。


📌 小结

如果你把 LLM 应用想象成一栋楼,那么:

  • 基础通用大模型是"地基"

  • 行业垂直大模型是"楼层"

  • 超级个体 + 智能体是"精装修的房间"

  • 而 LangChain 就是"水电管线 + 施工工具",让这栋楼能真正住得进人、跑得动业务

    学习 LangChain,就是掌握这套"让 AI 真正可用"的建造方法论。


第四部分:LangChain 学习与实践的关键认知

1. 为什么现在是学习 LangChain 的最佳时机?

LangChain 已成为 LLM 应用开发的事实标准(De Facto Standard),是业界构建大语言模型应用的首选框架。其 1.0 版本是革命性升级,而非简单迭代,标志着框架走向成熟。同时,它面向未来(Future-Proof),掌握其新 API 和以图(Graph)为中心的思维,能为构建复杂 Agent 奠定基础。

它的生态极其强大:

  • 工具全覆盖:Google Search、Wikipedia、Notion、Gmail 等常用工具,LangChain 均提供现成组件
  • 技术全支持:RAG、ReAct、MapReduce 等主流技术,均有现成模板可直接复用

它就像 AI 界的 Spring 或 React 框架——虽略显臃肿、存在坑点,但却是当前最快上手、资源最丰富的选择。

给初学者的建议

不要试图学完 LangChain 的所有 API —— 那是不可能的。只需搞懂它的核心逻辑(后续将介绍的六大核心模块),然后**"用到什么再去查什么"。把它当成工具箱**,而不是教科书。


2. LangChain 的挑战与未来

尽管 LangChain 是当前业界"扛把子",但也存在不少"糟心事":

  1. 文档写得乱:更新极快(约两三天一个新版本),官方文档常滞后于代码,导致文档中的方法在最新版中已被改名或删除,对新手极其不友好
  2. 抽象过度:为兼容所有模型和数据库,封装层级过深,简单功能也需调用深层类,导致"LangChain 很慢"——不是运行慢,是调试时脑子转得慢,因为调用栈太深
  3. 版本不兼容:今天写的代码,下个月升级 LangChain 后可能直接跑不通

但请记住:LangChain 正在从"代码库"进化为一套完整的 "AI 开发操作系统" 。随着大模型能力增强(如 GPT-4 Context 窗口越来越大,能一次性读完一本书),未来简单的 RAG 可能不再需要复杂切片逻辑,但Agent(智能体)的逻辑会越来越重要

未来的 AI 应用,一定不是简单的"一问一答",而是"一句话解决复杂任务",例如:

"帮我写个游戏,然后发布到 AppStore" —— 这涉及写代码、画图、测试、填表单、上传等几十个步骤。

LangChain 就是为这种未来打地基。


总结

从"地基"到"应用",LangChain 是连接底层模型与上层智能体的关键枢纽。理解它,就是理解未来 AI 应用的构建方式。