【大模型部署】小白教学,离线本地部署AI: chatglm3+one-api+fastGPT----Linux环境部署CPU运行---带资源包

本文详细指导如何在Linux环境中离线部署AI应用chatglm3、one-api和fastGPT,包括下载Docker安装包、配置Docker服务、导入镜像、创建和运行容器,以及必要的设置和验证步骤。
摘要由CSDN通过智能技术生成

小白教学,离线本地部署AI: chatglm3+one-api+fastGPT----Linux环境部署CPU运行
在所有操作之前需在在线机器上按在线部署步骤部署一遍导出离线部署所需文件,在这里我为大家已经准备好了所需文件所以免去此步骤!

(由于部分文件过于庞大这里还是不放了,本文只提供了部分关键文件)

  • linux离线安装docker

  •  解压安装包
sudo tar -xvf docker-25.0.3.tgz
  • 将解压出来的docker文件内容移动到 /usr/bin/ 目录下

#移动命令 复制命令请用cp
sudo  mv docker/* /usr/bin/ 
  • 将docker注册为service服务
sudo vi /etc/systemd/system/docker.service
  • 在打开的docker.service 文件中写入以下代码:
[Unit] 
# 服务的描述信息 
Description=Docker Application Container Engine 
# 服务的文档链接 
Documentation=https://docs.docker.com 
# 服务启动顺序,确保在网络和防火墙服务之后启动 
After=network-online.target firewalld.service 
# 表明该服务希望与 network-online.target 同时启动 
Wants=network-online.target 
[Service] 
# 服务类型,notify 表示当服务准备好后,会发送一个信号给 systemd 
Type=notify 
# 默认情况下不使用 systemd 管理 cgroups,因为还存在代理问题,并且 systemd 目前不支持 Docker 容器所需的 cgroup 功能集 
# the default is not to use systemd for cgroups because the delegate issues still 
# exists and systemd currently does not support the cgroup feature set required 
# for containers run by docker 
ExecStart=/usr/bin/dockerd 
# 重新加载服务的命令 
ExecReload=/bin/kill -s HUP $MAINPID 
# 由于内核中的会计开销,非零的 Limit* 会导致性能问题。我们建议使用 cgroups 进行容器本地会计。 
# Having non-zero Limit*s causes performance problems due to accounting overhead 
# in the kernel. We recommend using cgroups to do container-local accounting. 
LimitNOFILE=infinity 
LimitNPROC=infinity 
LimitCORE=infinity 
# 如果你的 systemd 版本支持,可以取消注释 TasksMax。仅 systemd 226 及更高版本支持此功能。 
# Uncomment TasksMax if your systemd version supports it. 
# Only systemd 226 and above support this version. 
#TasksMax=infinity 
# 启动超时时间 
TimeoutStartSec=0 
# 设置 delegate 为 yes,以便 systemd 不重置 Docker 容器的 cgroups 
# set delegate yes so that systemd does not reset the cgroups of docker containers 
Delegate=yes 
# 只杀死 Docker 进程,而不是 cgroup 中的所有进程 
# kill only the docker process, not all processes in the cgroup 
KillMode=process 
# 如果 Docker 进程过早退出,则重新启动它 
# restart the docker process if it exits prematurely 
Restart=on-failure 
# 在给定的时间间隔内,如果服务启动失败次数超过 StartLimitBurst 指定的值,则 systemd 会认为该服务启动失败 
StartLimitBurst=3 
# 在 StartLimitInterval 秒内,服务启动失败的次数达到 StartLimitBurst 指定的值后,系统会将服务标记为失败状态 
StartLimitInterval=60s 
[Install] 
# 服务启动时想要的目标 
WantedBy=multi-user.target
  • 添加用户权限
# 使用sudo权限添加一个新的用户组名为docker 
sudo groupadd docker 
# 使用sudo权限将当前用户($USER代表当前用户)附加到docker用户组中 
# -a选项表示将用户添加到附加组,而不是替换用户当前所在的所有组 
# -G选项后面跟的是用户组名,这里指定为docker 
sudo usermod -aG docker $USER    #用户授权
sudo reboot    #重启系统
  • 验证:
systemctl status docker  #查看Docker状态
docker -v                #查看Docker版本
  • 导入镜像

  •  将镜像文件导入至本地机器
#导出命令: docker save  镜像名 -o 保存位置
#导入命令:docker load -i 包名称.tar
  •  在命令行输入以下命令导入(非本地部署的可以跳过此步及以上步骤,按后续步骤执行即可拉取镜像,接入接口即可):
sudo docker load -i ./one-api.tar
sudo docker load -i ./fastgpt-v4.6.6.tar
sudo docker load -i ./chatglm3.tar
sudo docker load -i ./v0.5.0.tar
sudo docker load -i ./fast-os.tar
sudo docker load -i ./mongo.tar
  • 验证:
sudo systemctl restart docker               #重启docker
sudo docker images                          #查看所有镜像
  • 部署容器

这里先装一个fast-os的docker可视化容器,这个只是个人习惯使用可以不装.

  • Docker命令创建可视化容器(ip:8081):
sudo docker run --restart always --name fast -p 8081:8081 -d -v /var/run/docker.sock:/var/run/docker.sock wangbinxingkong/fast
  •  Docker命令创建chatglm3容器(ip:8000):
sudo docker run --name chatglm3 -p 8000:8000 registry.cn-hangzhou.aliyuncs.com/ryyan/chatglm.cpp:chatglm3-q5_1
#这个命令非后台,执行后进程会随命令行窗口关闭随之关闭,后续程序在新命令行窗口执行即可.
  •  Docker命令创建one-api容器(ip:3000):
sudo docker run --name oneapi -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/one-api:/data justsong/one-api
  •  创建成功后在浏览器访问端口进行程序内的配置(ip:3000):

 在浏览器打开的页面中点击令牌,输入默认用户名root,密码123456进行登录:

 在One API中点击渠道,创建新的渠道,均写入chatglm3名称可在后面避免错误.

 代理框里写IPV4地址,密钥那里是本地部署的话随便写

在 One API中点击令牌,选择添加新的令牌并设置为永不过期和无限额度.

  • Dock er命令创建FastGPT容器(ip:3020):

在任意目录中手动创建文件夹fastgpt,并在这个文件夹中手动创建docker-compose.yml和config.json文件(复制资源包内我之前写好的即可)

    因为是离线部署这里需要安装docker-compose

安装:

mv docker-compose /usr/local/bin/docker-compose     #复制文件到指定目录
chmod +x /usr/local/bin/docker-compose              #给文件添加执行权限

验证:

docker-compose -v

    要在配置文件内修改自己的IP和生成的密钥

然后在此目录下打开终端输入以下命令(创建的fastgpt文件夹内打开命令行):

docker-compose bulid  #依据docker-compose.yum生成镜像
docker-compose up -d  #启动容器加 -d代表后台守护进程启动

进入fastgpt的web页面:

输入默认的用户名root,密码1234

新建应用

    在左侧选择“AI模型”为chat3glm3,点击“保存并预览”,即可在右侧输入问题并得到回答:

然后就可以开始聊天了!

  • 34
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YeMu11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值