【LangChain】3.LLM接入、嵌入模型与LangChain框架 📅 2026/7/9 1:22:45 3.LLM接入、嵌入模型与LangChain框架文章目录3.LLM接入、嵌入模型与LangChain框架LLM接入方式与局限LLM的战略意义接入LLM的三种方式API接入实操本地部署实践Ollama原生LLM的固有局限嵌入模型与AI开发范式嵌入模型原理嵌入模型应用场景主流嵌入模型与接入AI编程范式的演进与Vibe CodingAI开发框架原则LLM框架生态与LangChainLLM框架生态概览原生LLM的六大问题LangChain组件化设计链式架构LangChain生态全景LangGraph与链式局限总结原生LLM的问题与LangChain的解决方案包结构与安装LLM接入方式与局限LLM的战略意义大模型将 AI 从炫技的概念变成一种基础资源像电一样融入各行各业。生产力革命的加速器自动化所有基于语言和知识的工作——撰写论文/文档/邮件、翻译、编码、答疑。AI 的核心价值不是替代人类而是增强人类让人从重复性脑力工作中解放出来。人机交互的新范式从人适应机器转向机器适应人。不再需要学习复杂的软件菜单或编程语言用最自然的说话方式就能指挥机器完成任务。产业智能化的核心引擎赋能千行百业——教育个性化学习、医疗AI 分析医学影像、法律条文检索与案例分析、文创内容创作与风格迁移。接入LLM的三种方式构建 AI 应用时通过以下三种方式接入大模型能力接入方式说明适用场景API 远程调用通过 HTTP 请求调用厂商部署好的模型快速开发、不想管理硬件资源SDK 接入使用厂商提供的 SDK 库进行调用更便捷的代码集成开源模型本地部署在自己服务器上部署开源模型数据安全、自定义需求选择策略数据敏感则本地部署缺乏运维能力和 GPU 资源则云端 API大规模应用长期来看本地部署固定成本更低只需通用能力则云端 API 足够需要微调则选择支持微调的 API 或本地部署。SDK 示例OpenAI Python SDKfromopenaiimportOpenAI clientOpenAI(api_keyyour-api-key)responseclient.responses.create(modelgpt-4o-mini,input你好你是谁)print(response.output_text)SDK 将 HTTP 请求封装成类和方法调用代码更简洁、更易读、更易维护。API接入实操通用流程注册账号 → 申请 API Key → 查看官方文档 → 构建 HTTP 请求 → 处理响应。DeepSeek 示例POST https://api.deepseek.com/chat/completions Authorization: Bearer your-api-key Content-Type: application/json Body: {model: deepseek-chat, messages: [{role: user, content: 你好}]}OpenAI 示例POST https://api.openai.com/v1/responses Authorization: Bearer your-api-key Content-Type: application/json Body: {model: gpt-4o-mini, input: 你好}响应包含 message/content模型回复、token 用量等元数据。可使用 API Fox、Postman 等工具测试。注意事项API Key 不可泄露不要提交到代码仓库调用国外模型需科学上网Header 中Authorization: Bearer keyBearer 后需加空格不同模型价格和能力不同按需选择。本地部署实践Ollama开源模型可从Hugging Face国际主流或魔搭社区 ModelScope国内平台获取。推理框架方面Ollama一键拉取运行对用户最友好vLLM适合高吞吐量生产环境TGI是 Hugging Face 官方方案LM Studio提供图形化操作界面。Ollama 安装与使用前往 ollama.com 下载对应 OS 版本安装后默认启动服务端口 11434配置模型存储路径OLLAMA_MODELSD:\model需重启拉取运行模型ollama run deepseek-r1:1.5b参数规模硬件要求能力1.5b普通笔记本基本问答7b / 8b8核16GB 内存中等能力70b专用 GPU 服务器能力强671b高端服务器完整能力Ollama 启动后提供本地 APIPOST http://localhost:11434/api/chatstream: false一次性返回stream: true默认流式输出。原生LLM的固有局限1. 上下文长度限制所有 LLM 都有固定输入长度4K、8K、128K、400K Token无法将几百页 PDF 或整个公司知识库直接塞给模型。2. 缺乏私有/实时知识训练数据不包含企业内部文档、个人笔记、实时动态信息。直接让 LLM 回答私有知识或实时信息要么无法回答要么给出过时或错误内容。3. 知识截止日期模型训练数据有截止时间点如 GPT-5 截止于 2024 年 9 月无法获取最新知识。4. 复杂任务处理能力弱原生 API 本质是一问一答接口。对于多步骤复杂任务如分析这份财报总结要点并生成 PPT 大纲需手动拆分逻辑步骤、多次调用 API 并维护中间状态。5. 输出格式不可控虽然可通过提示词要求 JSON 输出但仍可能产生格式错误需要自己编写后处理代码来校验和清洗。嵌入模型与AI开发范式嵌入模型原理嵌入模型Embedding Model是表示型模型目标不是生成文本而是为输入文本创建富含语义的数值表示向量。与之对比大语言模型是生成式模型目标是根据输入生成新文本。你好 → 嵌入模型 → [0.3, 0.2, 0.6, 0.9, ...] ← 高维空间中的一个点向量具有维度空间特性维度越高捕捉语义越细微。可以通过数学方式直接度量两段文本的语义相似性。欧氏距离两点之间的直线距离距离越短相似度越高适合比较长度相近的文本。余弦相似度关注两个向量在方向上的差异夹角余弦值夹角越小语义越相似。大多数场景推荐使用——例如比较愉快2字与一篇 1000 字开心主题作文欧氏距离误判为不相似长度差异大余弦相似度判断为语义相似方向一致。嵌入模型应用场景语义搜索传统搜索依赖关键词匹配搜苹果→只匹配含苹果的文档语义搜索将查询和文档都转换为向量通过相似度检索即使文档中没有查询的确切词汇也能找到。例如搜索如何解决笔记本电脑无法充电可检索出电池电量不增加电源适配器故障排查等文档。检索增强生成RAG语义搜索 大语言模型的组合是当前最主流的 AI 应用范式。用户提问时系统先用嵌入模型在知识库中语义搜索找到最相关内容再将内容和问题一起交给 LLM 生成答案。例如企业内部客服机器人查询最新育儿假政策先从人事制度文档中语义检索相关条款再由 LLM 生成摘要回答。推荐系统将用户根据历史行为和物品商品、电影、新闻都转换为向量。喜欢相似物品的用户向量接近相似物品的向量接近。例如喜欢《盗梦空间》《黑镜》的用户向量与也喜欢这些电影的其他用户接近系统发现这些用户还普遍喜欢《星际穿越》则推荐给该用户。异常检测正常数据的向量通常聚集在一起新数据向量远离聚集区则可能是异常点。例如信用卡交易反欺诈系统将正常交易形成向量聚集区一笔发生在通常消费地之外的高额交易出现在聚集区之外则标记为潜在欺诈。主流嵌入模型与接入基于 Hugging FaceMTEB排行榜业界公认标准模型所属公司特点text-embedding-3-largeOpenAI默认 3072 维可降维输入 8192 tokensQwen3-Embedding-8B阿里巴巴开源100 语言32k 上下文32-4096 维可调gemini-embedding-001Google100 语言3072 维可选 1536/7682048 tokensAPI 接入HTTP 示例POST https://api.openai.com/v1/embeddings Authorization: Bearer your-api-key Body: {model: text-embedding-3-small, input: 你好}响应返回嵌入向量浮点数列表及 token 用量。SDK 接入OpenAI Python 示例fromopenaiimportOpenAI clientOpenAI(api_keyyour-api-key)responseclient.embeddings.create(modeltext-embedding-3-small,input你好,dimensions1024# 可选降维)vectorresponse.data[0].embedding本地部署适用开源模型如 Qwen3-Embedding-8B需至少 16GB 显存 GPU从 Hugging Face 下载模型用 transformers 等库加载推理。初创项目从 API 方式开始规模化后再考虑本地部署。嵌入模型生成的向量需存储在向量数据库如 Chroma、Milvus、Pinecone中供检索使用。为了便于切换不同嵌入模型常使用 LangChain 等框架提供的统一接入接口。AI编程范式的演进与Vibe Coding编程范式经历了从逐行敲代码 → 低代码平台 → AI 辅助编程的演进。Vibe Coding氛围编程是 OpenAI 联合创始人 Andrej Karpathy 于 2025 年 2 月提出的一种新兴实践——用自然语言与 AI 聊天来生成代码开发者几乎不手动写代码。正如 Karpathy 所述“这不算真正的编程——我只是看看东西说说东西运行东西然后复制粘贴东西而且它大多都能工作。”代表工具Cursor集成 AI 的 IDE、Trae字节跳动、Windsurf。开发者提出需求AI 生成代码开发者审查代码测试反馈Vibe Coding 的局限性代码质量黑箱能用但非优秀无法理解架构优雅性、上下文长度有限金鱼记忆、知识截止日期不了解最新库版本、幻觉问题编造不存在的 API、安全漏洞无声引入 SQL 注入/XSS 等。Karpathy 在 2025 年 8 月也调整了观点“不要幻想万能 AI 工具更可行的做法是建立结构让不同工具各司其职。”Vibe Coding 带来的身份转变传统代码编写者 → AI 时代的代码审核者提示词工程师。前提是必须看得懂 AI 生成的代码否则无法审核和修正。AI开发框架原则AI 开发框架与传统框架共享两个核心原则抽象与封装Spring 封装了 Java EE 的复杂性依赖注入、事务管理、MVClibcurl 封装了网络协议复杂性HTTP、FTP、SMTPLangChain 封装了与不同 LLM、向量数据库、工具交互的复杂性。开发者不需要为每个供应商编写不同的 API 调用代码。模块化与可组装性Spring 通过依赖注入将应用组织成可插拔的 BeanLangChain 以链Chain的方式组装组件——大模型组件、提示词模板、工具组件、向量数据库像乐高积木一样组合起来构建复杂 AI 工作流。使用 AI 开发框架的好处标准化流程预构建模块减少重复编码、将复杂 LLM 应用拆解为核心模块专解痛点、生态集成大模型/向量数据库/工具/检索器、构建从数据到部署的全链路系统思维、内置最佳实践避免基础风险。未来展望Vibe Coding 不会取代传统编程技能而是形成互补。开发模式将是混合式——利用 Vibe Coding 的速度处理前端和重复性工作依靠扎实的框架知识构建核心业务逻辑。框架思维驾驭 Vibe 工具才是未来开发者最强的核心竞争力。LLM框架生态与LangChainLLM框架生态概览各语言生态的主流 LLM 框架语言生态框架定位PythonLangChain通用 AI 框架生态最丰富灵活性最高PythonLlamaIndex专注 RAG 与数据连接文档索引查询性能优异JS/TSLangChain.js官方 TS 移植版支持全栈和 Edge RuntimeJS/TSLlamaIndex.TSTS 版本的 RAG 专注框架JavaLangChain4j社区项目API 符合 Java 习惯JavaSpring AISpring 官方项目与 Spring 生态无缝集成JavaSpring AI Alibaba阿里云扩展深度集成通义千问Cllama.cpp高性能本地推理引擎非全栈框架C 缺少全栈框架的原因开发效率不匹配LLM 应用快速迭代 vs C 编译周期长、生态重心不同C 优势在系统编程、天然技术分工Python/Java 负责应用层C 负责底层推理。现代 LLM 架构普遍采用Python/Java 负责应用层C 负责底层推理的分工模式llama.cpp 是最成功的案例。选型建议按团队技术栈选择新项目首选 Python 生态LangChainRAG 为核心选 LlamaIndexSpring 项目选 Spring AI全栈应用选 LangChain.js高性能推理用 llama.cpp 做底层。原生LLM的六大问题以一个智能医疗咨询助手为例展示将 LLM 嵌入应用时遭遇的六大难题1. 幻觉问三岁孩子吞了一枚纽扣电池怎么办“模型可能错误回答多喝水吃香蕉”——致命错误纽扣电池会卡在食道快速泄漏化学物质灼烧内脏必须立即送医。2. 提示词不统一团队中不同工程师编写风格迥异的提示词有的给出确凿诊断误导用户有的谨慎声明后分析。没有统一规范导致应用行为不可预测难以调试和规模化优化。3. 模型切换不灵活从 GPT-3.5 切换到 GPT-5 或 Llama 3接入方式完全不同不同供应商、不同 API切换成本极高代码与模型 API 强耦合。4. 输出格式不可控程序需要结构化数据如 JSON 格式的疾病名称和置信度但原生 API 返回的是自然语言字符串需要复杂且脆弱的正则表达式来解析。5. 知识陈旧主流模型训练数据截止于某个时间点。问奥密克戎 XBB.1.5 变种最新加强针效果如何——模型无法回答或基于过时信息给出错误答案。6. 缺乏专业服务调用能力问布洛芬和阿司匹林可以同时吃吗理想流程是先调用药物相互作用 API 获取专业数据再由 LLM 组织回答。但让 LLM 自发地、可靠地决定何时调用哪个外部工具是极其复杂的系统设计问题。LangChain组件化设计LangChain 是一个用于开发 LLM 驱动应用程序的框架。它将 NLP 流程拆解为标准化组件让开发者自由组合并高效定制工作流。以一个基于知识库的问答机器人为例包含 8 个步骤在线处理用户提问问题转向量语义搜索问题文档送LLM生成答案离线处理读取文档文本分割文本转向量存入向量数据库组件类型对应步骤作用文档加载器① 读取文档从各种来源加载文档文本分割器② 文本分割将大文档拆分成小块嵌入模型③⑥ 文本转向量生成语义向量向量存储④ 存入向量库存储并管理向量检索器⑤⑦ 语义搜索检索相似文档大语言模型⑧ 生成答案基于上下文生成回答记忆组件多轮对话存储对话历史与状态学习 LangChain 本质就是学习如何使用这些组件以及如何将它们组合成链。LangChain 提供的主要标准化模块包括统一的模型调用灵活切换不同供应商、灵活的提示词管理模板动态生成、可组合的任务链、上下文记忆机制、检索与向量存储集成。链式架构链Chain是 LangChain 的核心概念它将多个组件串联起来。传统代码需要手动编排组件LangChain 链式写法只需定义链并一次执行。例如借助提示词完成 LLM 提问定义提示词模板组件 大模型组件再定义链为模板→LLM执行时用户输入自动注入模板再调用 LLM。链式的意义标准化了 AI 应用的编码模式组件可插拔、可复用降低认知负荷只需关注组件和链的定义。提示词模板组件示例固定部分“你是一位医生请回答以下医学问题” 用户输入变量“我感到心烦、恶心一周了”→ 组合成完整提示词。LangChain生态全景LangChain 生态从基座到应用分为多层基座层LangChain链式串联组件 LangGraph图式处理复杂流程三方集成层向量数据库、搜索引擎、检索器、工具、大模型封装监控调试层LangSmith调试、监控、评估 LLM 应用部署运维层LangGraph Platform部署与运维LangChain 发展简史2022 年 10 月由 Harrison Chase 开源2023 年推出 JS 版并成立公司获数千万美元融资2023 底至 2024 初核心代码与三方集成解耦引入 langchain-core2024 年 1 月发布 0.1.0 稳定版引入 LCELLangChain Expression Language2024 年 5 月发布 0.2 版增强异步与流式2024 下半年发布 0.3 版2025 年 9 月发布 1.x Alpha 内测版新增 langchain-legacy 包保证向后兼容。LangGraph与链式局限传统链式架构在处理复杂流程时有四大局限。以AI 客服工单系统为例局限一流程单向无法回溯。如果用户提供错误信息流程已到处理阶段才发现链式无法回退。局限二分支条件处理笨重。实现条件分支需手动写大量 if-else。局限三需要手动维护系统状态。节点执行状态、用户交互信息、系统完成状态都需自行管理。局限四人工参与困难。需要人工介入时如退款需卖家同意链式无法优雅暂停等待需自行构建通知系统。LangGraph是 LangChain 团队推出的图式架构框架定位为低层次编排框架构建可控、可靠的 AI 代理工作流。已在 LinkedIn、Uber、GitLab 等公司生产环境中使用。查询话费网络服务错误正确是否开始分类信息收集验证信息处理需要人工?人工介入总结关单LangGraph 的核心元素节点Node即每个处理步骤边Edge即节点间连接条件边根据条件选择下一节点。它通过图结构实现循环回退、条件边自动决策、自动维护图状态、内置暂停/恢复机制支持人机协作。LangGraph 发展简史2024 年初作为 LangChain 0.1 实验性功能发布2024 年中独立拆分并引入 Checkpoint 检查点机制2024 下半年发布 0.2.x/0.3.x 稳定版2024 年底增强异步与并发支持2025 年发布 0.4.x/0.5.x 并推出 LangGraph Platform2025 年 6 月发布 0.6 版启动 v1.0 规划。总结原生LLM的问题与LangChain的解决方案原生 LLM 的问题LangChain 的解决方案上下文长度有限支持外部知识库RAG缺乏私有/实时知识RAG 注入内部知识 工具调用知识有截止日期工具调用搜索引擎等复杂任务处理困难LangGraph 图式工作流输出格式不可控内置结构化输出支持模型切换不灵活统一封装接口提示词不统一提示词模板组件LangChain 正是为解决上述问题而生它将底层大模型接入封装成标准组件让开发者专注于业务逻辑而非底层细节。包结构与安装langchain-core ← 核心代码所有包的基础包含 LCEL声明式链定义语言 ↑ langchain ← 主包/起点各集成按独立包发布pipinstalllangchain# 主包pipinstalllangchain-openai# OpenAI 集成pipinstalllangchain-community# 社区集成尚未拆分的包pipinstalllanggraph# 图式架构pipinstalllangsmith# 监控与评估 SDK可选LangSmith SDK 由 LangChain 自动安装但不依赖 langchain-core可独立使用。