AI大模型应用开发 langchain 之 langchain 入门
什么 langchain ?LangChain是一个用于开发由大型语言模型 LLMs 支持的应用程序的框架。从下面开始我们认知常用的 langchain 常用的生态库以及知识点。资源库langchain 有自己的生态下面是 langchain 生态的一些常用的资源langchain /langchainjslangchain 集成langchain apilangserveLangSmithlanggraph/langgraph cloudlangchain 不仅支持 Python 生态也支持 TypeScript/JavaScript 生态意味着开发者可以使用 JS 生态开发 AI 应用。目前的 langchain 的版本是:v0.3。langchain 集成众多的 llm 和组件使得 AI 开发变得容易。langchain 经典架构图LCELLCEL 全称 LangChain Expression Language是一种创建任意自定义链的方法。核心模块和安装langchain 目前是 v0.3 版本如果使用了旧版本可能有内容发生了变化。这里还是以 Python 为例langchain-corelangchain-communitylangchainlanggraphlangservelangsmithlangchain-cli如果你是使用 pip 作为安装工具pip install langchain-core pip install langchain pip install langsmith pip install -U langgraph pip install langserve[all] pip install -U langchain-cli # 社区 pip install langchain_community # 大模型 pip install langchain-openai pip install -qU langchain-anthropiclangchain 组件langchain 提供了很多的组件帮助开发方便的开发 LLM 应用术语说明Prompt Template提示词模板用于定义输入给模型的格式和内容。Example selectors示例选择器用于从一组示例中选择适当的示例以供参考或生成响应。Chat models聊天模型专门设计用于与用户进行对话和互动的语言模型。Messages消息指用户与模型之间的交流内容。LLM大模型旧语言模型指大型预训练语言模型通常用于生成和理解文本。Output parsers输出解释器用于处理和格式化模型生成的输出使其更易于使用。Document loaders文档加载器用于将文档内容加载到系统中以便处理和分析。Text splitters文本分割器用于将长文本分割成较小的部分以便更好地处理和分析。Embedding models嵌入模型将文本转换为向量表示以便进行相似度计算和检索。Vector stores向量存储保存向量数据的数据库或系统以支持高效的检索和查询。Retrievers检索器负责从存储中获取相关数据或信息的组件。Indexing索引建立数据结构以支持快速搜索和检索。Tools工具辅助完成特定任务的软件组件或功能。Multimodal多模型涉及处理和分析多种数据类型如文本、图像等的能力。Agents代理智能体自动化执行特定任务的智能系统或程序。Callbacks回调允许在特定事件发生时执行自定义代码的机制。自定义组件用户自定义的模块或功能以扩展系统的功能或适应特定需求。# PromptTemplate, ChatPromptTemplate from langchain_core.prompts import PromptTemplate ChatPromptTemplate prompt_template PromptTemplate.from_template(Tell me a joke about {topic}) prompt_template ChatPromptTemplate([ (system, You are a helpful assistant), (user, Tell me a joke about {topic}) ]) prompt_template.invoke({topic: cats}) # example_selector class BaseExampleSelector(ABC): Interface for selecting examples to include in prompts. abstractmethod def select_examples(self, input_variables: Dict[str, str]) - List[dict]: Select which examples to use based on the inputs. abstractmethod def add_example(self, example: Dict[str, str]) - Any: Add new example to store. prompt FewShotPromptTemplate( example_selectorexample_selector, # ... ) # chat model from langchain_openai import ChatOpenAI llm ChatOpenAI(modelgpt-4o-mini) # message from langchain_core.messages import HumanMessage model.invoke([HumanMessage(contentHello, how are you?)]) # llm from langchain_openai import OpenAI llm OpenAI(modelgpt-3.5-turbo-instruct, n2, best_of2) # outparser str from langchain_core.output_parsers import StrOutputParser parser StrOutputParser() # loader from langchain_community.document_loaders.csv_loader import CSVLoader from langchain_community.document_loaders import PyPDFLoader # langchain_text_splitters from langchain_text_splitters import CharacterTextSplitter text_splitter CharacterTextSplitter.from_tiktoken_encoder( encoding_namecl100k_base, chunk_size100, chunk_overlap0 ) texts text_splitter.split_text(document) # embedding_models: OpenAIEmbeddings 和 HuggingFaceEmbeddings and ZhipuAIEmbeddings from langchain_openai import OpenAIEmbeddings from langchain_huggingface import HuggingFaceEmbeddings from langchain_community.embeddings import ZhipuAIEmbeddings # vectorstores from langchain_core.vectorstores import InMemoryVectorStore from langchain_community.vectorstores import FAISS from langchain_chroma import Chroma vectorstore InMemoryVectorStore.from_texts( [txt_content], embeddingembeddings, ) vectorstore FAISS.from_documents(texts, embeddings) vector_store Chroma( collection_nameexample_collection, embedding_functionembeddings, persist_directory./chroma_langchain_db, # Where to save data locally, remove if not necessary ) # retriever invoke retriever vectorstore.as_retriever() docs retriever.invoke(what did the president say about ketanji brown jackson?) # index from langchain.indexes import SQLRecordManager, index # tools from langchain_core.tools import tool tool def multiply(a: int, b: int) - int: Multiply two numbers. return a * b # agent from langchain.agents import AgentExecutor agent ( { input: lambda x: x[input], agent_scratchpad: lambda x: format_to_openai_tool_messages( x[intermediate_steps] ), chat_history: lambda x: x[chat_history], } | prompt | llm_with_tools | OpenAIToolsAgentOutputParser() ) agent_executor AgentExecutor(agentagent, toolstools, verboseTrue) ## langgraph create_tool_calling_agent from langchain.agents import create_tool_calling_agent agent create_tool_calling_agent(model, tools, prompt) agent_executor AgentExecutor(agentagent, toolstools) ## langgraphcreate_react_agent from langgraph.prebuilt import create_react_agent langgraph_agent_executor create_react_agent(model, tools) # callbacks from langchain_core.callbacks import BaseCallbackHandler callbacks [LoggingHandler()] chain prompt | llm chain.invoke({number: 2}, config{callbacks: callbacks})大模型在大模型应用中开发中大模型直接用的是chat 大模型embedding 大模型常用的大模型和运行器OpenAI/AzureOpenAI/OpenAIEmbeddingsAnthropicvertexaihuggingfaceawsollamaZhipuAIMistralAIBaidu Qianfan…向量数据库ChromaFAISSInMemoryVectorStoreMilvusPGVectorRedisSQLiteVec…运行环境运行大模型其实可以用不同的 python 运行环境硬编码使用编辑器硬编码jupyter notebook: python 代码能够分段缓存数据结构清晰 jupyter 推荐配合 vscode 使用可以使用通用的编辑器。google 的Colabnotebooks Colab 赠送不少的内存对于小的应用基本够用了。如果没有使用过大概是这样的一个简单的聊天我们使用 zhipuAI为什么因为 zhipu AI 的 glm-4-flash 目前是免费调用。如果还没有注册的新进入大模型应用开发的可以考虑使用zhipu AI质谱的支持自己的 sdk, 和 openAI 的方式以及 langchain 的 openAI 的方式调用大模型。同时质朴也有 embeddings 模型速度可以在初期学习已经够用了。首先需要创建一个.env文件将质谱 AI 的 key 保存起来方便访问。OPENAI_API_KEY your_zhupu_ai_keylangchain_openai 使用 ChatOpenAI 调用质谱 AI 的glm-4-flash大模型。同时我们需要传入openai_api_base地址。import dotenv from langchain_openai import ChatOpenAI from langchain_core.messages import HumanMessage, SystemMessage from langchain_core.output_parsers import StrOutputParser from langchain_core.prompts import ChatPromptTemplate key dotenv.get_variable(.env, OPENAI_API_KEY) # 不同的版本不一样 model ChatOpenAI( temperature0.95, modelglm-4-flash, openai_api_keykey, openai_api_basehttps://open.bigmodel.cn/api/paas/v4/ ) # 消息 messages [ SystemMessage(contentTranslate the following from English into Italian), HumanMessage(contenthi!), ] # invoke 调用模型 model.invoke(messages) # 格式化输出 parser StrOutputParser() result model.invoke(messages) parser.invoke(result) # 使用 chain 链 chain model | parser chain.invoke(messages)、 # 使用提示词 system_template Translate the following into {language}: prompt_template ChatPromptTemplate.from_messages( [(system, system_template), (user, {text})] ) chain prompt_template | model | parser chain.invoke({language: italian, text: hi})小结本文主要介绍 Langchian 的基本基本概念组件、生态内容。以及常用的大模型向量数据库 embedding 以及使用 zhipu ai 配合 ChatOpenAI 实现一个简单的 chatmodel 的例子。想入门 AI 大模型却找不到清晰方向备考大厂 AI 岗还在四处搜集零散资料别再浪费时间啦2026 年AI 大模型全套学习资料已整理完毕从学习路线到面试真题从工具教程到行业报告一站式覆盖你的所有需求现在全部免费分享扫码免费领取全部内容​一、学习必备100本大模型电子书26 份行业报告 600 套技术PPT帮你看透 AI 趋势想了解大模型的行业动态、商业落地案例大模型电子书这份资料帮你站在 “行业高度” 学 AI1. 100本大模型方向电子书2. 26 份行业研究报告覆盖多领域实践与趋势报告包含阿里、DeepSeek 等权威机构发布的核心内容涵盖职业趋势《AI 职业趋势报告》《中国 AI 人才粮仓模型解析》商业落地《生成式 AI 商业落地白皮书》《AI Agent 应用落地技术白皮书》领域细分《AGI 在金融领域的应用报告》《AI GC 实践案例集》行业监测《2024 年中国大模型季度监测报告》《2025 年中国技术市场发展趋势》。3. 600套技术大会 PPT听行业大咖讲实战PPT 整理自 2024-2025 年热门技术大会包含百度、腾讯、字节等企业的一线实践安全方向《端侧大模型的安全建设》《大模型驱动安全升级腾讯代码安全实践》产品与创新《大模型产品如何创新与创收》《AI 时代的新范式构建 AI 产品》多模态与 Agent《Step-Video 开源模型视频生成进展》《Agentic RAG 的现在与未来》工程落地《从原型到生产AgentOps 加速字节 AI 应用落地》《智能代码助手 CodeFuse 的架构设计》。二、求职必看大厂 AI 岗面试 “弹药库”300 真题 107 道面经直接抱走想冲字节、腾讯、阿里、蔚来等大厂 AI 岗这份面试资料帮你提前 “押题”拒绝临场慌1. 107 道大厂面经覆盖 Prompt、RAG、大模型应用工程师等热门岗位面经整理自 2021-2025 年真实面试场景包含 TPlink、字节、腾讯、蔚来、虾皮、中兴、科大讯飞、京东等企业的高频考题每道题都附带思路解析2. 102 道 AI 大模型真题直击大模型核心考点针对大模型专属考题从概念到实践全面覆盖帮你理清底层逻辑3. 97 道 LLMs 真题聚焦大型语言模型高频问题专门拆解 LLMs 的核心痛点与解决方案比如让很多人头疼的 “复读机问题”三、路线必明 AI 大模型学习路线图1 张图理清核心内容刚接触 AI 大模型不知道该从哪学起这份「AI大模型 学习路线图」直接帮你划重点不用再盲目摸索路线图涵盖 5 大核心板块从基础到进阶层层递进一步步带你从入门到进阶从理论到实战。L1阶段:启航篇丨极速破界AI新时代L1阶段了解大模型的基础知识以及大模型在各个行业的应用和分析学习理解大模型的核心原理、关键技术以及大模型应用场景。L2阶段攻坚篇丨RAG开发实战工坊L2阶段AI大模型RAG应用开发工程主要学习RAG检索增强生成包括Naive RAG、Advanced-RAG以及RAG性能评估还有GraphRAG在内的多个RAG热门项目的分析。L3阶段跃迁篇丨Agent智能体架构设计L3阶段大模型Agent应用架构进阶实现主要学习LangChain、 LIamaIndex框架也会学习到AutoGPT、 MetaGPT等多Agent系统打造Agent智能体。L4阶段精进篇丨模型微调与私有化部署L4阶段大模型的微调和私有化部署更加深入的探讨Transformer架构学习大模型的微调技术利用DeepSpeed、Lamam Factory等工具快速进行模型微调并通过Ollama、vLLM等推理部署框架实现模型的快速部署。L5阶段专题集丨特训篇 【录播课】四、资料领取全套内容免费抱走学 AI 不用再找第二份不管你是 0 基础想入门 AI 大模型还是有基础想冲刺大厂、了解行业趋势这份资料都能满足你现在只需按照提示操作就能免费领取扫码免费领取全部内容​2026 年想抓住 AI 大模型的风口别犹豫这份免费资料就是你的 “起跑线”

