LangChain.js 实战入门:从模型调用到函数调用详解
LangChain.js 是一个用于快速开发大模型应用的框架,提供了一系列强大的功能和工具,使得开发者能够更加高效地构建复杂的人工智能应用程序。本文旨在介绍在实际项目中使用 LangChain.js 时的核心方法和技巧,涵盖基础配置、模型调用、流式传输及高级功能。
环境准备
在开始之前,请确保你的开发环境已安装 Node.js(推荐 v16+)。通过 npm 或 yarn 安装必要的依赖包。
npm install langchain @langchain/openai
对于 TypeScript 项目,建议同时安装类型定义文件:
npm install --save-dev @types/node
环境变量配置是管理 API Key 的最佳实践。在项目根目录创建 .env 文件,避免将敏感信息硬编码在代码中。
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx
AZURE_OPENAI_API_KEY=your_azure_key
AZURE_OPENAI_API_INSTANCE_NAME=your_instance_name
AZURE_OPENAI_API_DEPLOYMENT_NAME=your_deployment_name
在代码中加载环境变量,可使用 dotenv 库或在运行时直接读取 process.env。
基础模型调用
LangChain.js 新架构区分了两种主要调用方式:LLM 和 ChatModel。虽然本质都是调用模型接口,但 ChatModel 更适合处理对话场景,支持多轮上下文交互,因此推荐使用后者。
实例化 ChatModel
以 OpenAI 为例,实例化 ChatModel 需要传入 API Key 或其他认证参数。Key 可以直接在构造函数中传入,也可以自动从环境变量中读取。
import { ChatOpenAI } from "@langchain/openai";
const chatModel = new ChatOpenAI({
openAIApiKey: process.env.OPENAI_API_KEY,
modelName: "gpt-3.5-turbo",
});
如果是 Azure OpenAI,则需要配置额外的连接参数:
const azureChatModel = new ChatOpenAI({
azureOpenAIApiKey: process.env.AZURE_OPENAI_API_KEY,
azureOpenAIApiInstanceName: process..,
: process..,
: ,
});


