当前位置: 首页 > news >正文

LangChain入门概述

目录

  • 1 LangChain 基础介绍
    • 1.1 什么是 LangChain
      • 1.1.1 为什么需要 LangChain
      • 1.1.2 LangChain 包结构
    • 1.2 LangChain 四大核心模块
  • 2 项目环境准备
      • 2.1 .env 文件管理密钥(项目推荐)
      • 2.2 Windows 全局环境变量(学习使用)
  • 3 Model I/O 模型调用实战
    • 3.1 调用在线大模型(OpenAI 兼容接口)
      • 3.1 OpenAI 原生 SDK 调用
      • 3.2 LangChain 统一调用模型
      • 3.3 消息类型(System/Human/AI/Tool)
      • 3.4 四种调用方式
    • 3.2 本地模型 Ollama 部署调用
      • 3.1 Ollama 介绍
      • 3.3 LangChain 调用 Ollama 本地模型
  • 4 本章小结

1 LangChain 基础介绍

1.1 什么是 LangChain

LangChain 2022 年 10 月发布,早于 ChatGPT,是主流 LLM 应用开发开源框架,统一封装各类大模型、工具、知识库能力,快速搭建问答、RAG、Agent 智能体。 官方地址:

  • Github:https://github.com/langchain-ai/langchain
  • 官网:https://www.langchain.com/langchain

1.1.1 为什么需要 LangChain

原生 LLM API 存在诸多局限:

  1. 知识滞后,无法获取实时信息
  2. 不能读取企业私有文档
  3. 无法联网、查询数据库、调用第三方接口
  4. 输出不稳定,难结构化

直接调用各家 API 学习成本高,LangChain 提供统一标准接口,切换模型零成本,内置 Agent、RAG 完整方案。

1.1.2 LangChain 包结构

表格

包名作用
langchain主包,高层应用组件
langchain-core底层统一抽象、Runnable 标准
langchain-openai/langchain-deepseek各家模型集成包
langchain-text-splitters文档切分工具
langchain-mcp-adaptersMCP 协议工具适配

1.2 LangChain 四大核心模块

1 Model I/O:模型输入输出标准化(提示模板、调用、输出解析) 2 Chains:LCEL 链式组合,串联多个步骤 3 Retrieval(RAG):文档加载、切片、向量库检索 4 Agents:自主智能体,可规划任务、调用工具

2 项目环境准备

1 新建 conda 虚拟环境,Python=3.12

conda create -n langchain python=3.12 conda activate langchain

2 安装基础依赖

pip install langchain langchain-core python-dotenv

3 配置 API 密钥管理

2.1 .env 文件管理密钥(项目推荐)

项目根目录新建.env

OPENAI_API_KEY=sk-xxx OPENAI_BASE_URL=https://xxx/v1 DEEPSEEK_API_KEY=sk-xxx

读取代码:

from dotenv import load_dotenv import os load_dotenv() api_key = os.getenv("OPENAI_API_KEY")

注意:.env 不要提交 git

2.2 Windows 全局环境变量(学习使用)

Win 搜索「编辑系统环境变量」,在用户变量新建 KEY、BASE_URL 字段,重启终端生效。

3 Model I/O 模型调用实战

3.1 调用在线大模型(OpenAI 兼容接口)

3.1 OpenAI 原生 SDK 调用

from openai import OpenAI import os from dotenv import load_dotenv load_dotenv() client = OpenAI(base_url=os.getenv("OPENAI_BASE_URL"),api_key=os.getenv("OPENAI_API_KEY")) # ChatCompletion 传统接口 res = client.chat.completions.create( model="gpt-4o-mini", messages=[{"role":"user","content":"你好"}] ) print(res.choices[0].message.content)

3.2 LangChain 统一调用模型

两种初始化方式:init_chat_model / ChatOpenAI

