【AI基础】第三步:纯天然手动安装并运行chatglm2-6b

2024-06-04 19:52

本文主要是介绍【AI基础】第三步:纯天然手动安装并运行chatglm2-6b,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

chatglm2构建时使用了RUST,所以在安装chatglm2之前,先安装RUST。

一、安装RUST

1.1 配置安装源

如果从官方安装,速度奇慢。

配置环境变量 RUSTUP_DIST_SERVER 到国内源:

这里指定了清华源,其余国内源还有:

# 字节跳动
RUSTUP_DIST_SERVER=https://rsproxy.cn
RUSTUP_UPDATE_ROOT=https://rsproxy.cn/rustup

# 中国科学技术大学
RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup

# 清华大学
RUSTUP_DIST_SERVER=https://mirrors.tuna.tsinghua.edu.cn/rustup

# 上海交通大学
RUSTUP_DIST_SERVER=https://mirrors.sjtug.sjtu.edu.cn/rust-static/

 

1.2 安装依赖msvc

下载地址:https://aka.ms/vs/17/release/vs_BuildTools.exe

下载后双击安装,选择如下组件: 

安装完成即可。 

备注:msvc的安装可以参考rust官方文档:MSVC prerequisites - The rustup book

这里描述了去官方下载安装文件:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux

 

1.2 下载安装

下载地址:Getting started - Rust Programming Language

选择对应版本下载:

 这里选择64位版本,下载文件 rustup-init.exe。下载后双击执行:

安装完成。

1.3 安装检验

运行命令:

> cargo --version
> rustc --version

 

1.4 配置RUST安装包的国内源

新版配置文件在 ~/.cargo/config.toml,如果没有则新建,配置如下:

其余的国内源: 

# 中国科学技术大学
[source.ustc]
registry = "https://mirrors.ustc.edu.cn/crates.io-index"
#registry = "git://mirrors.ustc.edu.cn/crates.io-index"

# 上海交通大学
[source.sjtu]
registry = "https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index/"

# 清华大学
[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

# rustcc社区
[source.rustcc]
registry = "https://code.aliyun.com/rustcc/crates.io-index.git"

 二、运行chatglm2

1.1 安装

> conda activate chatglm2
> git clone https://github.com/THUDM/ChatGLM2-6B
> cd chatglm2-6b
> pip install -r requirements.txt --verbose

这里添加了参数 --verbose,会显示实时进度,避免下载大文件时耗时过长,造成卡死的假象。

 安装完成。

 

1.2 调用模型代码

创建文件 dev_hello.py,并使用官方代码:

from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True)
model = AutoModel.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True, device='cuda')
model = model.eval()
response, history = model.chat(tokenizer, "你好", history=[])
print(response)
response, history = model.chat(tokenizer, "晚上睡不着应该怎么办", history=history)
print(response)

查看第二行和第二行的 THUDM/chatglm2-6b,这是大模型的地址,表示大模型存放在当前目录下的THUDM/chatglm2-6b中。如果没有,则会从HuggingFace下载并保存在此路径中。

因为大模型文件很大,我们可以先下载到本地,然后再运行代码。

 

1.3 下载大模型文件

1.3.1 HuggingFace下载

下载地址:https://huggingface.co/THUDM/chatglm2-6b

1.3.2 国内下载

综合镜像站:

  • HuggingFace镜像站:THUDM/chatglm2-6b · HF Mirror 
  • AI快站:AI快站 - HuggingFace模型免费加速下载 
  • 异型岛:互链高科

也有国内厂商自己的单独站点:

  • 智谱/chatglm:清华大学云盘

下载到本地的默认下载地址,文件结构如图(图中文件,一个都不能少):

 

 1.4 运行代码

1.4.1 执行官方演示代码

> python dev_hello.py

 1.4.2 运行网页端

> streamlit run web_demo2.py

 运行成功。

这篇关于【AI基础】第三步:纯天然手动安装并运行chatglm2-6b的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1030969

相关文章

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

如何在Mac上彻底删除Edge账户? 手动卸载Edge浏览器并清理残留文件技巧

《如何在Mac上彻底删除Edge账户?手动卸载Edge浏览器并清理残留文件技巧》Mac上的Edge账户里存了不少网站密码和个人信息,结果同事一不小心打开了,简直尴尬到爆炸,想要卸载edge浏览器并清... 如果你遇到 Microsoft Edge 浏览器运行迟缓、频繁崩溃或网页加载异常等问题,可以尝试多种方

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.