首页 > 其他分享 >【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT

时间:2023-04-13 22:38:22浏览次数:47  
标签:6B git -- https ChatGLM 服务器 ChatGPT

1.背景

大家好啊,我是小卷。

最近GPT不仅发布了GPT-4,而且解除封印可以联网了。不得不赞叹AI更新迭代的速度真快,都跟不上节奏了。但是大家也注意到了吧,随着GPT的每次更新,OpenAI对其开放使用的限制也越来越大。之前国内网随便访问GPT3,现在动不动就封号

所以,今天就来教大家部署国内清华大学开源的ChatGLM-6B。简单介绍下,ChatGLM是对话语言模型,对中文问答和对话进行了优化。当前训练模型有62亿参数,后续还会推出1300亿参数的大模型,期待国内的ChatGLM能越做越强大。

ChatGLM的开源地址:THUDM/ChatGLM-6B

废话不多说了,直接上效果,以下是由ChatGLM中文对话的结果

(文末给大家准备了ChatGLM的免费体验地址 和 算力平台免费体验方式,一定看到文章结尾哦)

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_CHatGLM

2.准备工作

官方说明ChatGLM对硬件的配置要求至少13G的显存

要准备的东西如下:

  • 一台GPU云服务器(16GB显存,32G内存)
  • 云服务器上已安装好显卡驱动cuda和pytorch框架(平台都有现成的镜像,直接安装即可)

再来说说服务器厂商的选择,GPU服务器比较贵,所以小卷对比了一些大厂和小厂的GPU规格,这里只看配置符合要求且价钱合适的

厂商

配置

价钱

优势

阿里云

4核-15G内存-16显存NVIDIA T4

1878/月

大厂服务,但是价钱太贵

腾讯云

10核-40G- NVIDIA T4

8.68/小时

大厂服务,但独占1颗GPU价钱略高

华为云

8核-32G-16显存NVIDIA T4

3542/月

太贵

mistGPU

8核-32G-24G显存NVIDIA 3090

4.5/小时

缺点:只有1GB免费存储

揽睿星舟

10核-40G-24G显存NVIDIA 3090

1.9/小时

推荐,配置高且价钱低,现在NVIDIA 3090有特价

我们这里使用揽睿星舟这个算力平台的服务器,价钱就是优势哦。需要注意的是,GPU服务器要选按量计费,就是你用的时候按使用时长计费,不用时关掉就不会计费

3.服务器配置

这一步购买服务器并安装环境,比较简单

3.1注册使用

打开揽睿星舟官网注册地址:https://www.lanrui-ai.com/register?invitation_code=4104,

注册账号时邀请码填写4104,这样平台会给你免费充值一笔钱

咱们就可以免费体验服务器了。右上角也可以给自己账户充值

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_工作空间_02

3.2购买服务器并安装镜像

在网站的算力市场购买需要的服务器配置,这里我选的是3090-24G这款,点击使用按钮进入镜像安装界面

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_服务器_03

运行环境镜像选公共镜像 -> pytorch 直接用最新的就行,然后高级设置里选择预训练模型chatglm-6b(这样会预先加载chatGLM的模型到服务器,无需再手动下载)然后创建实例(确保自己账号里有足够的余额)

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_工作空间_04

等待5分钟左右,工作空间就创建好了,点击进入 -> JupyterLab 进入服务器,接下来就准备ChatGLM的安装就行了

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_CHatGLM_05

4.部署ChatGLM

4.1Git加速配置

为了避免git clone太慢,提前在命令行设置git学术资源加速

# 执行下面2条命令,设置git学术资源加速
git config --global http.proxy socks5h://172.16.16.39:8443
git config --global https.proxy socks5h://172.16.16.39:8443

后面的步骤中再执行git clone命令就不会卡住了。

要取消git学术加速也简单,执行下面的命令(所有步骤执行完后再取消哦~)

# 取消git学术资源加速
git config --global --unset https.proxy
git config --global --unset http.proxy

4.2下载ChatGLM源代码

进入Jupyter的页面后,可以看到2个目录,对目录做下说明:

  • data目录,存放数据,平台共享的
  • imported_models目录,存放预训练模型,即创建工作空间时你选择的模型