from langchain.chat_models import init_chat_model llm = init_chat_model( model="gpt-4o-mini", model_provider="openai", base_url=os.getenv("OPENAI_BASE_URL"), api_key=os.getenv("OPENAI_API_KEY"), temperature=0 ) resp = llm.invoke("你好") print(resp.content)

3.3 消息类型(System/Human/AI/Tool)

from langchain_core.messages import SystemMessage,HumanMessage res = llm.invoke([ SystemMessage(content="你是Python专家"), HumanMessage(content="写快速排序") ])

3.4 四种调用方式

1 同步 invoke:单次问答 2 异步 ain:高并发服务使用 3 stream 流式:打字机实时输出 4 batch 批量:一次性处理多条问题

3.2 本地模型 Ollama 部署调用

3.1 Ollama 介绍



本地开源大模型运行工具,一键下载运行 Qwen、DeepSeek 等开源模型,支持 LangChain 无缝集成。

1 官网下载 Windows/Mac/Linux 客户端 2 命令拉取模型:ollama run qwen3:8b3 修改模型存储路径,避免 C 盘占用

3.3 LangChain 调用 Ollama 本地模型

pip install langchain-ollama from langchain_ollama import ChatOllama llm = ChatOllama(model="qwen3:8b",base_url="http://localhost:11434") res = llm.invoke("介绍LangChain") print(res.content)

4 本章小结

1 LangChain 四大核心:Model I/O、Chains、RAG、Agents 2 密钥统一用.env 文件管理,避免硬编码泄露 3 在线模型统一使用兼容 OpenAI 接口调用 4 Ollama 快速本地运行开源大模型,适合离线开发

http://www.jsqmd.com/news/1358075/

相关文章:

  • 分布式系统安全实践:从认证到事务的全面防护
  • AI Agent技术重塑客户成功:从Klaviyo收购看智能自动化实践
  • 三日计划法:高效学习与项目管理的心理学实践
  • AI赋能青少年心理健康:技术挑战、伦理边界与工程实践
  • XUnity.AutoTranslator:5分钟搞定Unity游戏自动翻译的终极指南
  • 成都做多香型纯粮酒的社区酒水品牌加盟哪家靠谱? - 中媒介
  • 湘西家常菜哪家好? - 中媒介
  • C#方法编程指南:从基础到高级应用
  • 轨交巡检机器人多场景应用企业推荐 - 中媒介
  • 做了个“记账小助手“App,重新认识了App Inventor 2变量积木的真正威力
  • 2026晋中危房鉴定检测怎么选?老旧房危房鉴定靠谱机构 TOP 结构安全检测+ 报告可查 电话汇总
  • Python文件操作全解析:从基础到高级技巧
  • Linux终端贪吃蛇:C语言链表与ncurses库实战教程
  • ADK Skill开发五大设计模式:构建健壮可维护的智能体技能
  • FastAPI离线部署实战:Docker与PyInstaller方案详解
  • 文献阅读 260808-Drought drives rapid shifts in tropical rainforest soil biogeochemistry and greenhouse g
  • 如何安全处理遗留系统中的“丑陋”核心模块:从风险识别到渐进重构
  • HAL库、标准库、LL库和寄存器开发有什么区别?STM32四种开发方式一次讲透
  • 罗曼海豚C20底价 - 中媒介
  • 韩国工签办理哪家推荐? - 中媒介
  • Docker部署 ShardingSphere‑Proxy 5.4.1
  • Ralph Loop:解决AI编程助手半途而废,实现自动化持续追问的VSCode插件
  • 从运营工程视角拆解直播电商新规落地
  • 管乐合奏中长号声部融合与对抗的艺术:以《Colors》为例的实践指南
  • Windows系统管理全攻略:从架构解析到实战优化
  • 解决dlib安装失败:ERROR: Failed building wheel for dlib
  • Model I/O进阶
  • 如何免费批量导出Notion页面为PDF?终极解决方案指南
  • 找大田作物专用桶混助剂厂家 - 中媒介
  • Java Lambda表达式详解:语法、应用与性能优化