问题一:体验mGLM多语言大模型-生成式摘要-中文 报错:No module named 'apex'
RuntimeError: Failed to import modelscope.models.nlp.mglm.mglm_for_text_summarization because of the following error (look up to see its traceback): No module named 'apex'
参考回答:
这个错误提示是因为您的环境中没有安装apex
库。您可以通过以下命令来安装:
请将/path/to/apex
替换为您的系统中apex
库的实际路径。如果您不确定该路径,可以在终端中运行以下命令来查找:
pip show apex
这将显示apex
库的详细信息,包括其安装路径。然后,您可以使用上面的命令来安装它。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/486987?spm=a2c6h.14164896.0.0.43f2508eHFy5Df
问题二:modelscope下载模型文件报错
报错信息如下: /usr/local/lib/python3.8/dist-packages/modelscope/hub/file_download.py in http_get_file(url, local_dir, file_name, cookies, headers) 208 logger.info('downloading %s to %s', url, temp_file.name) 209 # retry sleep 0.5s, 1s, 2s, 4s --> 210 retry = Retry( 211 total=API_FILE_DOWNLOAD_RETRY_TIMES, 212 backoff_factor=1,
TypeError: init() got an unexpected keyword argument 'allowed_methods'
参考回答:
如果报错是“TypeError: init() got an unexpected keyword argument 'xxx'”,请检查“xxx”的拼写是否正确。
例如:错误案例:TypeError: init() got an unexpected keyword argument 'substitle',把“substitle”改为“subtitle”,则错误修正。
详细的过程去结合你的代码内容看一下
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/471357?spm=a2c6h.14164896.0.0.43f2508eHFy5Df
问题三:多卡训练得到的GPT3-2.7B模型,推理pipeline加载模型时报错size mismatch
使用官网镜像registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.3.0-py37-torch1.11.0-tf1.15.5-1.3.0
4卡V100 finetune GPT3-2.7B得到output模型文件后,用
报错模型size mismatch,刚好差了4倍
参考回答:
尝试一下我修复的bug的版本
https://github.com/zhangzhenyu13/modelscope-debugged
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/489557?spm=a2c6h.14164896.0.0.43f2508eHFy5Df
问题四:在调用pipeline重复多次推理的时候,只有第一次没有问题,第二次就会报错,这是什么原因?
请教一下,我这边用modelscope的space-t中文tableQa模型,写了一个服务,在调用pipeline重复多次推理的时候,只有第一次没有问题,第二次就会报错,这是什么原因?
参考回答:
当您在调用pipeline进行多次推理时,如果只有第一次没有问题,而之后的调用出现错误,可能是由于以下原因之一:
- 资源释放问题:每次调用完毕后,确保正确释放模型资源和GPU内存。如果没有正确释放资源,后续的推理请求可能会出现问题。您可以使用
del
关键字或者torch.cuda.empty_cache()
来手动释放资源。 - 状态保持问题:某些模型可能具有内部状态,例如缓存、隐藏状态等。如果您连续进行多次推理而没有重置这些状态,可能会导致后续推理的错误。确保在每次推理之前,将模型的状态重置为初始状态。
- 并发访问问题:如果多个线程或进程同时访问同一个模型实例,可能会导致争用和冲突。这可能会导致意外的行为和错误。您可以尝试使用锁(lock)或其他并发控制机制来保护模型的访问。
- 内存不足问题:多次连续的推理操作可能会导致内存占用逐渐增加,最终导致内存不足的错误。请确保系统具有足够的内存来支持您的推理需求,并注意监控和管理内存使用情况。
- 异常处理问题:在代码中添加适当的异常处理机制,以捕获和处理可能出现的错误。这样可以更好地追踪问题并进行及时修复。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/493589?spm=a2c6h.14164896.0.0.7d5a508euj5zDV
问题五:评估二次训练模型报错?
使用数据集中文诗词数据集对预训练GPT-3预训练生成模型-中文-base 二次训练生成的模型进行评估,代码如下:
#!/usr/bin/python3 # -*- coding=utf-8 -*- from modelscope.msdatasets import MsDataset from modelscope.trainers import build_trainer from modelscope.metainfo import Trainers def cfg_modify_fn(cfg): cfg.evaluation.metrics = { 'type': 'text-gen-metric', # 'target_text': 'input_ids', } return cfg dataset_dict = MsDataset.load('chinese-poetry-collection') eval_dataset = dataset_dict['test'].remap_columns({'text1': 'src_txt'}) print(eval_dataset) max_epochs = 10 tmp_dir = "./gpt3_poetry" # 构造 trainer 并进行评估 kwargs = dict( # 由于使用的模型训练后的目录,因此不需要传入cfg_modify_fn model=f'{tmp_dir}/output', eval_dataset=eval_dataset, cfg_modify_fn=cfg_modify_fn) trainer = build_trainer(name=Trainers.nlp_base_trainer, default_args=kwargs) trainer.evaluate()
报错如下:
Traceback (most recent call last): File "test2.py", line 81, in <module> result = trainer.evaluate() File "/root/anaconda3/envs/modelscope/lib/python3.7/site-packages/modelscope/trainers/trainer.py", line 623, in evaluate metric_classes) File "/root/anaconda3/envs/modelscope/lib/python3.7/site-packages/modelscope/trainers/trainer.py", line 1091, in evaluation_loop data_loader_iters=self._eval_iters_per_epoch) File "/root/anaconda3/envs/modelscope/lib/python3.7/site-packages/modelscope/trainers/utils/inference.py", line 56, in single_gpu_test evaluate_batch(trainer, data, metric_classes, vis_closure) File "/root/anaconda3/envs/modelscope/lib/python3.7/site-packages/modelscope/trainers/utils/inference.py", line 182, in evaluate_batch metric_cls.add(batch_result, data) File "/root/anaconda3/envs/modelscope/lib/python3.7/site-packages/modelscope/metrics/text_generation_metric.py", line 36, in add ground_truths = inputs[self.target_text] KeyError: 'tgts'
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/487864?spm=a2c6h.14164896.0.0.7d5a508euj5zDV