从零学会LangChain调用大模型!统一接口+代码实战

从零学会LangChain调用大模型!统一接口+代码实战 it_chat_model中完成统一调用大幅简化多模型适配开发。核心参数仅需关注两个model指定具体的模型名称如 gpt-5.5、deepseek-v3model_provider指定模型提供商标识如 openai、deepseek。若未指定系统将根据 model 参数的前缀推断模型提供商如model“openai:gpt-5.5”会推断为openai。init_chat_model( model: str | None None, *, model_provider: str | None None, configurable_fields: Literal[any] | list[str] | tuple[str, ...] | None None, config_prefix: str | None None, **kwargs: Any {} ) - BaseChatModel | _ConfigurableModel统确定大模型提供商后便会自动实例化对应厂商的原生实现类 —— 比如 OpenAI 对应 ChatOpenAI、Anthropic 对应 ChatAnthropic、DeepSeek 对应 ChatDeepSeek 等开发者无需手动引入只需通过init_chat_model统一入口即可完成底层适配。在实现类对象上常用invoke和stream两种调用方法。invoke 会让大模型一次性返回完整响应对象stream则逐Token输出内容片段。下面通过代码实战带你彻底搞懂。首先打开命令行窗口使用 pip 命令安装 LangChain和langchain-openai开发库。pip install langchain langchain-openai通过dotenv库的load_dotenv()方法自动读取项目里的.env配置文件把文件中所有键值对自动载入系统环境变量os.environ后续可直接读取模型地址、密钥等配置避免硬编码。import os from dotenv import load_dotenv load_dotenv()使用 LangChain 内置的init_chat_model初始化大模型通过两个核心参数配置model指定模型名称model_provider指定模型对接厂商。import os from dotenv import load_dotenv load_dotenv() llm init_chat_model(modelqwen3.6-plus, model_provideropenai) print(type(llm))当厂商参数设为openai时底层会自动调用ChatOpenAI实现类并从环境变量自动读取API密钥和接口地址。这里打印模型实例类型和请求基准地址方便查看底层配置。import os from dotenv import load_dotenv from langchain.chat_models import init_chat_model load_dotenv() llm init_chat_model(modelqwen3.6-plus, model_provideropenai) print(type(llm)) print(base_url:, llm.root_client.base_url)可以省略model_provider参数直接在模型名称前加上厂商前缀格式为厂商:模型名一行代码即可完成大模型初始化写法更简洁。import os from dotenv import load_dotenv from langchain.chat_models import init_chat_model load_dotenv() llm init_chat_model(modelopenai:qwen3.6-plus) print(type(llm)) print(base_url:, llm.root_client.base_url)大模型初始化完成后使用invoke()方法发起对话请求。该方式会等待模型生成完整内容后一次性返回全部结果。import os from dotenv import load_dotenv from langchain.chat_models import init_chat_model load_dotenv() llm init_chat_model(modelos.getenv(MODEL)) result llm.invoke(你是谁呀) print(result)想要实现打字机实时输出效果改用stream()方法循环遍历模型返回内容。end保证文字连续不换行flushTrue强制即时打印实现流畅的流式对话效果。import os from dotenv import load_dotenv from langchain.chat_models import init_chat_model load_dotenv() llm init_chat_model(modelos.getenv(MODEL)) for chunk in llm.stream(详细介绍AI大模型的应用): if chunk.content: print(chunk.content, end, flushTrue)