Chat-GLM 详细部署(GPU显存>=12GB)

建议配置: ( Windows OS 11 部署 )
CPU-i7 13700F ~ 13700KF
RAM: 16GB DDR4
GPU: RTX3080(12G)

安装 conda:

1. 下载安装 miniconda3 :
https://docs.conda.io/en/latest/miniconda.html
conda是一个包和环境管理工具,它不仅能管理包,还能隔离和管理不同python版本的环境。类似管理nodejs环境的nvm工具。

2. conda环境变量:
新建 CONDA_HOME :conda安装路径

在Path中添加 :%CONDA_HOME%  
在Path中添加 :%CONDA_HOME%\Scripts
在Path中添加 :%CONDA_HOME%\Miniconda3\Library\bin

3. 激活conda:
打开CMD执行conda init 

4. 测试conda安装是否成功:
打开CMD输入conda -V 回车后显示版本号表示Conda安装成功。

5. 更换源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes

6. 问题解决:
如果创建环境时报错:

An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.

找到C盘:.condarc 文件(一般是在  C:\Users\你电脑的用户名 下,没有的话全盘搜索下)
打开.condarc 文件并替换内容为:

channels:
  - defaults
show_channel_urls: true
default_channels:
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
  conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

打开CMD输入conda clean -i 回车。

安装 CUDA与Torch:

1. 确认CUDA版本号:
在CMD中输入nvidia-smi 查询CUDA版本号。

2. 下载CUDA:
去官网下载对应的CUDA版本(CUDA Toolkit)
https://developer.nvidia.com/cuda-toolkit-archive

3. 安装CUDA:

 

4. CUDA环境变量:
一般来说安装完成后会自动添加环境变量,可以检查一下,如果没添加则需要添加一下:
CUDA_PATH
CUDA_PATH_V11_8
值为上一步选择安装位置的路径。

5. 测试CUDA安装是否成功:
打开CMD输入nvcc --version 回车显示版本号代表安装完成。

6. 安装Torch:
下载对应CUDA版本的Torch(这里用的版本是11.8)

conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

用python代码测试torch是否生效,如果不生效找对应cuda版本下载torch(torch.cuda.is_available()返回false则不生效)

import torch
print(torch.__version__)
print(torch.cuda.is_available())

安装配置 ChatGLM

1. 克隆项目到本地:
如果没git需要安装git
CD到目标文件夹内执行命令:git clone https://github.com/THUDM/ChatGLM-6B.git 

2. 创建conda工程:
打开CMD将目录CD到工程内。

执行命令:conda create --name ChatGLM-6B python=3.10.10 

 激活conda工程:conda activate ChatGLM-6B 

 

3. 安装支持库
执行命令 ( 清华源 ) :

pip install pip -U
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple some-package 

这里在国内使用清华源加速

4. 启动web测试:
安装库 (清华源)

pip install streamlit -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
pip install streamlit_chat -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
pip install chardet -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

执行Demo :streamlit run web_demo2.py 输入Email。

 复制URL到浏览器则可以预览:

 模型下载完成才可以正常对话,如果报错换下VPN节点多试几次

5. API部署
首先需要安装额外的依赖 pip install fastapi uvicorn,然后运行仓库中的 api.py:

python api.py

默认部署在本地的 8000 端口,通过 POST 方法进行调用

curl -X POST "http://127.0.0.1:8000" \
     -H 'Content-Type: application/json' \
     -d '{"prompt": "你好", "history": []}'

得到的返回值为

{
  "response":"你好👋!我是人工智能助手 ChatGLM-6B,很高兴见到你,欢迎问我任何问题。",
  "history":[["你好","你好👋!我是人工智能助手 ChatGLM-6B,很高兴见到你,欢迎问我任何问题。"]],
  "status":200,
  "time":"2023-03-23 21:38:40"
}

6.启动Chat-GLM:

@echo off
cd /d D:\PythonProject\ChatGLM-6B
conda activate ChatGLM-6B
streamlit run web_demo2.py
pause