相关新闻

FastGPT + Dify,本地知识库快速部署

FastGPT + Dify,本地知识库快速部署

大家好,我是一名喜欢在家折腾本地部署的开发者,这次我来分享如何在本地运行 Ollama,并将它与 FastGPT 和 Dify 两个知识库对接。看起来复杂,但其实步骤并不难。我会尽量把内容讲得清楚易懂,加上一些幽默,让…

2026/7/6 9:47:01 阅读更多 →
交通气象监测系统高速公路自动气象站

交通气象监测系统高速公路自动气象站

Q1:交通自动气象站的核心定位是什么?主要解决哪些交通痛点? A:核心定位是“公路气象全要素实时监测与主动预警终端”,专为交通场景设计,聚焦气象因素引发的通行安全与效率问题。其核心作用是解决三大交通痛…

2026/7/6 7:17:17 阅读更多 →
Java 学习

Java 学习

文章目录Java 简介一、Java 核心三大特性(核心设计基石)二、Java 技术体系(三大核心平台,覆盖全开发场景)三、Java 典型应用领域四、Java 语言的核心优势五、Java 版本迭代与现状六、Java 开发的核心环境Java 入门JDK、…

2026/7/7 17:44:11 阅读更多 →

最新新闻

Windows APK安装器架构深度解析:从跨平台适配到权限管理

