-
Notifications
You must be signed in to change notification settings - Fork 5.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mac M1Pro 可以正常运行,但一直卡着等不到回答! #462
Comments
half().to('mps') 改为 float().to('mps')试试 |
应该是PyTorch在mps上的一个bug:pytorch/pytorch#96602 ,会导致attention score出现nan |
您好,想请教一下,在m1 pro 16g的电脑上,使用.half().to('mps'),回复速度十分的慢,这个是正常情况么。第一句回复用了1000多秒。 |
不太正常,你可以打开活动监视器看一下GPU占用 |
GPU占用很低,是不是说明我没有启动to('mps')这个模式 |
在m1电脑上,使用.half().to('mps')时报错,用float()时正常,应该怎么修改呢,感谢! /Users/wilson/miniforge3/lib/python3.10/site-packages/transformers/generation/utils.py:686: UserWarning: MPS: no support for int64 repeats mask, casting it to int32 (Triggered internally at /Users/runner/work/pytorch/pytorch/pytorch/aten/src/ATen/native/mps/operations/Repeat.mm:236.) |
same problem, after I update the system version to 13.3.1 |
你跑通了,我刚跑也是一直卡着 |
m1 half 问个你好,要10多分钟 。 float 直接内存溢出。 量化 直接报错要 cuda 有一样问题的么? 另外项目belle 可以使用int4 量化,而且效果不错 |
对,踩坑半天,和你情况一样 |
量化的话直接用 https://huggingface.co/THUDM/chatglm-6b-int4 ,里面有cpu kernel不用cuda |
在 m1 pro 16g 机器上根本无法运行int4,你是能直接运用吗?有详细的步骤没,大佬请赐教,不知道那出错啦? |
我也遇到这个问题了,现已解决。 用Anaconda,重新描述一遍过程。 激活环境 配置环境 然后用conda install 命令依次安装requirements.txt文件中的依赖。除了torch。有些是pip 接下来去https://anaconda.org/conda-forge/transformers/files,下载[noarch/transformers-4.26.0-pyhd8ed1ab_0.conda](https://anaconda.org/conda-forge/transformers/4.26.0/download/noarch/transformers-4.26.0-pyhd8ed1ab_0.conda) 最后mps加速就正常了。 没有修改git代码,基本可以确定是环境配置的问题。 |
可以,之前的代码会强制使用 openmp 所以没法跑。你更新一下应该就好了。(需要安装 xcode command line tools) |
1.下载 重新尝试了一下,基于模型chatglm-6b-int4 https://huggingface.co/THUDM/chatglm-6b-int4 2 model_dir= "your local dir" #
tokenizer = AutoTokenizer.from_pretrained(model_dir, trust_remote_code=True)
# INT8 量化的模型将"THUDM/chatglm-6b-int4"改为"THUDM/chatglm-6b-int8"
model = AutoModel.from_pretrained(model_dir, trust_remote_code=True).float() 3.直接下载 https://github.com/THUDM/ChatGLM-6B.git 项目,进入项目路径 python web_demo.py or python api.py 4.直接忽略启动错误(此类错误:Message: 'Failed to load cpm_kernels:' Arguments: (RuntimeError('Unknown platform: darwin'),)),直接试用,基本延迟5秒左右,就会得到答案(m1 pro+16g) |
尝试啦一下,int4 cpu 本地启动成功并能成功调用,gpu 启动方式(to("mps"))能够启动成功,但是调用服务会如出现如下错误 |
我用AMD 5500M的Mac也出现了这个错误,试着按照楼上的方法重新安装了一遍依赖依然无效。将half().to('mps')改成float()使用CPU是可以正常回答的。 |
量化后的模型是没法在 MPS 后端上跑的,因为用到的 kernel 是用 CUDA 写的,只能用 CPU 跑。 |
按照提示修改了 |
MPS 后端没法用量化后的模型 |
M1Pro 32G 13.3.1 遇到同样的问题。折腾后发现其实是我python的问题,使用 x86_64 就会出现卡住最后内存不够的情况,换用 miniconda 带的 arm 版本的 python 就没有问题 |
@ALL textgen webui 踩过坑了!oobabooga/text-generation-webui#393 pytorch目前要用nightly build。估计py2.1.0会修复 |
用M1 Ultra 64G内存来跑的话,非量化的版本是可以顺利跑起来的,而且输出速度可以接受,就是回答字数超过500字会出现爆内存,10几秒崩一个字。 |
我在这个fork里面加了下Mac(ARM64)的文档:
如果没问题,会提交个PR |
导出了一份 ONNX int8 量化的模型,走 ONNXRuntime MatMulInteger 算子,在 M1 上测试速度完全可以,huggingface 链接 |
您好,是采用 MPS 后端方式运行的吗? 同M1,但回复都是表情,可以帮看看这个问题吗 : |
MacBook Pro, 升级 pytorch 到 nightly 后, half 可以运行了, 👍 |
Is there an existing issue for this?
Current Behavior
queue: 1/1 | 561.3s.
Expected Behavior
No response
Steps To Reproduce
Environment
Anything else?
No response
The text was updated successfully, but these errors were encountered: