shap-e icon indicating copy to clipboard operation
shap-e copied to clipboard

TypeError: __init__() got an unexpected keyword argument 'device'

Open zyj-2000 opened this issue 2 years ago • 7 comments

TypeError Traceback (most recent call last) Cell In[3], line 1 ----> 1 xm = load_model('transmitter', device=device) 2 model = load_model('text300M', device=device) 3 diffusion = diffusion_from_config(load_config('diffusion'))

File ~/Projects/shap-e/shap_e/models/download.py:146, in load_model(model_name, device, **kwargs) 139 def load_model( 140 model_name: str, 141 device: torch.device, 142 **kwargs, 143 ) -> Dict[str, torch.Tensor]: 144 from .configs import model_from_config --> 146 model = model_from_config(load_config(model_name, **kwargs), device=device) 147 model.load_state_dict(load_checkpoint(model_name, device=device, **kwargs)) 148 model.eval()

File ~/Projects/shap-e/shap_e/models/configs.py:59, in model_from_config(config, device) 56 return MultiviewTransformerEncoder(device=device, dtype=torch.float32, **config) 57 elif name == "Transmitter": 58 # device = torch.device('cuda') ---> 59 renderer = model_from_config(config.pop("renderer"), device=device) 60 param_shapes = { 61 k: v.shape[1:] for k, v in batch_meta_state_dict(renderer, batch_size=1).items() ... 97 ) 99 mlp_init(self.mlp, init=init, init_scale=init_scale) 101 self.activation = get_act(activation)

TypeError: init() got an unexpected keyword argument 'device'

zyj-2000 avatar May 11 '23 06:05 zyj-2000

TypeError Traceback (most recent call last) Cell In[3], line 1 ----> 1 xm = load_model('transmitter', device=device) 2 model = load_model('text300M', device=device) 3 diffusion = diffusion_from_config(load_config('diffusion'))

File ~/Projects/shap-e/shap_e/models/download.py:146, in load_model(model_name, device, **kwargs) 139 def load_model( 140 model_name: str, 141 device: torch.device, 142 **kwargs, 143 ) -> Dict[str, torch.Tensor]: 144 from .configs import model_from_config --> 146 model = model_from_config(load_config(model_name, **kwargs), device=device) 147 model.load_state_dict(load_checkpoint(model_name, device=device, **kwargs)) 148 model.eval()

File ~/Projects/shap-e/shap_e/models/configs.py:59, in model_from_config(config, device) 56 return MultiviewTransformerEncoder(device=device, dtype=torch.float32, **config) 57 elif name == "Transmitter": 58 # device = torch.device('cuda') ---> 59 renderer = model_from_config(config.pop("renderer"), device=device) 60 param_shapes = { 61 k: v.shape[1:] for k, v in batch_meta_state_dict(renderer, batch_size=1).items() ... 97 ) 99 mlp_init(self.mlp, init=init, init_scale=init_scale) 101 self.activation = get_act(activation)

TypeError: init() got an unexpected keyword argument 'device'

device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') add this in line 1

jayanthd26 avatar May 11 '23 07:05 jayanthd26

@jayanthd26 Thanks for your fast reply! However, I encountered with the error when I was running the "sample_text_to_3d.ipynb", which has added the code "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')" in line 8, before the function "load_model". I think it may have other ways to fix it?

zyj-2000 avatar May 11 '23 08:05 zyj-2000

Wha version of pytorch are you running with? Try upgrading.

unixpickle avatar May 12 '23 15:05 unixpickle

@unixpickle Thanks for your reply. I used pytorch 1.8+cu113 in Ubuntu18.04. I will try to update it and reply to you.

zyj-2000 avatar May 13 '23 00:05 zyj-2000

@unixpickle Thanks for your reply. I used pytorch 1.8+cu113 in Ubuntu18.04. I will try to update it and reply to you.

bro,have you sloved this problem,how?

ALLIZZWELL123 avatar Aug 03 '23 10:08 ALLIZZWELL123

@ALLIZZWELL123 Sorry, for some reason, I haven't tried the update yet. I will try as soon as possible. On the other hand, welcome to solve the problem jointly! Thanks!

zyj-2000 avatar Aug 03 '23 11:08 zyj-2000

I have successfully get the mesh and ply result. I install all the requirements follow the setup.py by the command pip install -e . then everything is ok. The torch I use now is torch 2.0.1. YRJAWJP$L_LPL$@@$F(EMI

zyj-2000 avatar Aug 04 '23 02:08 zyj-2000