【ChatGLM】手把手教你云服务器部署ChatGLM聊天网站,不限次数调用。

简介: 【ChatGLM】手把手教你云服务器部署ChatGLM聊天网站,不限次数调用。

一,演示

私人部署地址:http://ilovechatgpt.cn

免费使用!无限调用!速度还蛮快呢。


二,ChatGLM介绍

官方地址:https://github.com/THUDM/ChatGLM-6B


ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,由基于清华大学 KEG 实验室与智谱 AI 于 2023 年联合训练,可以针对用户的问题和要求提供适当的答复和支持。


它基于 General Language Model 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(具体的部署条件看下章)。 ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。


特点:


开源

支持中文(国内很少有支持中文的开源模型)

低成本部署(兼容CPU)

具有记忆功能

三,部署条件

经过测试,推荐还是GPU部署,CPU运行的话运行时占用的资源更多,并且速度实在太慢了,自己单独使用的话也不能忍受这么慢的速度。GPU的生成速度才能满足使用的体验。

内存不够启动项目的话,进程会被自动kill掉。而且模型启动后占用的现存是远远低于需要的现存的,比如说,我用GPU部署的无量化的ChatGLM2-6B模型,正常来说需要13GB显存,但我完全启动后,只占用了4GB。


四,手把手教你搭建

1. 安装git

# centos 操作系统
yum install git
# ubuntu 操作系统
apt-get update
apt install git

2. 克隆地址到本地

git clone https://github.com/THUDM/ChatGLM-6B
# 进入项目文件夹
cd ChatGLM-6B

实在很慢的话,直接去gitee上面搜ChatGLM-6B,找最新的,有很多人把它搬到gitee作为镜像项目。

3. 进入项目,克隆模型文件

模型文件的作用是作为训练集,项目能够本地加载该模型文件并将其用于预测新的自然语言文本。模型文件决定我们能有怎么样的输出结果

可以根据上面部署条件的需求,来选择项目。我这里以 chatglm2-6b 来部署。

# 注意!后面一定要加上.git。
git clone https://huggingface.co/THUDM/chatglm2-6b.git

路径下就会有ChatGLM2-6B的文件夹,我们进入到里面

cd chatglm2-6b

你会发现模型很大,但是一下子就clone完了,是因为大文件是存储到lfs上面的,需要我们用到git的lfs工具来进行下载。当然,你也可以手动下载后,然后拷贝到服务器上,不过太麻烦,不推荐。


4. git lfs工具安装(已安装的话跳过)

centos安装命令

curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.rpm.sh | sudo bash
sudo yum install git-lfs
git lfs install

ubuntu安装命令

curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
git lfs install

5. 克隆模型大文件

git lfs pull

模型文件都很大,下载时间很久,我建议在晚上的时候,使用如下命令,这样睡一觉,全部都已经下载好了。

# nohup 让程序后台运行,使其不受终端会话的影响而持续运行
nohup git lfs pull &

6. 运行web_demo.py

我建议把模型文件夹名字换成model,毕竟容易理解

# 进入到项目文件夹内部
cd ChatGLM-6B
# 改模型名字
mv chatglm2-6b model

修改官方样例代码

vim web_demo.py
  1. 1.model为模型路径,也就是刚刚改的。
  2. 2.cuda() 意味用GPU运行,如果没有GPU,换成 .float() 用CPU运行就可以


  1. 3.server_name参数指定能够访问的ip,默认不写的话是只能本地127.0.0.1访问
  2. 4.server_port参数指定web服务端口
  3. 5.share代表是否让huggingface给你生成一个公网地址,别人能通过该公网地址直接访问。默认只能使用72小时。

7. 结果


五,补充

还可以通过命令行窗口交互,运行python cli_demo.py文件

nohup python cli_demo.py &


通过模型生成post接口,供其余后台应用直接调用

nohup python api.py &




相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
弹性计算 监控 负载均衡
|
2月前
|
固态存储 安全 程序员
搭建程序员个人博客网站的服务器配置怎么选?
搭建个人博客网站时,合理选择服务器配置至关重要。推荐1核CPU、2GiB内存、SSD硬盘及2M-10M带宽,适合大多数个人博客。操作系统方面,Linux更为经济高效。建议选择如阿里云等知名云服务商,同时考虑服务器的可扩展性和安全性,确保网站稳定运行与良好体验。
|
2月前
|
监控 安全 Linux
RHEL 环境下 Subversion 服务器部署与配置
【10月更文挑战第18天】在RHEL环境下部署Subversion服务器需依次完成安装Subversion、创建版本库、配置服务器、启动服务、客户端连接及备份维护等步骤。确保遵循安全最佳实践,保障数据安全。
100 1
|
2月前
|
运维 安全 Linux
怎么使用云服务器搭建个人博客网站
使用云服务器搭建个人博客网站是一个涉及多个步骤的过程,包括购买云服务器、域名注册和备案、环境配置、安装博客系统、部署SSL证书以及网站上线和维护。通过选择合适的云服务提供商(如阿里云、腾讯云等),配置服务器,安装宝塔面板,选择合适的博客程序(如Typecho、WordPress等),并确保安全措施到位,您可以成功搭建并运行自己的个人博客网站。
|
26天前
|
弹性计算 开发工具 git
2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我在部署托管于Github/Gitee的代码到阿里云ECS服务器时,经常遇到繁琐的手动配置问题。近期,阿里云ECS控制台推出了一键构建部署功能,简化了这一过程,支持Gitee和GitHub仓库,自动处理git、docker等安装配置,无需手动登录服务器执行命令,大大提升了部署效率。本文将详细介绍该功能的使用方法和适用场景。
2分钟在阿里云ECS控制台部署个人应用(图文示例)
|
6天前
|
开发框架 .NET PHP
网站应用项目如何选择阿里云服务器实例规格+内存+CPU+带宽+操作系统等配置
对于使用阿里云服务器的搭建网站的用户来说,面对众多可选的实例规格和配置选项,我们应该如何做出最佳选择,以最大化业务效益并控制成本,成为大家比较关注的问题,如果实例、内存、CPU、带宽等配置选择不合适,可能会影响到自己业务在云服务器上的计算性能及后期运营状况,本文将详细解析企业在搭建网站应用项目时选购阿里云服务器应考虑的一些因素,以供参考。
|
1月前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
2月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
322 3
|
2月前
|
NoSQL Linux PHP
|
2月前
|
弹性计算 数据库连接 Nacos
阿里云ECS服务器在docker中部署nacos
docker pull nacos 失败,docker部署nacos遇到的问题,nacos数据库连接,nacos端口映射
133 1