智能体(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 提供了丰富的接口用于和不同的大模型集成和交互,可帮助开发者轻松地构建出功能强大的对话式智能应用。

相关推荐
Web3_Daisy17 分钟前
从流动性到执行:如何降低 MEV 对 Web3 市场
大数据·人工智能·web3·区块链
日常通勤穿搭21 分钟前
电商 AI 作图用哪个最方便?新手商家 AI 出图工具对比
大数据·人工智能
爱学堂IT分享28 分钟前
DeepSeek+SpringAI实战AI家庭医生应用(10章) 完整版
人工智能
QXWZ_IA33 分钟前
千寻位置支持哪些卫星系统?北斗GPS多星座解析
人工智能·科技·智能硬件·rtk
小淮AI1 小时前
一个国际家庭在武汉的择校笔记:两份外籍人员子女学校的课程方案比较
大数据·人工智能
deepdata_cn1 小时前
如何从0到1学习AI向量基础
人工智能·向量
随风丶飘1 小时前
[特殊字符] 告别“update“和“fix bug“——Smart Git Commit LLM 让 AI 帮你写专业的 Git 提交信息
人工智能·git·bug
H0311169852 小时前
择校参考:枫叶教育 vs 大连美国国际学校,外籍子女学校怎么选
人工智能
刘海东刘海东2 小时前
一条新的人工智能道路(刘海东)一、二、三章
人工智能
xyz_CDragon2 小时前
从 RTL 到 GDSII:人与 AI 协作,用开源 EDA 工具链完成 SHA-256 芯片的 SoC 集成与签核全流程(附完整流程+代码)
人工智能·开源·芯片设计·开源 eda·caravel