本地化部署/LangChain与ChatGLM3-6B集成/大模型备忘录(三)

本文介绍了如何通过pip和Conda安装LangChain,以及如何在云服务器上集成OpenAIChatGLM3-6B模型,通过JupyterNotebook展示如何使用LangChain进行交互和解决问题。过程中涉及了环境设置、错误排查和模型调用的关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Langchain介绍以及安装

 PIP安装langchain

pip install langchain

 Conda安装langchain

conda install langchain -c conda-forge 

 Conda安装jupyter并打开

conda install jupyter
pip install --upgrade jupyter
jupyter notebook

 

打开MobaXterm,激活ChatGLM3env,进入以下目录/ChatGLM3/openai_api_demo,运行api_serve.py,失败。

找到api_serve.py文件打开

【Error1】.bashrc文件里未匹配路径 ,词嵌套路径没有。

打开魔塔,下载词嵌入模型

点击下载模型,获得git clone的下载方式,回到MobaXterm进行下载

cd /root
git clone https://www.modelscope.cn/Xorbits/bge-base-zh.git

 

下载成功 

 在root目录下,vim .bashrc,输入路径

 vim /root/.bashrc

export补充路径 

export MODEL_PATH=/root/chatglm3-6b
export EMBEDDING_PATH=/root/bge-large-zh

执行一遍

重新激活ChatGLM3,然后到cd /root/ChatGLM3/openai_api_demo/路径下,vim api_server.py查看文件

conda activate ChatGLM3env
cd /root/ChatGLM3/openai_api_demo/
ll
vim api_server.py

 心跳

词嵌入 

模型chatgml3-6b 

 推理返回

上面的代码说明基本部署完成,重新python api_server.py文件

成功,监听了一个端口8000

云服务器安全组添加一个新的入方向的端口8000

测试:LangChain与ChatGLM3-6B集成

打开jupyter,输入以下代码:

from langchain.chains import LLMChain
from langchain.prompts import PromptTemplate
from langchain.chat_models import ChatOpenAI
import os

template = """{question}"""
prompt = PromptTemplate(template=template, input_variables=["question"])
openai_api_base="http://127.0.0.1:8000/v1"
llm = ChatOpenAI(model="chatglm3-6b", openai_api_base=openai_api_base, openai_api_key="abcabc")
llm_chain = LLMChain(prompt=prompt, llm=llm)

question = "帮我写一篇新闻,关于美食。"

print(llm_chain.run(question))

1. `from langchain.chains import LLMChain`
从 LangChain 库中导入 LLMChain 类,用于创建一个链式语言模型。

2. `from langchain.prompts import PromptTemplate` 
从 LangChain 库中导入 PromptTemplate 类,用于定义提示模板。

3. `from langchain.chat_models import ChatOpenAI`
从 LangChain 库中导入 ChatOpenAI 类,用于与 OpenAI 的对话模型进行交互。

4. `template = """{question}"""` 
定义一个简单的提示模板,其中只包含一个占位符 {question}。

5. `prompt = PromptTemplate(template=template, input_variables=["question"])`
使用上一步定义的模板和输入变量创建一个 PromptTemplate 实例。

6. `openai_api_base="http://127.0.0.1:8000/v1"`
设置 OpenAI API 的基础 URL,在这个例子中是本地主机的 8000 端口。

 "http://127.0.0.1:8000/v1"的127.0.0.1要改为自己的公网IP

7. `llm = ChatOpenAI(model="chatglm3-6b", openai_api_base=openai_api_base, openai_api_key="abcabc")`
创建一个 ChatOpenAI 实例,指定使用 chatglm3-6b 模型,并设置 API 基础 URL 和 API 密钥。

8. `llm_chain = LLMChain(prompt=prompt, llm=llm)`
使用之前创建的 PromptTemplate 和 ChatOpenAI 实例创建一个 LLMChain 对象。

9. `question = "帮我写一篇新闻,关于美食。"`
定义一个问题字符串。

10. `print(llm_chain.run(question))`
将问题字符串传递给 LLMChain 的 run 方法,并打印模型的响应。

总的来说,这段代码设置了一个简单的提示模板,并使用 LangChain 库与 OpenAI 的 chatglm3-6b 模型进行交互。它向模型提交一个关于写一篇美食新闻的问题,并打印模型的响应。

【Error2】没有openai的包,终端下载openai即可

pip install openai

 

下载完成

再次运行代码 

 成功 

chain(链)=prompt(提示词)+llm(大语言模型)+output_parsen(输出解析器)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值