LangChain 1:langchain调大模型对话

本文基于langchain 0.3.4,使用langchain_openai连接大模型,调用大模型对话功能。
注:若使用不同的langchain版本,方法可能不一致。

1.安装langchain相关包

pip install langchain langchain_openai langchain-community

安装的版本是0.3.4的langchain
在这里插入图片描述

2.使用api_key连接远程大模型服务

先注册一个远程免费的API_KEY,可以参照我的其他文章《MindSearch CPU-only 版部署》

代码如下:

from langchain_openai import OpenAI
import os

os.environ["OPENAI_API_KEY"]='sk-verjwyzmxqzrinkxvmppeednkxntuompycpclrgcahhwfgcd'
model_name='internlm/internlm2_5-7b-chat'

os.environ["OPENAI_API_BASE"]='https://api.siliconflow.cn/v1'

llm=OpenAI(model=model_name)
print(llm.invoke('什么是AI'))

# --流式输出:
# print("following is call by stream way")
input_text='什么是AI'
token_num=0
for chunk in llm.stream(input_text):
    print(chunk, end="|")
    token_num+=1
print("\ntoken:",token_num)

3.连接无KEY的大模型服务

3.1 使用lmdeploy部署一个qwen2.5 14B的模型

lmdeploy serve api_server /root/models/Qwen2.5-14B-Instruct-AWQW4A16 --model-name qwen2.5-14b

以上在InternStudio中使用lmdeploy启动了qwen2.5 14b AWQ Int4的模型,模型名命名为qwen2.5-14b,启动在23333端口。

InternStudio的资源可以自行注册,参加实战营,可以获取免费的GPU运行时长,不同尺寸的GPU晋级获取。

在这里插入图片描述

在这里插入图片描述

3.2端口转发设置

打开本地的cmd,做下端口转发(具体的SSH端口,不同账户不同服务实例不一样,根据具体情况,具体的在InternStudio上可以获取,可以参考我的其他文章《关卡1-1:Linux + InternStudio》

ssh -p 35490 [email protected] -CNg -L 23333:127.0.0.1:23333 -o StrictHostKeyChecking=no

3.3代码调用

from langchain_openai import OpenAI
import os

# 无key,随便传一个值就好了
os.environ["OPENAI_API_KEY"]="99878"

model_name='qwen2.5-14b'

os.environ["OPENAI_API_BASE"]='http://127.0.0.1:23333/v1'

llm=OpenAI(model=model_name)

# 以下顺序疯狂调用40次
for  i in range(1,40):
    print(llm.invoke('什么是AI'))

服务端调用结果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/wengad/article/details/143099220