目录
LangChain基本介绍
LangChain 是一个用于开发由大型语言模型(LLMs)驱动的应用程序的框架。
LangChain本身可以通过自身的组件,方便快捷的开发基于大模型的应用,就像SpringBoot框架快速构建Java后端应用一样,LangChain可以理解为是开发大模型应用的基础框架。
LangChain 简化了 LLM 应用程序生命周期的每个阶段:
- 开发:使用LangChain的开源组件和第三方集成来构建您的应用程序。使用LangGraph构建具有一流流式传输和人工参与支持的状态代理。
- 生产化:使用LangSmith来检查、监控和评估您的应用程序,以便您可以持续优化并自信地部署。
-
部署:使用LangGraph平台将您的LangGraph应用程序转换为生产就绪的 API 和助手。
LangChain框架可以一站式的完成开发、生产检查和部署,针对大模型应用的开发用一套LangChain全家桶就可以完成。
LangChain 为大型语言模型及相关技术(如嵌入模型和向量存储)实现了一个标准接口,并与数百个提供商集成。
- LangSmith 是一个用于构建生产级 LLM 应用的平台。它允许你密切监控和评估你的应用,以便你可以快速且自信地发布。
- LangGraph 是一个低级编排框架,用于构建、管理和部署长时间运行、有状态的Agent。
最底层以LangChain和LangGraph两个框架作为架构,中间与许多组件供应商进行集成,最上层由LangGraph平台进行应用的部署与发布,整个流程通过LangSmith进行监控和评估。
LangChain的安装与基本示例
pip install -qU "langchain[openai]"
通过pip可以快速安装LangChain框架,可以选择多个聊天模型版本进行安装,如:openai,anthropic,google-genai,google-vertexai,aws,groq等
import getpass
import os
if not os.environ.get("OPENAI_API_KEY"):
os.environ["OPENAI_API_KEY"] = getpass.getpass("Enter API key for OpenAI: ")
from langchain.chat_models import init_chat_model
model = init_chat_model("gpt-4o-mini", model_provider="openai")
环境变量中配置OpenAI的key,初始化一个gpt-mini模型。
model.invoke("Hello, world!")
通过调用invoke与模型进行交互。
LangChain的基本架构
LangChain 框架由多个开源库组成。
langchain-core
: 聊天模型和其他组件的基础抽象。- 集成包(例如
langchain-openai
、langchain-anthropic
等):重要的集成已被拆分为由 LangChain 团队和集成开发者共同维护的轻量级包。 langchain
: 构成应用程序认知架构的链、代理和检索策略。langchain-community
: 社区维护的第三方集成。langgraph
: 用于将 LangChain 组件组合成具有持久化、流式传输和其他关键功能的可生产应用程序的编排框架。