我使用的是本地的模型,是在导入模型的时候报错, 具体的报错是:AttributeError: 'ConfigDict' object has no attribute 'model'
以下是代码和configuration文件的代码:
from modelscope.models import Model
from modelscope.trainers import build_trainer
from modelscope.msdatasets import MsDataset
from modelscope.utils.hub import read_config
from modelscope.pipelines import pipeline
# 导入数据集
my_json = './data/osa.json'
ds = MsDataset.load('json',data_files=[my_json])
print(next(iter(ds)))
#导入模型
model_id = Model.from_pretrained('./model')
#p = pipeline('task-oriented-conversation', 'Blink_DL/rwkv-4-pile-1b5')
config=read_config(model_id)
print(config.pretty_text)
#配置参数
def cfg_modify_fn(cfg):
cfg.task='task-oriented-conversation'
cfg.num_labels=2
cfg.train.max_epochs = 5
cfg.train.work_dir='./new'
cfg.train.dataloader.batch_size_per_gpu = 32
cfg.evaluation.dataloader.batch_size_per_gpu = 32
cfg.train.optimizer.lr = 2e-5
cfg.train.lr_scheduler.total_iters = int(len(train_dataset) / cfg.train.dataloader.batch_size_per_gpu) * cfg.train.max_epochs
return cfg
#训练
kwargs=dict(
model=model_id,
train_dataset=ds,
cfg_modify_fn=cfg_modify_fn
)
trainer = build_trainer(default_args=kwargs)
trainer.train()
{
"framework":"pytorch",
"task":"task-oriented-conversation",
"modle":{
"type":"rwkv-4-pile-1b5",
"max_length":128
},
"train":{
"work_dir":"./new"
}
}
使用的模型名称是: RWKV-4-Pile-1B5-20220822-5809.pth
根据您提供的信息,如果在使用ModelScope训练rwkv模型时出现"object没有'model属性'"的错误,这可能是因为在您的代码中尝试访问一个对象的'model'属性,但该对象并没有定义此属性。
请确保您的代码正确设置了ModelScope相关的对象和属性,并且按照正确的顺序进行调用。以下是一个示例,展示如何使用ModelScope训练rwkv模型:
import modelscope_sdk
# 设置API密钥
modelscope_sdk.set_api_key("YOUR_API_KEY")
# 创建ModelScope实例
ms = modelscope_sdk.ModelScope()
# 加载rwkv模型
model = ms.get_model("rwkv", "latest")
# 训练模型
training_data = ...
labels = ...
model.train(training_data, labels)
# 保存模型
model.save("my_trained_rwkv_model")
请注意,上述示例仅展示了一个基本的训练过程,并假设您已经准备好了训练数据和标签。在您的实际代码中,请确保正确处理各种参数、数据加载和预处理等步骤。
如果问题仍然存在,建议检查您的代码中是否有其他地方可能导致该错误的原因。另外,请参考ModelScope SDK的文档和示例代码,以确保正确使用ModelScope的功能和属性。
rwkv-4-pile-14b和7b两个模型按照文档在阿里PAI平台都跑不起来,售后弄了大半天说解决不了让换其他模型,浪费我买的GPU服务器,可是按时计费的呀
问题可能出在您的配置文件中。错误信息提示ConfigDict对象没有model属性,这表明代码中尝试访问了配置文件中不存在的属性。建议检查您的配置文件,确保其中包含正确的模型配置信息。
以下是一个示例的配置文件,供您参考:
yaml Copy model: type: rwkv num_layers: 2 hidden_size: 256 key_size: 32 value_size: 256 dropout: 0.2
data: train_file: path/to/train.txt valid_file: path/to/valid.txt test_file: path/to/test.txt vocab_file: path/to/vocab.txt batch_size: 32 max_seq_length: 128
optimizer: type: adam learning_rate: 0.001
trainer: num_epochs: 10 log_interval: 1000 save_dir: path/to/save/dir 在这个配置文件中,模型相关的信息都包含在model字段中,包括模型类型、层数、隐藏层大小、键/值向量大小等。如果您的配置文件中并没有包含model字段,或者model字段格式不正确,就会出现ConfigDict对象没有model属性的错误。
ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!欢迎加入技术交流群:微信公众号:魔搭ModelScope社区,钉钉群号:44837352