Windows APK安装器架构深度解析:从跨平台适配到权限管理

Windows APK安装器架构深度解析:从跨平台适配到权限管理 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 在移动应用生态与桌面系统日益融合的今天&#xff…

2026/7/8 6:52:58 阅读更多 →
2026年老山檀香源头工厂盘点,专业内行都在看

2026年老山檀香源头工厂盘点,专业内行都在看

一、行业痛点深度剖析:为何溯源艰难老山檀香素有“香料之王”的美誉,但我们在行业内摸爬滚打多年,深知一个残酷的现实:真正的老山檀,在市场上是稀缺品,而非通货。我们团队在供应链调研中发现,目…

2026/7/8 6:52:58 阅读更多 →
盘锦弱视训练流程,家长要看哪些细节

盘锦弱视训练流程,家长要看哪些细节

盘锦家长了解弱视训练流程时,不能只问“要训练多久”“能不能很快看到变化”,更要先看孩子是否做过正规眼科检查,弱视类型和基础情况是否明确,训练方式是否适合孩子年龄,家长在家要怎么配合,以及后续是否有…

2026/7/8 6:52:58 阅读更多 →
3分钟搞定!国家中小学智慧教育平台电子课本终极下载指南

3分钟搞定!国家中小学智慧教育平台电子课本终极下载指南

