是用在开发由 大型语言模型 (LLMs)驱动的应用程序的框架。框架通过简化LLM应用的开发、生产化和部署过程,帮助开发者快速构建智能代理和应用。LangChain的核心功能包括快速上手的开发体验、强大的生产化支持以及灵活的部署选项。框架由多个开源库组成,如 langchain-core 、 langchain 和 langgraph ,提供从基础抽象到复杂应用编排的全面支持。LangChain集成LangSmith和LangGraph,分别用在应用的评估和生产级编排,帮助开发者从原型到生产无缝过渡。
开发 :LangChain提供丰富的开源组件和第三方集成,帮助开发者快速构建基于大型语言模型(LLM)的应用程序。
生产化 :通过LangSmith,LangChain支持对应用进行评估、监控和优化,确保应用在生产环境中的性能和稳定性。
部署 :支持将应用转化为生产级API和智能代理,支持高并发处理和持久执行,满足企业级部署需求。
集成 :LangChain支持多种LLM模型以及丰富的第三方工具集成,极大地扩展应用的功能和适用范围。
社区与扩展 :LangChain拥有活跃的社区,社区成员共同维护第三方集成,且用户能轻松添加自定义工具和模型,满足特定需求。
安装LangChain :LangChain生态系统被拆分为不同的包,支持选择安装所需的功能模块。 安装主要的 langchain 包 :
pip install langchain 安装特定的集成包 : 如需要使用OpenAI的模型,安装 langchain-openai 包:
pip install langchain-openai 如需要使用Anthropic的模型,安装 langchain-anthropic 包:
pip install langchain-anthropic 安装其他工具包 :如需要使用其他工具,安装 langchain-community 包:
pip install langchain-community 配置环境变量 :确保API密钥已经配置到环境变量中。例如,如果使用OpenAI,这样设置:
export OPENAI_API_KEY = your_openai_api_key 编写代码 :以下是简单的LangChain应用示例,展示如何创建一个基于OpenAI的聊天机器人。
from langchain . chat_models import ChatOpenAI from langchain . prompts import ChatPromptTemplate from langchain . chains import LLMChain # 初始化聊天模型
model = ChatOpenAI ( model_name = “gpt-3.5-turbo” ) # 定义聊天提示模板
prompt_template = ChatPromptTemplate . from_template ( “You are a helpful assistant. Answer the user’s question: {question}” ) # 创建LLM链
chain = LLMChain ( llm = model , prompt = prompt_template ) # 运行链
response = chain . invoke ( { “question” : “What is the capital of France?” } ) print ( response ) 使用LangChain构建更复杂的应用 :LangChain支持构建更复杂的应用,例如智能代理和工作流。以下是用LangChain构建智能代理的示例。
from langchain . agents import create_agent from langchain . tools import Tool # 定义一个简单的工具函数 def get_weather ( city : str ) – > str : “””Get weather for a given city.””” return f”It’s always sunny in { city } !” # 创建智能代理
agent = create_agent ( model = “gpt-3.5-turbo” , tools = [ Tool ( name = “get_weather” , func = get_weather , description = “Get weather for a given city” ) ] , prompt = “You are a helpful assistant that can get weather information.” ) # 运行智能代理
response = agent . invoke ( { “messages” : [ { “role” : “user” , “content” : “What is the weather in Paris?” } ] } ) print ( response ) 使用LangSmith进行应用评估和优化 :LangSmith是用于评估和优化LangChain应用的工具。使用LangSmith能追踪应用的性能、监控运行情况并进行优化。
from langchain . smith import LangSmith # 初始化LangSmith
langsmith = LangSmith ( ) # 评估应用
evaluation_result = langsmith . evaluate ( chain , input = { “question” : “What is the capital of France?” } ) print ( evaluation_result ) 部署LangChain应用 :LangChain支持将应用部署为生产级API或智能代理。使用LangGraph将应用转化为生产级服务。
from langchain . graph import LangGraph # 初始化LangGraph
graph = LangGraph ( ) # 将应用添加到LangGraph
graph . add_chain ( chain ) # 部署为API
api = graph . deploy_as_api ( ) print ( api . url ) 使用LangChain的社区资源 :LangChain拥有活跃的社区,访问LangChain的GitHub仓库、文档和社区论坛,获取更多资源和帮助。
自然语言处理(NLP) :用在文本生成、文本分类和文本摘要等任务,帮助开发者构建高效的语言处理应用。
人工智能助手 :创建智能聊天机器人和虚拟助手,为用户提供个性化的服务和交互体验。
企业自动化 :支持企业自动化工作流程,通过智能代理简化复杂任务,提高工作效率。
教育科技 :用在开发个性化学习工具和智能辅导系统,提升教育质量和学习效果。
医疗保健 :提供医疗咨询服务和数据分析,辅助医疗决策,改善患者护理。
类似于LangChain的工具
点动科技推出的大模型 API 聚合平台
AI大模型服务平台,提供从算力、模型到应用一站式服务
高性价比 Coding Plan 套餐,一站式调用主流模型
智谱推出的企业级AI智能体开发平台