效果展示:

 

 

 


后续增加微调模型解决方案, 敬请期待。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/9804.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

龙蜥 Anolis 8.x + Vmware的安装与网络配置 CentOS8 网络配置详细教程

前言 配置和安装可以看下面这两篇文章的 写的很详细https://cnxiaobai.com/articles/2021/04/21/1619011285612.htmlhttps://cnxiaobai.com/articles/2021/10/21/1634800698273.html#b3_solo_h3_1网络配置方面有不同的方面 我在下面进行了修改这个操作系统 很少资源 弄了好久才…

C++轻量级Web服务器TinyWebServer源码分析之threadpool篇

文章目录threadpool线程池篇简介一、线程池的创建与回收二、向请求队列添加请求任务三、worker函数内部访问run函数,完成线程处理四、run函数执行任务原文链接threadpool线程池篇简介 空间换时间,浪费服务器的硬件资源,换取运行效率. 池是一组资源的集合,这组资源…

天气预报查询 API + AI 等于王炸(一大波你未曾设想的天气预报查询 API 应用场景更新了)

前言 近年来,随着信息化进程的不断深入,人们对于信息的获取和处理需求越来越高。而其中,天气查询API是一个非常重要的服务,它能够帮助人们快速获取所在位置的天气情况,同时也为各类应用提供了必要的气象数据支持。 本…

vue3笔记

目录 1.vue3带来了什么 1.1源码的升级 1.2拥抱TypeScript 1.3新的特性 2.创建Vue3.0工程 2.1使用vue-cli创建 2.2使用vite创建 3.创建vue3.0工程 3.1 main.js 3.2 App.vue 4.安装开发者工具 5.常用的 Composition API 5.1拉开序幕的setup 6.ref函数 7.reactive函…

全国青少年软件编程(Scratch)等级考试二级考试真题2023年3月——持续更新.....

一、单选题(共25题,共50分) 1. 小猫的程序如图所示,积木块的颜色与球的颜色一致。点击绿旗执行程序后,下列说法正确的是?( ) A.小猫一直在左右移动,嘴里一直说着“抓到了”。 B.小猫会碰到球,然后停止。 C.小猫一直在左右移动,嘴里一直说着“别跑” D.小猫会碰到球,…

全新适配鸿蒙生态,Cocos引擎助力3D应用开发

一、适配HarmonyOS背景 HarmonyOS 3.1版本自发布以来,备受广大开发者的好评,同时也吸引了鸿蒙生态众多伙伴的青睐。 鸿蒙生态所强调的智慧全场景、多端联动与跨设备流转等能力,与Cocos所具有的跨平台、低功耗、高性能三大核心特点不谋而合。C…

【Python】字符串 ④ ( Python 浮点数精度控制 | 控制数字的宽度和精度 )

文章目录一、Python 字符串格式化1、浮点数精度问题2、浮点数精度控制一、Python 字符串格式化 1、浮点数精度问题 在上一篇博客 【Python】字符串 ③ ( Python 字符串格式化 | 单个占位符 | 多个占位符 | 不同类型的占位符 ) 中 , 拼接字符串中 , float 浮点类型出现如下情况 …

国内怎么玩chatGPT-chatGPT中文版入口

ChatGPT国内可用版 目前,国内有一些可用的ChatGPT模型和平台,可以方便用户使用。以下是一些代表性的中文ChatGPT模型和平台: THU Transformer: 清华大学自然语言处理实验室开发的中文自然语言处理模型,基于GPT模型架构进行研发&a…

WPS卡慢解决方法

WPS卡顿,很慢怎么解决? keywords:wps很卡很慢怎么办、wps很卡什么原因、wps很卡怎么解决、wps很占内存吗、wps很慢、wps打开文件很慢很卡怎么办、wps打开文件很慢很卡 说起来真的很搞笑,你可以试试把下面这个功能给勾选,速度X10…

