一、前言CSDN 标准引流开头本文旨在解决这些痛点为零基础开发者提供一份2026年最新的LangChain入门指南。我们将聚焦两大核心模块环境搭建和模型调用并深入解析LangChain的消息结构机制这是后续学习RAG、Agent、多轮对话的基石。适合人群LangChain初学者准备入门大模型应用开发的同学阅读收获成功搭建可用的LangChain开发环境跑通通义千问、DeepSeek等国产大模型调用彻底理解LLM与ChatModel的区别及消息机制二、LangChain核心概述2.1 什么是LangChainLangChain是一个用于开发由语言模型驱动的应用程序的框架。它通过提供标准化的接口、组件和工具链简化了构建复杂LLM应用的过程。通俗来说LangChain就像是大模型应用的脚手架帮你处理对话管理、工具调用、知识检索等复杂逻辑。2.2 LangChain能做什么对话应用构建智能聊天机器人知识库问答基于文档的检索增强生成RAG智能体Agent让大模型使用工具完成任务工具调用集成外部API和函数2.3 2026新版结构变化重点2026年LangChain最大的变化是包结构拆分langchain-core核心抽象和接口langchain标准集成和常用链langchain-community第三方集成和社区贡献新手报错根源很多旧教程使用from langchain.llms import OpenAI但在新版本中需要改为from langchain_community.llms import OpenAI或使用对应的国产模型集成。三、2026最新LangChain环境搭建可直接复制3.1 适配版本说明推荐使用Python 3.10版本这是大多数AI框架支持的最低版本。3.2 极速安装命令使用国内清华镜像源解决超时和下载慢的问题pip install langchain langchain-community dashscope -i https://pypi.tuna.tsinghua.edu.cn/simple3.3 必须安装的三大核心包langchain核心框架langchain-community社区集成包含国产模型支持dashscope通义千问官方SDK3.4 安装成功校验代码创建一个check_env.py文件import sys try: import langchain import langchain_community import dashscope print(✅ 环境检查通过) print(fPython版本: {sys.version}) print(fLangChain版本: {langchain.version}) except ImportError as e: print(f❌ 导入失败: {e}) print(请检查安装命令是否正确执行)3.5 新手高频报错解决错误1ModuleNotFoundError: No module named langchain_community解决方案确保安装了langchain_community包注意是下划线分隔。错误2包版本冲突、依赖过低解决方案创建干净的虚拟环境或使用以下命令升级pip install --upgrade langchain langchain-community四、国产大模型密钥申请4.1 通义千问Key免费获取步骤访问阿里云官网aliyun.com注册账号进入模型服务灵积dashscope.aliyun.com完成实名认证个人认证即可在API-KEY管理中创建新密钥免费额度通义千问-Max有100万token免费额度4.2 DeepSeek Key免费获取步骤访问DeepSeek官网deepseek.com注册账号进入控制台-API密钥需要充值使用新手10块钱足够创建新的API密钥4.3 安全使用规范严禁在代码中硬编码密钥推荐使用环境变量# Linux/Mac export DASHSCOPE_API_KEY你的 dashscope-key #要复制自己的API-key到此处 export DEEPSEEK_API_KEY你的 deepseek-key #要复制自己的API-key到此处 Windows set DASHSCOPE_API_KEYyour-dashscope-key set DEEPSEEK_API_KEYyour-deepseek-key# Python代码中读取 import os dashscope_api_key os.getenv(DASHSCOPE_API_KEY) deepseek_api_key os.getenv(DEEPSEEK_API_KEY)五、LangChain两大模型体系解析5.1 LLM与ChatModel本质区别LLM大语言模型纯文本补全模型输入字符串输出字符串示例GPT-3的text-davinci-003ChatModel对话模型对话式模型主流开发方式输入消息列表SystemMessage, HumanMessage, AIMessage输出AIMessage示例GPT-4, 通义千问, DeepSeek-Chat六、核心重点LangChain消息结构全解必掌握本章是后续所有RAG、Agent、多轮对话的底层基础必须彻底理解6.1 三种基础消息角色作用SystemMessage系统人设、全局指令from langchain_core.messages import SystemMessage system_msg SystemMessage(content你是一个专业的Python编程助手回答要简洁准确。)HumanMessage用户输入提问from langchain_core.messages import HumanMessage human_msg HumanMessage(content如何用Python读取CSV文件)AIMessage模型返回结果from langchain_core.messages import AIMessage ai_msg AIMessage(content可以使用pandas库的read_csv函数...)6.2 单轮对话消息结构代码演示from langchain_core.messages import SystemMessage, HumanMessage from langchain_community.chat_models import ChatTongyi 1. 初始化模型 chat ChatTongyi( dashscope_api_keyos.getenv(DASHSCOPE_API_KEY), modelqwen-max, temperature0.7 ) 2. 构建消息列表 messages [ SystemMessage(content你是一个技术文档编写助手。), HumanMessage(content请用Markdown格式写一个Python函数的文档字符串。) ] 3. 调用模型 response chat.invoke(messages) print(response.content)6.3 多轮对话消息列表拼接原理# 第一轮对话 messages [ SystemMessage(content你是一个数学老师。), HumanMessage(content什么是勾股定理), AIMessage(content勾股定理是...) # 模型上一轮的回答 ] 第二轮对话追加新的人类消息 messages.append(HumanMessage(content请给出一个例子)) 继续调用 response chat.invoke(messages)6.4 为什么必须用消息结构不能直接字符串提问角色区分让模型清楚每段内容的来源和意图对话历史方便维护多轮对话上下文系统指令通过SystemMessage持久化设定模型行为框架兼容LangChain的链、记忆、Agent都基于消息结构七、实战通义千问/DeepSeek双模型调用完整代码7.1 方式一基础单轮模型调用极简入门from langchain_community.chat_models import ChatTongyi, ChatDeepSeek import os #通义千问调用 qwen_chat ChatTongyi( dashscope_api_keyos.getenv(DASHSCOPE_API_KEY), modelqwen-max ) response qwen_chat.invoke(用Python写一个Hello World程序) print(通义千问回答:, response.content) #DeepSeek调用 deepseek_chat ChatDeepSeek( api_keyos.getenv(DEEPSEEK_API_KEY), modeldeepseek-chat ) response deepseek_chat.invoke(用Python写一个Hello World程序) print(DeepSeek回答:, response.content)7.2 方式二标准消息结构调用企业规范写法from langchain_core.messages import SystemMessage, HumanMessage def chat_with_model(model, question, system_promptNone): 标准化的模型调用函数 messages [] if system_prompt: messages.append(SystemMessage(contentsystem_prompt)) messages.append(HumanMessage(contentquestion)) response model.invoke(messages) return response.content #使用示例 system_prompt 你是一个代码审查助手指出代码中的问题并提供改进建议。 question def add(a, b): return a b result chat_with_model(qwen_chat, question, system_prompt) print(result)7.3 双模型一键切换演示class DualModelChat: def __init__(self): self.models { qwen: ChatTongyi( dashscope_api_keyos.getenv(DASHSCOPE_API_KEY), modelqwen-max ), deepseek: ChatDeepSeek( api_keyos.getenv(DEEPSEEK_API_KEY), modeldeepseek-chat ) } def chat(self, model_name, messages): 一键切换模型 if model_name not in self.models: return f不支持模型: {model_name} model self.models[model_name] response model.invoke(messages) return response.content #使用示例 chat_bot DualModelChat() #使用通义千问 messages [ SystemMessage(content你是一个翻译助手), HumanMessage(contentHello, how are you?) ] result1 chat_bot.chat(qwen, messages) #使用DeepSeek result2 chat_bot.chat(deepseek, messages)7.4 运行结果分析与常见接口报错排查常见报错及解决401 UnauthorizedAPI密钥错误或过期429 Too Many Requests超过频率限制等待后重试500 Internal Server Error模型服务端问题稍后重试Model not found模型名称错误检查文档八、新手易错点总结巩固1、2章环境安装版本坑一定要使用2026年新版安装命令注意langchain-community的导入方式导入路径坑从langchain.llms改为langchain_community.llms或langchain_community.chat_modelsLLM与ChatModel使用场景混淆对话应用一律使用ChatModel和消息结构不懂消息结构导致多轮对话写崩牢记消息列表的拼接顺序和角色区分密钥泄露问题永远不要将API密钥提交到GitHub等公开仓库接口调用超限问题注意免费额度和频率限制生产环境需要监控使用量通过本文的学习你应该已经掌握了2026年LangChain的核心入门技能。接下来可以继续学习提示词模板、记忆机制和RAG等高级主题。记住扎实的基础是构建复杂应用的前提消息结构是LangChain的灵魂务必理解透彻