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

相关推荐
Se7en2586 分钟前
Prefix Caching 详解:实现 KV Cache 的跨请求高效复用
人工智能
山顶听风12 分钟前
多层感知器MLP实现非线性分类(原理)
人工智能·分类·数据挖掘
佛喜酱的AI实践12 分钟前
5分钟入门Google ADK -- 从零构建你的第一个AI Agent
人工智能
用户387754343356314 分钟前
Midjourney Imagine API 申请及使用
人工智能·后端
山顶听风15 分钟前
MLP实战二:MLP 实现图像数字多分类
人工智能·机器学习·分类
mengyoufengyu22 分钟前
DeepSeek12-Open WebUI 知识库配置详细步骤
人工智能·大模型·deepseek
carpell1 小时前
【语义分割专栏】3:Segnet实战篇(附上完整可运行的代码pytorch)
人工智能·python·深度学习·计算机视觉·语义分割
智能汽车人1 小时前
自动驾驶---SD图导航的规划策略
人工智能·机器学习·自动驾驶
mengyoufengyu1 小时前
DeepSeek11-Ollama + Open WebUI 搭建本地 RAG 知识库全流程指南
人工智能·深度学习·deepseek
Tianyanxiao1 小时前
华为×小鹏战略合作:破局智能驾驶深水区的商业逻辑深度解析
大数据·人工智能·经验分享·华为·金融·数据分析