在尝试shap-e和point-e的时候,发现同样都爆出上面的问题,百思不得其解,后来找到一个issue:TypeError: 'float' object cannot be interpreted as an integer · Issue #6 · openai/point-e · GitHub
尝试更改后完美解决,原因是两个项目都基于Diffusion来构建的,问题出在Diffusion
将k_diffusion.py的第96行修改下
修改前:
return float(self.alpha_cumprod_to_t(alpha_cumprod))
修改后
return int(self.alpha_cumprod_to_t(alpha_cumprod))
完美解决