点击data目录下,可以看到ChatGLM-6B文件夹,里面是ChatGLM的源代码。

如果没有ChatGLM-6B目录,那么我们这一步需要下载代码,操作如下:

页面打开一个Terminal终端,在Terminal终端执行命令

git clone https://github.com/THUDM/ChatGLM-6B.git

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_git_06

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_CHatGLM_07

4.3 安装依赖

1.执行命令切换到ChatGLM-6B的目录

cd ChatGLM-6B

2.接着修改requirements.txt文件,把后续所有需要的依赖都加上,下面的配置加在文件末尾即可,如果文件里已加上这3个依赖,无需再修改。

chardet
streamlit
streamlit-chat

3.加完之后save保存下文件,如图

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_git_08

4.接着命令行执行下面命令安装依赖

# 使用默认镜像源下载会超时,这里用了清华的pip镜像源地址
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_ChatGPT_09

这一步可能会执行报错

ERROR: Could not install packages due to an OSError: Missing dependencies for SOCKS support.

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_ChatGPT_10

解决方法:切换到root用户后再执行命令

# 切换root用户
sudo su

# 重新执行
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

4.4 启动脚本修改

  • 因为模型是单独文件夹存储的,所以需要修改启动脚本中读模型文件的代码
  • 为了能从公网访问我们的ChatGLM,需要修改监听地址为0.0.0.0,端口为27777,这个是揽睿星舟平台的调试地址

修改步骤:

1.修改web_demo2.py文件中的模型路径,替换为模型的绝对路径,修改方法如下:

修改前的代码

tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True)
    model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()

修改后的代码

tokenizer = AutoTokenizer.from_pretrained("/home/user/imported_models/chatglm-6b", trust_remote_code=True)
    model = AutoModel.from_pretrained("/home/user/imported_models/chatglm-6b", trust_remote_code=True).half().cuda()

修改完后ctrl + s保存一下

4.5启动ChatGLM

ChatGLM-6B目录下,命令行执行

python3 -m streamlit run ./web_demo2.py --server.port 27777 --server.address 0.0.0.0

启动ChatGLM的webui界面

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_git_11

看到http://0.0.0.0:27777字样说明成功启动了

5.使用

我们需要从浏览器访问刚部署的服务,回到揽睿星舟平台

在工作空间页面上点击自定义服务拷贝调试链接,然后把拷贝的链接在浏览器上打开

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_服务器_12

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_CHatGLM_13

然后你就可以在这个页面开始对话了

注意第一次对话时,程序会加载模型文件,耗时会比较长,可以从刚才启动的命令行查看加载进度

等第一次加载完成后,后面再对话,响应就很快了

6.对话效果

到这一步,所有安装部署过程就成功完成了,我们来看看效果吧,拷贝的链接在手机端也能打开,下面是手机端的效果

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_服务器_14

7.关闭服务以及重启服务

  • 因为我们的服务按使用量收费的,所以不用时在页面上点击停止运行即可

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_ChatGPT_15

  • 然后想重新运行服务的时候,点工作空间页面上的启动按钮。工作空间重新创建后,进入Jupyter,通过命令行再次启动
# 进入ChatGLM-6B目录
cd data/ChatGLM-6B/
 # 没挂系统盘时,要重新安装依赖
 pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
# 启动服务
python3 -m streamlit run ./web_demo2.py --server.port 27777 --server.address 0.0.0.0

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_CHatGLM_16

【奶奶看了都会】云服务器部署开源ChatGLM-6B,让你也能拥有自己的ChatGPT_CHatGLM_17

8.免费体验ChatGLM

小卷给大家准备了2个免费体验的方式:

(1)通过下面链接注册平台账号,邀请码写4104,平台会免费充点钱,然后可自行部署体验。

https://www.lanrui-ai.com/register?invitation_code=4104

(2)小卷给大家准备了自己的ChatGLM体验地址,能用上几天。获取方式:号众公卷福同学内发关键词ChatGLM获取

标签:6B,git,--,https,ChatGLM,服务器,ChatGPT
From: https://blog.51cto.com/u_15815830/6188445