ChatGPT大规模封锁亚洲地区账号

我是卢松松,点点上面的头像,欢迎关注我哦! 在毫无征兆的情况下,从3月31日开始OpenAI大规模封号,而且主要集中在亚洲地区,特别是ip地址在台湾、日本、香港三地的,命中率目测40%。新注册的账号、…

KMP算法详解

目录 KMP算法的介绍 详解KMP算法 next数组的填充 代码实现 KMP算法的介绍 KMP算法是解决字符串匹配问题的一个经典算法,字符串匹配问题就是查找子串T是否在主串S中存在,其中在KMP算法中,主串也被称为目标串,子串也被称为模式…

图片转pdf无水印版怎么转换?快收藏这三种免费转换方法!

图片转pdf无水印版怎么转换?在日常生活中,为了节省批量图片发送的时间,我们通常会将多张图片转换成PDF文件格式文档,然后发送给他人。 目前在市场上有很多软件可以将图片转PDF。你想知道哪个软件可以将图片转PDF没有水印吗&#…

Java命令行参数

目录 一、引入依赖 二、方法实战 三、方法讲解 本文我们介绍一个命令行工具,Apache Commons CLI。 在我们执行java的jar包时,常用的命令是 java -jar hellowork.jar # 或者 nohup java -jar hellowork.jar >>/data/log.txt2>&1 & …

这6个超好用的免费图片素材网站,赶紧收藏~

6个高质量图片素材网站,免费可商用,记得收藏! 1、菜鸟图库 https://www.sucai999.com/pic.html?vNTYxMjky 菜鸟图库是我推荐过很多次的一个设计素材网站,除了设计类,还有很多自媒体可以用到的素材,比如高…

如何免费使用ChatGPT 4?

自从ChatGPT发布以来,它就取得了巨大的成功。无论是常春藤法学考试还是商学院作业,ChatGPT都被用于各种试验。统计数据显示,ChatGPT每月吸引约9600万用户。随着ChatGPT的巨大成功,Open AI最近推出了它的最新版本,名为“…

数据库第一个实验

啦啦啦啦啦,数据库终于要实验了,很担心做不好,要是挂了怎么办 只是自己的作业,可能会有问题,欢迎前来指正 一、题目(100分) 一、创建后面给出的这6个表(20分) 二、用不同…

论文阅读_Segment_Anything

论文信息 name_en: Segment Anything name_ch: 切分任何东西 paper_addr: http://arxiv.org/abs/2304.02643 doi: 10.48550/arXiv.2304.02643 date_read: 2023-04-07 date_publish: 2023-04-05 tags: [‘深度学习’,‘多模态’] author: Alexander Kirillov, Meta AI Research…

用in函数嵌入子查询作为条件时查出结果为空

用in函数嵌入子查询作为条件时查出结果为空 问题: SELECT * FROM SGGCDB_VIEW sv WHERE RES_ID IN (SELECT urrv.RES_ID FROM IBPS_ERP.USER_ROLE_RES_VIEW urrv WHERE urrv.ID_ 1069978138403930112 )结果未空值。 原因: 首先,SELECT u…

【Linux系统:进程控制】

目录 1 进程创建 1.1 fork函数 1.2 写时拷贝 1.3 fork常规用法 1.4 fork调用失败的原因 2 进程终止 2.1 进程退出场景 2.2 进程常见退出方法 3 进程等待 3.1 进程等待必要性 3.2 进程等待的方法 3.2.1 wait方法 3.2.2 waitpid方法 3.3 获取子进程status 4 进程程序替…

有趣的小知识(四)从基站到天线:深入了解如何优化网站速度的关键技术

一、全面认识基站 1.1 基站的定义 基站是一种通信设施,用于提供无线通信服务。它通常由一座塔、天线、收发信设备、电源和辅助设备等组成,可以与移动设备(如手机、平板电脑等)进行无线通信。基站是是无线终端(如手机)接入互联网…