【LangChain.js学习】大模型分类

大模型按功能和使用场景可分为三大核心类型,以下结合 LangChain.js 调用通义千问的实操代码,分别讲解各类模型的定位、用法和适用场景:

模型分类 核心定位 典型能力 适用场景
大语言模型(LLM) 基础文本生成引擎 文本补全、续写、单一问答 简单文本生成、基础问答
对话模型(Chat Model) 多轮交互式对话引擎 多角色交互、上下文理解 智能客服、翻译、多轮对话
嵌入模型(Embedding Model) 文本向量化引擎 语义转化、相似度计算 知识库检索、文本聚类、推荐

对话模型(Chat Model)

核心特点

专为多轮对话设计,支持 system/human/ai 多角色设定,能理解上下文并按预设规则生成响应,是交互类场景的核心模型。

调用代码

typescript 复制代码
import { ChatOpenAI } from "@langchain/openai"

const chatModel = new ChatOpenAI({
    model: "qwen-max",
    configuration: {
        baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1",
        apiKey: "[你的阿里百炼API Key]",
    },
})

const response = await chatModel.invoke([
    {
        // system角色:预设模型行为和能力
        role: "system",
        content: "你是一个专业的翻译,你可以将中文翻译成英文",
    },
    {
        // user角色:输入具体用户指令
        role: "user",
        content: "请帮我翻译成英文:你好",
    },
])
console.log(response.content) // 输出示例:Hello

嵌入模型(Embedding Model)

核心特点

将文本转化为固定维度的数值向量(通义千问 text-embedding-v2 为768维),向量间的距离可表征文本语义相似度,是语义检索、知识库的基础。

调用代码

typescript 复制代码
import { OpenAIEmbeddings } from "@langchain/openai"

const embeddingsModel = new OpenAIEmbeddings({
    model: "text-embedding-v2",
    configuration: {
        baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1",
        apiKey: "[你的阿里百炼API Key]",
    },
})

// 单文本向量化:返回一维向量数组
const queryEmbedding = await embeddingsModel.embedQuery("你好")
console.log(queryEmbedding) // 输出示例:[0.012, -0.045, 0.078, ...]

// 扩展:多文本批量向量化(适用于知识库构建)
// const batchEmbeddings = await embeddingsModel.embedDocuments(["你好", "世界"])

大语言模型(LLM)

核心特点

最基础的大模型类型,以「文本补全」为核心能力,无多角色交互设计,输入单一文本指令,返回对应的生成结果。

与对话模型的区别

  • 大语言模型:输入输出均为纯文本,无角色区分,适合简单的文本生成/问答;
  • 对话模型:基于大语言模型封装,支持多角色、多轮上下文,交互性更强。

调用代码

typescript 复制代码
import { OpenAI } from "@langchain/openai"

const llm = new OpenAI({
    model: "qwen-plus",
    configuration: {
        baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1",
        apiKey: "[你的阿里百炼API Key]",
    },
})

// 输入单一文本指令,直接返回结果
const response = await llm.invoke("翻译"你好"成英文")
console.log(response) // 输出示例:Hello
相关推荐
计算机魔术师16 小时前
AI为拿高分不惜入侵网站:22个模型作弊审计,真相让人背脊发凉
前端
晓说前端16 小时前
TypeScript 核心语法应用 —— Vue 3 中的使用(下)
前端·javascript·typescript·类型系统
zhangminghuan16 小时前
微信小程序开发核心知识点全景解析(前端必备硬核基础)
前端·微信小程序·小程序
boooooooom16 小时前
尝尝咸淡:从朴素 RAG 到 Graph RAG——一个烹饪问答系统的三层检索升级之路
前端·后端·llm
cindershade16 小时前
让每条前端异常都能回答:该由谁修、为什么现在修
前端
bitbrowser17 小时前
Telegram提示尝试次数过多,换网络和重装有用吗
前端
研☆香17 小时前
前端简单的的变量声明
前端
赵大仁17 小时前
Next.js AI Route Handler 工程化:超时、流式与鉴权
前端·ai·鉴权·next.js·工程化
yuhaiqiang18 小时前
从这两件事就能看出 vibecoding 距离专业作品差距有多大?AI 能抹平技术,但抹不平品味 !
前端·后端·程序员
一次旅行18 小时前
DeepSeek‑V4‑Flash‑Vision‑Exp 小白入门实战|3种传图方式、完整可跑代码、避坑排障
java·前端·人工智能