相关文章

  • 对话ChatGPT:Prompt是普通人“魔法”吗?
    在ChatGPT、Midjourney、StableDiffusion等新事物的作用下,不少人或多或少听说过Prompt的概念。虽然OpenAI掀起的大模型浪潮再度刷新了人们对AI的认知,但现阶段的AI终归还不是强人工智能,大模型里的“知识”存储在一个隐性空间里,需要输给AI正确的指令,也就是过去几个月中频频被讨论的P......
  • ChatGPT吃我饭,还要掀我碗
    ChatGPT面世,各种被AI取代“失业言论”笼罩在人们头顶,本文聚焦这一问题,推荐关注ChatGPT的小伙伴阅读。一时间火爆全网的新晋网红——ChatGPT,就问:还有谁不认识?谷歌计划在旗舰搜索引擎中添加对话式人工智能功能,谷歌首席执行官SundarPichai在采访中还表示:AI并不会对谷歌的搜索业......
  • 便捷高效,Notion AI比ChatGPT更加香
    在去年11月底,ChatGPT横空出世,爆火全球,此时在硅谷拥有百亿估值的生产力软件独角兽Notion也悄悄推出了其AI服务,并向用户开放了预约。排队人数一度超出200万之多,不久前Notion宣布全面开放其AI产品服务,这意味着每个用户现在都可以随时在自己的Notion页面上调用AI功能。瞬间各种场景开......
  • 如何用ChatGPT做设计?激发设计师们的灵感
    伴随着人工智能技术的迅猛发展,AI工具在设计领域中的应用也越来越广泛。当前,诸如ChatGPT等AI工具不仅可以进行自然语言处理,还可以应用于图像、视频等多种媒体领域,为设计师们提供了丰富的应用场景。使用Chatgpt:1、打开多御浏览器。2、在多御浏览器首页,找到【ChatGPT】。提供灵感和......
  • ChatGPT安全:OpenAI的漏洞赏金计划提供高达2万美元的奖金
    广受欢迎的ChatGPTAI聊天机器人背后的公司OpenAI推出了一项漏洞赏金计划,以确保其系统“安全可靠”。为此,该公司与众包安全平台Bugcrowd合作,让独立研究人员报告其产品中发现的漏洞,以换取“低严重程度发现200美元,特殊发现最高2万美元”的奖励。值得注意的是,该程序不包括模型安全或幻......
  • ChatGPT部署体验
    ChatGLM】本地版ChatGPT?6G显存可用!ChatGLM-6B清华开源模型一键包发布可更新#十分钟部署清华ChatGLM-6B,实测效果还可以(Linux版)......
  • 对抗 ChatGPT,免费体验 Claude
    对抗ChatGPT,免费体验ClaudeClaude是Anthropic构建的大型语言模型(LLM),对标ChatGPT。Anthropic创始团队多是前openai研究员和工程师,Claude的特点是能够检测和回避ChatGPT的潜在陷阱,如逻辑错误、不恰当的内容、重复性和无聊等。介绍一下你自己我的名字是Claude,我是一款......
  • ChatGPT研究报告:AIGC带来新一轮范式转移
    以ChatGPT为代表的AIGC(人工智能生成内容)将成为新一轮范式转移的开始。本文约4000字,目标是快速建立AIGC知识体系,含有大量的计算专业名词,建议阅读同时扩展搜索。  一、行业现状1、概念界定区别于PGC与UGC不同的,AIGC是利用人工智能技术自动生成内容的新型生产方式。 ......
  • chatgpt接口
    (1)使用curl发送http请求curlhttps://api.openai.com/v1/chat/completions\-H"Content-Type:application/json"\-H"Authorization:Bearer$OPENAI_API_KEY"\-d'{"model":"gpt-3.5-turbo","......
  • 好奇心驱使下试验了 chatGPT 的 js 代码的能力
    手边的项目中有个函数,主要实现图片分片裁剪功能。可以优化一下。也想看看chatGPT的代码理解能力,优化能力,实现能力,用例能力。于是有了这篇文章。实验结果总结:chatGPT确实强大,提供的答案可以借鉴,但不能完全依赖,需要你自行判断是否正确当你需要一个纯函数时,可以考虑使用。......