智能体(AI Agent)开发实战之【LangChain】(一)接入大模型输出结果

LangChain 是一个强大的开源框架,专为构建与大语言模型(LLMs)相关的应用而设计。通过将多个 API、数据源和外部工具无缝集成,LangChain 能帮助开发者更高效地构建智能应用。

一、环境准备

安装LangChain,langChain-core等库,我安装时LangChain版本是:0.3.21,langChain-core版本是当时最新版本:0.3.48。因为一些常用的大模型都遵循 OpenAI API 规范,还需要安装OPENAI相关库。如果使用国内的大模型也要安装相应的库如:DeepSeek库。如以下相关截图:

二、编写代码接入开源大模型并输出结果

因相关原因,访问国外开源大模型有限制。我通过对比和实践,选择了国内的开源大模型Qwen并使用国内的一个平台API来实现接入大模型并输出结果。

1.导入必要的库和类

javascript 复制代码
from langchain.chat_models import ChatOpenAI
from langchain.schema import HumanMessage, SystemMessage

2.配置ChatOpenAI实例

ini 复制代码
chat_model = ChatOpenAI(    
#model="deepseek-chat",    
#model = "Pro/deepseek-ai/DeepSeek-R1",    
#model = "Qwen/Qwen2.5-72B-Instruct",    
model = "Qwen/Qwen2.5-7B-Instruct",    
openai_api_key=DEEPSEEK_API_KEY,    
openai_api_base=DEEPSEEK_API_BASE,    
temperature=0.7,     
max_tokens=500,     
stream=False)

3.构建消息列表

ini 复制代码
messages = [    
SystemMessage(content="你是一个知识渊博的助手,能回答各种问题。"),   
HumanMessage(content="介绍一下长城")]

4.调用大模型并获取返回结果

ini 复制代码
# 调用大模型
response = chat_model.invoke(messages)
# 输出模型的响应结果print(response.content)

5.ChatOpenAI类的自定义配置参数说明

model_name:指定要使用的具体模型名称,例如ChatOpenAI中可以指定model_name="gpt - 3.5 - turbo"

temperature:控制生成文本的随机性,取值范围在 0 到 1 之间,值越大生成的文本越随机

max_tokens:限制生成文本的最大 token 数量

stream:如果设置为True(默认值是False),模型将以流式输出的方式返回结果,即边生成边返回,而不是等整个生成过程结束后再返回,适用于需要实时获取生成结果的场景。

6.运行代码输出结果

三、总结

LangChain 提供了丰富的接口用于和不同的大模型集成和交互,可帮助开发者轻松地构建出功能强大的对话式智能应用。

相关推荐
机器之心8 分钟前
刚刚,苹果基础模型团队负责人庞若鸣被Meta挖走!加入超级智能团队、年薪千万美元
人工智能
G.E.N.1 小时前
开源!RAG竞技场(2):标准RAG算法
大数据·人工智能·深度学习·神经网络·算法·llm·rag
西西弗Sisyphus1 小时前
如果让计算机理解人类语言- Word2Vec(Word to Vector,2013)
人工智能·word·word2vec
前端双越老师1 小时前
30 行代码 langChain.js 开发你的第一个 Agent
人工智能·node.js·agent
东坡肘子2 小时前
高温与奇怪的天象 | 肘子的 Swift 周报 #092
人工智能·swiftui·swift
KaneLogger2 小时前
视频转文字,别再反复拖进度条了
前端·javascript·人工智能
度假的小鱼2 小时前
从 “人工编码“ 到 “AI 协同“:大模型如何重塑软件开发的效率与范式
人工智能
zm-v-159304339863 小时前
ArcGIS 水文分析升级:基于深度学习的流域洪水演进过程模拟
人工智能·深度学习·arcgis
拓端研究室4 小时前
视频讲解|核密度估计朴素贝叶斯:业务数据分类—从理论到实践
人工智能·分类·数据挖掘