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

相关推荐
IT_陈寒26 分钟前
SpringBoot自动配置这个坑,我踩进去又爬出来了
前端·人工智能·后端
冬奇Lab12 小时前
Agent 系列(23):Web Agent——让 Agent 真正浏览网页
人工智能·llm·agent
冬奇Lab12 小时前
每日一个开源项目(第135篇):codebase-memory-mcp - 给 AI Agent 一张代码库的知识图谱
人工智能·开源·llm
IT_陈寒15 小时前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
jooloo18 小时前
Codex 间歇性 400 之谜:一条对话里,它为什么有时候用 chat/completions,有时候切到 responses?
人工智能
用户51914958484519 小时前
OpenSSL PKCS#12 PBMAC1 堆栈缓冲区溢出漏洞 (CVE-2025-11187) 分析与验证
人工智能·aigc
用户51914958484520 小时前
HP Sound Research SECOMNService 权限提升漏洞利用工具
人工智能·aigc
用户0183493016920 小时前
给 AI 智能体能力包一层 BFF,前端只调一个接口
人工智能