3分钟搞定!国家中小学智慧教育平台电子课本终极下载指南 【免费下载链接】tchMaterial-parser 国家中小学智慧教育平台 电子课本下载工具,帮助您从智慧教育平台中获取电子课本的 PDF 文件网址并进行下载,让您更方便地获取课本内容。 项目地…

2026/7/8 6:52:58 阅读更多 →
2026年AIGC检测新标准出台!你的论文还安全吗?

2026年AIGC检测新标准出台!你的论文还安全吗?

2026年,对于每一位正在写论文的大学生和研究者来说,AIGC检测不再是一个陌生的概念,而是一个决定论文生死的关键指标。近期,教育部联合多家学术机构发布了AIGC检测新标准,对AI生成内容的判定更加严格。这意味着什么&…

2026/7/8 6:50:57 阅读更多 →
QT 编译报错 [Makefile:524:obj/commtest.o] Error 127

QT 编译报错 [Makefile:524:obj/commtest.o] Error 127

QT 编译报错 [Makefile:524:obj/commtest.o] Error 127 一、问题现象 在 Qt Creator 中编译 QTracker.pro 项目时,出现如下错误: [Makefile:524:obj/commtest.o] Error 127二、问题原因分析 2.1 Error 127 的含义 Error 127 是 ma…

2026/7/8 6:50:57 阅读更多 →

日新闻

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破

3大核心能力重塑《明日方舟》游戏体验:MAA自动化助手的革命性突破 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients. 项目地址: …

2026/7/8 0:00:48 阅读更多 →
MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N+1 到批处理的全路径

MyBatis 批量操作深度优化——从 N1 到批处理的全路径 一、从"功能正确"到"性能可接受"——MyBatis 批量操作的三段式进化 MyBatis 在日常增删改查场景中几乎是无感的——实体映射直观、SQL 控制灵活。但当数据量从千级上升到十万级、百万级,许…

2026/7/8 0:00:48 阅读更多 →
工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

工业负载控制方案:TPD2015FN与PIC18F45K22应用解析

1. 工业负载控制方案概述在工业自动化、电机驱动和照明控制等高需求场景中,可靠地控制电感和电阻负载是核心挑战之一。TPD2015FN作为东芝的8通道高端智能功率开关IC,配合PIC18F45K22微控制器,能够构建一套稳定、高效的负载控制系统。这套组合…

2026/7/8 0:02:48 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/7 14:24:45 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/7 12:34:47 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/7 15:59:06 阅读更多 →

月新闻