ConnectionError: Couldn't reach 'mit-han-lab/pile-val-backup' on the Hub (ConnectTimeout)
I guess it should be a network issue。I'm running inside a docker container,so how to handle it??Thanks ur advise
这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考
# 加载本地数据集 test 为 validation 数据 214670条
data=load_from_disk(data_path)
return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]
# 或者 读取 解压后的jsonl文件
# data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl')
# return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]
#将数据转为list格式 送入量化函数
calib_data=load_tulu_v2()
quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" }
start = time.time()
model.quantize(tokenizer,
quant_config=quant_config,
calib_data=calib_data
)
这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考
# 加载本地数据集 test 为 validation 数据 214670条 data=load_from_disk(data_path) return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] # 或者 读取 解压后的jsonl文件 # data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl') # return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]#将数据转为list格式 送入量化函数
calib_data=load_tulu_v2() quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" } start = time.time() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )
感谢你的回答,我稍后会尝试解决一下
这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考
# 加载本地数据集 test 为 validation 数据 214670条 data=load_from_disk(data_path) return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] # 或者 读取 解压后的jsonl文件 # data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl') # return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]#将数据转为list格式 送入量化函数
calib_data=load_tulu_v2() quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" } start = time.time() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )感谢你的回答,我稍后会尝试解决一下
加个qq,一起看看
这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考
# 加载本地数据集 test 为 validation 数据 214670条 data=load_from_disk(data_path) return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] # 或者 读取 解压后的jsonl文件 # data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl') # return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]#将数据转为list格式 送入量化函数
calib_data=load_tulu_v2() quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" } start = time.time() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )感谢你的回答,我稍后会尝试解决一下
加个qq,一起看看
我已经解决了,只需要手动下载数据集down到本地即可
这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考
# 加载本地数据集 test 为 validation 数据 214670条 data=load_from_disk(data_path) return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] # 或者 读取 解压后的jsonl文件 # data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl') # return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]#将数据转为list格式 送入量化函数
calib_data=load_tulu_v2() quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" } start = time.time() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )感谢你的回答,我稍后会尝试解决一下
加个qq,一起看看
我已经解决了,只需要手动下载数据集down到本地即可
请问是这个数据集就可以吗:dataset = load_dataset("mit-han-lab/pile-val-backup", split="validation"), 能否给个下载地址。还有你是量化llama模型吗
这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考
# 加载本地数据集 test 为 validation 数据 214670条 data=load_from_disk(data_path) return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] # 或者 读取 解压后的jsonl文件 # data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl') # return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]#将数据转为list格式 送入量化函数
calib_data=load_tulu_v2() quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" } start = time.time() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )感谢你的回答,我稍后会尝试解决一下
加个qq,一起看看
我已经解决了,只需要手动下载数据集down到本地即可
请问是这个数据集就可以吗:dataset = load_dataset("mit-han-lab/pile-val-backup", split="validation"), 能否给个下载地址。还有你是量化llama模型吗
数据集是huggingface上的mit-han-lab/pile-val-backup,这是我的量化代码`from awq import AutoAWQForCausalLM from transformers import AutoTokenizer
model_path = '/workspace/llama_meta' quant_path = '/workspace/awq_model' quant_config = { "zero_point": True, "q_group_size": 128, "w_bit": 4, "version": "GEMM" }
def load_tulu_v2(data): return [text for text in data['text'] if text.strip() != '' and len(text.split(' ')) > 20]
Load model
model = AutoAWQForCausalLM.from_pretrained( model_path, **{"low_cpu_mem_usage": True, "use_cache": False} ) tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)
#读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl')
calib_data = load_tulu_v2(data)
Quantize
calib_data=load_tulu_v2() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )
Save quantized model
model.save_quantized(quant_path) tokenizer.save_pretrained(quant_path)
print(f'Model is quantized and saved at "{quant_path}"')`
这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考
# 加载本地数据集 test 为 validation 数据 214670条 data=load_from_disk(data_path) return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] # 或者 读取 解压后的jsonl文件 # data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl') # return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]#将数据转为list格式 送入量化函数
calib_data=load_tulu_v2() quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" } start = time.time() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )感谢你的回答,我稍后会尝试解决一下
加个qq,一起看看
我已经解决了,只需要手动下载数据集down到本地即可
请问是这个数据集就可以吗:dataset = load_dataset("mit-han-lab/pile-val-backup", split="validation"), 能否给个下载地址。还有你是量化llama模型吗
数据集是huggingface上的mit-han-lab/pile-val-backup,这是我的量化代码`from awq import AutoAWQForCausalLM from transformers import AutoTokenizer
model_path = '/workspace/llama_meta' quant_path = '/workspace/awq_model' quant_config = { "zero_point": True, "q_group_size": 128, "w_bit": 4, "version": "GEMM" }
def load_tulu_v2(data): return [text for text in data['text'] if text.strip() != '' and len(text.split(' ')) > 20]
Load model
model = AutoAWQForCausalLM.from_pretrained( model_path, **{"low_cpu_mem_usage": True, "use_cache": False} ) tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)
#读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl')
calib_data = load_tulu_v2(data)
Quantize
calib_data=load_tulu_v2() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )
Save quantized model
model.save_quantized(quant_path) tokenizer.save_pretrained(quant_path)
print(f'Model is quantized and saved at "{quant_path}"')`
File "lib.pyx", line 2538, in pandas._libs.lib.maybe_convert_objects TypeError: Cannot convert numpy.ndarray to numpy.ndarray 你是llama3:8b-instruct模型吗, 还有dataset下载val.jsonl.zst后缀直接改成json格式吗
直接解压就行
---Original--- From: @.> Date: Wed, Jun 26, 2024 10:14 AM To: @.>; Cc: @.@.>; Subject: Re: [casper-hansen/AutoAWQ] ConnectionError: Couldn't reach'mit-han-lab/pile-val-backup' on the Hub (ConnectTimeout) (Issue #506)
这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考
# 加载本地数据集 test 为 validation 数据 214670条 data=load_from_disk(data_path) return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] # 或者 读取 解压后的jsonl文件 # data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl') # return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]
#将数据转为list格式 送入量化函数
calib_data=load_tulu_v2() quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" } start = time.time() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )
感谢你的回答,我稍后会尝试解决一下
加个qq,一起看看
我已经解决了,只需要手动下载数据集down到本地即可
请问是这个数据集就可以吗:dataset = load_dataset("mit-han-lab/pile-val-backup", split="validation"), 能否给个下载地址。还有你是量化llama模型吗
数据集是huggingface上的mit-han-lab/pile-val-backup,这是我的量化代码`from awq import AutoAWQForCausalLM from transformers import AutoTokenizer
model_path = '/workspace/llama_meta' quant_path = '/workspace/awq_model' quant_config = { "zero_point": True, "q_group_size": 128, "w_bit": 4, "version": "GEMM" }
def load_tulu_v2(data): return [text for text in data['text'] if text.strip() != '' and len(text.split(' ')) > 20]
Load model
model = AutoAWQForCausalLM.from_pretrained( model_path, **{"low_cpu_mem_usage": True, "use_cache": False} ) tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)
#读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl')
calib_data = load_tulu_v2(data)
Quantize
calib_data=load_tulu_v2() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data )
Save quantized model
model.save_quantized(quant_path) tokenizer.save_pretrained(quant_path)
print(f'Model is quantized and saved at "{quant_path}"')`
File "lib.pyx", line 2538, in pandas._libs.lib.maybe_convert_objects TypeError: Cannot convert numpy.ndarray to numpy.ndarray 你是llama3:8b-instruct模型吗, 还有dataset下载val.jsonl.zst后缀直接改成json格式吗
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
直接解压就行 … ---Original--- From: @.> Date: Wed, Jun 26, 2024 10:14 AM To: @.>; Cc: @.@.>; Subject: Re: [casper-hansen/AutoAWQ] ConnectionError: Couldn't reach'mit-han-lab/pile-val-backup' on the Hub (ConnectTimeout) (Issue #506) 这看起来像是网络问题,首先保证服务器可以链接hunggingface。此外你可以下载校准数据集并在本地加载进行处理。 这是我的处理函数 ,请你参考 # 加载本地数据集 test 为 validation 数据 214670条 data=load_from_disk(data_path) return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] # 或者 读取 解压后的jsonl文件 # data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl') # return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20] #将数据转为list格式 送入量化函数 calib_data=load_tulu_v2() quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" } start = time.time() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data ) 感谢你的回答,我稍后会尝试解决一下 加个qq,一起看看 我已经解决了,只需要手动下载数据集down到本地即可 请问是这个数据集就可以吗:dataset = load_dataset("mit-han-lab/pile-val-backup", split="validation"), 能否给个下载地址。还有你是量化llama模型吗 数据集是huggingface上的mit-han-lab/pile-val-backup,这是我的量化代码
from awq import AutoAWQForCausalLM from transformers import AutoTokenizer model_path = '/workspace/llama_meta' quant_path = '/workspace/awq_model' quant_config = { "zero_point": True, "q_group_size": 128, "w_bit": 4, "version": "GEMM" } def load_tulu_v2(data): return [text for text in data['text'] if text.strip() != '' and len(text.split(' ')) > 20] Load model model = AutoAWQForCausalLM.from_pretrained( model_path, **{"low_cpu_mem_usage": True, "use_cache": False} ) tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True) #读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl') calib_data = load_tulu_v2(data) Quantize calib_data=load_tulu_v2() model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data ) Save quantized model model.save_quantized(quant_path) tokenizer.save_pretrained(quant_path) print(f'Model is quantized and saved at "{quant_path}"')File "lib.pyx", line 2538, in pandas._libs.lib.maybe_convert_objects TypeError: Cannot convert numpy.ndarray to numpy.ndarray 你是llama3:8b-instruct模型吗, 还有dataset下载val.jsonl.zst后缀直接改成json格式吗 — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
可以加个qq吗,你用的autoawq 0.25吗
#读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl')
calib_data = load_tulu_v2(data)
==================== #读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl')
calib_data = load_tulu_v2(data) 这里加载后数据打印是这样的 DatasetDict({ train: Dataset({ features: ['text', 'meta'], num_rows: 214670 }) }) 怎么能直接传给 load_tulu_v2呢,还要什么步骤
加我的Q吧2496032705
---Original--- From: @.> Date: Wed, Jun 26, 2024 13:11 PM To: @.>; Cc: @.@.>; Subject: Re: [casper-hansen/AutoAWQ] ConnectionError: Couldn't reach'mit-han-lab/pile-val-backup' on the Hub (ConnectTimeout) (Issue #506)
#读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl')
calib_data = load_tulu_v2(data)
==================== #读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl')
calib_data = load_tulu_v2(data) 这里加载后数据打印是这样的 DatasetDict({ train: Dataset({ features: ['text', 'meta'], num_rows: 214670 }) }) 怎么能直接传给 load_tulu_v2呢,还要什么步骤
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
#读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl') calib_data = load_tulu_v2(data)
==================== #读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl')
calib_data = load_tulu_v2(data) 这里加载后数据打印是这样的 DatasetDict({ train: Dataset({ features: ['text', 'meta'], num_rows: 214670 }) }) 怎么能直接传给 load_tulu_v2呢,还要什么步骤
我也遇到了相同问题,请问还需要怎么处理呢?
贴一个 qwen2关于awq的帖子qwen2-awq awq本身也提供了一部分量化参考awq-doc
def load_pileval(data_path='/data/djh/dataset/calib_dataset/pileval/test'):
# 加载本地数据集 test 为 validation 数据 214670条
data=load_from_disk(data_path)
return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]
# 或者 读取 解压后的jsonl文件
# data=load_dataset("json",data_files='/data/djh/dataset/calib_dataset/pileval/val.jsonl')
# return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]
def load_wikitext():
data = load_from_disk('/data/djh/dataset/calib_dataset/wikitext2')
return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]
加载模型后 执行
calib_data=load_wikitext()
print(f'抽样数据数量为 {len(calib_data)}')
quant_config = { "zero_point": args.zero_point, "q_group_size":args.q_group_size, "w_bit": args.w_bits, "version": "GEMM" }
start = time.time()
model.quantize(tokenizer,
quant_config=quant_config,
calib_data=calib_data,
)
end = time.time()
print(f"quantization took: {end - start: .4f}s")
这样你应该可以完成量化。 另外,如果你是针对微调的模型进行量化,也可以在校准数据集中添加部分微调数据。
#读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl') calib_data = load_tulu_v2(data)
==================== #读取 解压后的jsonl文件 data=load_dataset("json",data_files='/workspace/data/val.jsonl') calib_data = load_tulu_v2(data) 这里加载后数据打印是这样的 DatasetDict({ train: Dataset({ features: ['text', 'meta'], num_rows: 214670 }) }) 怎么能直接传给 load_tulu_v2呢,还要什么步骤
我也遇到了相同问题,请问还需要怎么处理呢?
回复如上,请参考
额,把这个jsonl下载下来,代码中改个路径就好了呀
- git lfs install
- git clone https://huggingface.co/datasets/mit-han-lab/pile-val-backup
- 下载 pile-val-backup 到本地,示例 /home/yourname/downloads/pile-val-backup/
your_path/pile-val-backup/
├── README.md
└── val.jsonl.zst
def load_calib_data():
data=load_dataset('/home/yourname/downloads/pile-val-backup/', split="validation")
return [text for text in data["text"] if text.strip() != '' and len(text.split(' ')) > 20]
# Quantize
calib_data = load_calib_data()
model.quantize(tokenizer, quant_config=quant_config, calib_data=calib_data)