web-dev-qa-db-fra.com

AttributeError: le module 'torch' n'a pas d'attribut "device"

---> 13 device = torch.device({"cuda"} if torch.cuda.is_available() else {"cpu"})
     14
     15

AttributeError: module 'torch' has no attribute 'device'

Je suis sûr à 99% que c'est parce que je n'ai pas mis à jour pytorch de 0.31 à 0.4 mais je ne peux pas mettre à jour pytorch pour l'instant.

Je dois traduire .device (0.4) en quelque chose qui fonctionne en 0.31.

Je vérifie le document de migration mais il ne fournit pas comment je peux convertir torch.device rétrospectivement. S'il vous plaît aider! 

2
Aerin

torch.cuda.device() est un gestionnaire de contexte.

torch.cuda.set_device(0)
# On device 0
with torch.cuda.device(1):
    print("Inside device is 1")    
    # On device 1
print("Outside is still 0")
# On device 0

Et ce qui précède fonctionne à partir de la version 0.2.

2
Wasi Ahmad