window 安装大模型 chatglm.cpp

  1. 了解大厂经验
  2. 拥有和大厂相匹配的技术等

希望看什么,评论或者私信告诉我!

一、 前言

在上一篇文章中[window 安装大模型 chatglm-6b],可以运行效率很低,所以这一次我们安装 chatglm.cpp,github 上说这个是 C++实现的,可以在笔记本上实时回复用户问题,我们一起看一下能不能实时回复

二、准备工作

2.1 电脑

在这里插入图片描述 这是我工作使用的电脑配置,16G内存,Intel® 集成显卡。这里要吐槽一下,程序员千万不要使用 window,随便装点什么东西就很麻烦,用不了 mac 就用 linux,我这是公司电脑,后悔没早点装 unbantu 系统。

2.2 组件安装

[VS studio 2022]![在这里插入图片描述](https://img-
三、 安装

3.1 下载源码

git clone --recursive [github.com/li-plus/cha…]

3.2 下载模型

目前支持的模型:

ChatGLM-6B: THUDM/chatglm-6b, THUDM/chatglm-6b-int8, THUDM/chatglm-6b-int4
ChatGLM2-6B: THUDM/chatglm2-6b, THUDM/chatglm2-6b-int4
ChatGLM3-6B: THUDM/chatglm3-6b
CodeGeeX2: THUDM/codegeex2-6b, THUDM/codegeex2-6b-int4
Baichuan & Baichuan2: baichuan-inc/Baichuan-13B-Chat, baichuan-inc/Baichuan2-7B-Chat, baichuan-inc/Baichuan2-13B-Chat

这里以 THUDM/chatglm2-6b-int4 为例( 模型的量化版本,电脑配置比较高的可以试试 chatglm2-6b 或者 chatglm3-6b,毕竟在量化模型的基础上再次量化,效果会差很多), chatglm2-6b-int4 清华源 下载模型,从huggingface下载配置文件。如果网速比较好的话,可以忽略清华源直接从 huggingface中下载,下载结束后,统一保存到

D:\LLM\chatglm2-6b-int4

3.3 python 依赖安装

python3 -m pip install -U pip
python3 -m pip install torch tabulate tqdm transformers accelerate sentencepiece

3.4 将下载好的大模型转为量化GGML 格式

python3 chatglm_cpp/convert.py -i D:\LLM\chatglm2-6b-int4 -t q4_0 -o chatglm2-6b-int4-ggml.bin

不同的量化格式,结果精度损失不一样,-t的可选项有

q4_0: 4-bit integer quantization with fp16 scales.

q4_1: 4-bit integer quantization with fp16 scales and minimum values.
q5_0: 5-bit integer quantization with fp16 scales.
q5_1: 5-bit integer quantization with fp16 scales and minimum values.
q8_0: 8-bit integer quantization with fp16 scales.
f16: half precision floating point weights without quantization.
f32: single precision floating point weights without quantization.

3.5 编译项目通过 exe 文件运行大模型

cmake -B build
cmake --build build -j --config Release

3.6 运行

3.6.1 普通的方式运行

D:\LLM\chatglm.cpp\build\bin\Release\main -m chatglm2-int4-ggml.bin -p 你好

注意编译后 main.exe 的位置在

D:\LLM\chatglm.cpp\build\bin\Release

我的模型 chatglm2-int4-ggml.bin 位置在

D:\LLM\chatglm.cpp

3.6.2 交互方式运行

D:\LLM\chatglm.cpp\build\bin\Release\main -m chatglm2-int4-ggml.bin -i

3.7 python 绑定

3.7.1 python 环境安装

pip install -U chatglm-cpp

3.7.2 pyton 访问

import chatglm_cpp

pipeline = chatglm_cpp.Pipeline("D:\LLM\chatglm.cpp\chatglm2-int4-ggml.bin")
print(pipeline.chat([chatglm_cpp.ChatMessage(role="user", content="你好")]))


至此就可以在本地愉快的玩耍啦

3.7 总结

chatglm.cpp 的效率比 chatglm效率要高很多,可以试试

四、其他

4.1 模型量化

模型量化是通过将模型的各项参数和结构等信息进行数字化处理,将复杂的模型转换为数学形式,以便计算机能够更快速、准确地处理和分析。这样可以使模型更易于实施、验证和优化,从而提高模型的有效性和可靠性。

好处:

  1. 提高计算效率:量化后的模型更容易实施和计算,能够更快速、准确地进行预测和分析。
  2. 方便验证和改进:通过量化可以更清晰地了解模型的结构和参数,方便验证模型的有效性和进行优化改进。
  3. 便于应用:量化后的模型可以更容易地应用于实际问题中,提供更为实用的解决方案。

坏处:

  1. 信息损失:在量化的过程中,可能会损失一些模型精细的特征和信息,导致模型的准确性和可靠性受到影响。
  2. 可解释性下降:量化后的模型可能会变得更为复杂和抽象,对模型的解释和理解可能会变得更加困难。
  3. 难度增加:如果模型本身就很复杂,那么对其进行量化的难度也会增加,可能需要更多的技术和资源来实现。

在这里插入图片描述

如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

在这里插入图片描述

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

  • 18
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: window_qt.cpp 是一个 Qt 程序的源文件,它通常包含一个 Qt 主窗口的实现代码。 这个源文件的主要作用是定义窗口类,并实现窗口的各种功能,比如布局、控件添加、信号与槽的连接等。 在 window_qt.cpp 中,通常会包含一个窗口类的定义,类名可以根据实际需求进行命名,比如 MainWindow、MyWindow 等。这个类继承自 QWidget 或 QMainWindow,用于创建一个可视化的窗口。 在类的定义中,可能会定义一些私有成员变量和私有函数,用于存储和处理窗口的状态和数据。同时,还会定义一些公有函数,用于提供窗口的外部接口,供其他类或函数进行调用。 在窗口的构造函数中,会进行一些初始化操作,比如设置窗口的标题、大小等。同时,也会对窗口中的各个控件进行创建和布局,将它们添加到窗口中,并设置它们的属性和信号槽。 在 window_qt.cpp 中,还可能会包含一些其他的函数,用于响应用户的交互操作,比如按钮的点击事件、菜单的选择事件等。这些函数通常通过连接信号与槽的方式实现,当用户触发某个操作时,会自动调用相应的函数进行处理。 总的来说,window_qt.cpp 是一个包含了窗口类实现代码的源文件,主要负责定义和实现窗口的各种功能,包括布局、控件添加、信号与槽的连接等。它是一个使用 Qt 框架开发图形界面程序的重要组成部分。 ### 回答2: `window_qt.cpp`是一个使用Qt框架编写的窗口类的源文件。 Qt是跨平台的应用程序开发框架,可以用来开发各种类型的应用程序,包括图形界面应用程序。`window_qt.cpp`文件是在Qt框架下创建的一个窗口类的源文件。 在这个源文件中,首先会包含一些必要的头文件,例如: ``` #include <QtGui> #include <QApplication> #include <QMainWindow> ``` 这些头文件包含了在Qt中使用的一些类和功能。 然后,会定义一个名为`WindowQt`的窗口类,它是从`QMainWindow`类继承而来的。这个窗口类包括了一些窗口的基本功能,例如标题栏、菜单栏等。 接下来,会实现`WindowQt`类的一些方法,包括构造函数、析构函数和一些自定义的槽函数。这些方法定义了窗口的行为和响应用户操作的逻辑。 通常,`window_qt.cpp`还会包含一个`main`函数,用于创建窗口实例并运行应用程序。这个`main`函数会使用Qt提供的`QApplication`类来初始化应用程序,并创建一个`WindowQt`对象作为主窗口。 最后,通过调用`QApplication`的`exec`函数,应用程序开始执行,并进入事件循环,等待处理事件和用户的输入操作。 总之,`window_qt.cpp`是一个使用Qt框架编写的窗口类的源文件,包含了窗口类的定义和实现,以及应用程序的入口函数。它充分利用了Qt框架提供的功能和特性,可以方便地创建一个具有交互界面的应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值