Su Windows, l'esecuzione di "import tensorflow" genera l'errore Nessun modulo denominato "_pywrap_tensorflow"


87

Su Windows, TensorFlow segnala uno o entrambi i seguenti errori dopo aver eseguito import tensorflowun'istruzione:

  • No module named "_pywrap_tensorflow"
  • DLL load failed.

Risposte:


78

Il problema era la libreria cuDNN per me - per qualsiasi motivo cudnn-8.0-windows10-x64-v6.0 NON funzionava - ho usato cudnn-8.0-windows10-x64-v5.1 - TUTTO BENE!

La mia configurazione funziona con Win10 64 e Nvidia GTX780M:

  • Assicurati di avere lib MSVCP140.DLL controllando il tuo sistema / percorso - se non lo trovi qui
  • Esegui il programma di installazione di Windows per python 3.5.3-amd64 da qui - NON provare le versioni più recenti perché probabilmente non funzioneranno
  • Ottieni il cuDNN v5.1 per CUDA 8.0 da qui - mettilo nella cartella degli utenti o in un'altra posizione nota (ti servirà nel tuo percorso)
  • Ottieni CUDA 8.0 x86_64 da qui
  • Imposta le variabili PATH come previsto per puntare alle librerie cuDNN e python (il percorso python dovrebbe essere aggiunto durante l'installazione di python)
  • Assicurati che ".DLL" sia incluso nella variabile PATHEXT
  • Se stai usando tensorflow 1.3, allora vuoi usare cudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705

Se esegui Windows 32 assicurati di ottenere le versioni a 32 bit dei file sopra menzionati.


8
Può essere ovvio per la maggior parte, ma la DLL CUDA è "cudnn64_5.dll" e la cartella in cui si trova deve essere nel percorso .. non nella cartella principale. L'ho rilasciato in "% USERPROFILE% \ AppData \ Local \ cuda \ bin;"
Awesomeness

6
Dopo aver aggiunto al PERCORSO ricordarsi di chiudere il prompt dei comandi e aprirlo di nuovo. Inoltre, vale la pena digitare "cudnn64_5.dll" nel prompt dei comandi per assicurarsi di avere le impostazioni del percorso corrette.
Sean Colombo

9
Ho appena trascorso 4 ore a eseguire il debug di questo, se stai usando tensorflow 1.3 allora vuoi usare cudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705
Chris Barrett

2
Il commento di Chris Barret lo ha risolto: se installi dopo agosto 2017 è probabile che avrai bisogno di cuDNN v6,0 non 5 o 7.
user1761806

2
Nel mio caso, anche python 3.5.4 ha funzionato. E non sono stato in grado di installare cuda 8.0 fino a quando non ho rimosso vs17 e installato visual studio 15 (win10). È davvero ridicolo dover trovare e installare le vecchie versioni una per una.
margincall

21

Nel mio caso il file "cudnn64_6.dll" nella cartella / bin doveva essere rinominato in "cudnn64_5.dll" affinché l'errore andasse via. Ho passato facilmente due ore a capirlo e ho seguito alla lettera la guida all'installazione ufficiale. Questo è vero per l'installazione tramite pip (supportato ufficialmente) e conda (supportato dalla comunità).


1
Questo è stato il mio caso. TensorFlow richiede "cuDNN v5.1" ma se installi cuDNN v6.0, il nome del file cudnn dll cudnn64_6.dllnon lo sarà cudnn64_5.dll.
Naetmul

1
Se stai usando tensorflow 1.3, allora vuoi usare cudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705
Chris Barrett

Sto usando tensorflow 1.3 e ho dovuto cambiare da cudnn64_7.dll (la versione più recente in questo momento) a cudnn64_6.dll come dice @ChrisBarrett per farlo funzionare.
Javier Cabero

1
In caso di tensorflow 1.3 e cudNN 7, allo stesso modo rinominare cudnn64_7.dllin cudnn64_6.dllaiuta.
Smarty77

12

Entrambi gli errori indicano che il sistema non è stato installato MSVCP140.DLL, operazione richiesta da TensorFlow.

Per correggere questo errore:

  1. Determina se MSVCP140.DLLè nella tua %PATH%variabile.
  2. Se MSVCP140.DLLnon è nel tuo %PATH%, installa il ridistribuibile di Visual C ++ 2015 (versione x64), che contiene questa DLL.

1
Questo può o meno risolvere il suo problema (a seconda della CPU rispetto alla GPU) e sebbene sia necessaria la dll di Windows, potrebbe essere anche un altro problema - vedere la risposta di seguito. Non ho avuto problemi con la dll di Windows, ma invece ho avuto un problema con cuDNN v6.0
DropHit

7
Puoi controllare se MSVCP140.dll è nel tuo percorso digitando quanto segue al prompt dei comandi: dove MSVCP140.DLL
nickandross

Il collegamento ti porta alla versione 2010. Puntiamo alla versione 2015 o 2010?
DAG

11

Ho Win7 Pro a 64 bit su CPU AMD, nessuna GPU. Stavo seguendo le istruzioni in "Installazione con pip nativo" su https://www.tensorflow.org/install/install_windows . Il passaggio di installazione è andato a buon fine ma il tentativo di importare tensorflow ha prodotto il famigerato:

ImportError: No module named '_pywrap_tensorflow_internal'

Questa sembra essere una di quelle situazioni in cui molte cose non correlate possono andare storte, a seconda della configurazione, che ricadono tutte sullo stesso errore.

Nel mio caso, l'installazione di MSVCP140.DLL è stata la risposta.

Hai MSVCP140.DLLgià se

  1. hai un file C:\Windows\System32\MSVCP140.DLL, AND
  2. se hai un sistema a 64 bit, allora hai anche C:\Windows\SysWOW64\MSVCP140.DLL.

L'ho installato manualmente, il che non era necessario (il ridistribuibile non è l'intero pasticcio di sviluppo di Visual C ++ e non è grande). Utilizzare il collegamento pubblicato in precedenza in questo thread per installarlo: Visual C ++ 2015 ridistribuibile .

Inoltre, ti consiglio di sovrascrivere la directory di installazione predefinita per Python e metterla ovunque non sotto C:\Program Files, perché Windows cerca di proteggere da scrittura i file lì, il che causa problemi in seguito.


10

Solo per tensorflow con CPU:


Avevo installato tensorflow usando il comando:

pip3 install --upgrade tensorflow

Questo installato tensorflow 1.7
Ma non è stato possibile importare il tensorflow da withing python 3.6.5 amd64utilizzando:

import tensorflow as tf

Quindi, ho effettuato il downgrade della versione di tensorflow da 1.7a 1.5utilizzando il seguente comando:

pip3 install tensorflow==1.5

Questo ha disinstallato la versione precedente e installata 1.5 . Ora funziona.

Sembra che la mia CPU non supporti le istruzioni AVX necessario intensorflow 1.7

Avevo MSVCP140.DLLnelle cartelle di sistema e .DLL nella variabile PATHEXT in Variabile d'ambiente.


il mio sistema: Windows 8.1, Python 3.6.5 64 bit, nessuna GPU.
Rakibul Haq

Potrebbe essere necessario aggiornare, poiché dalla versione 2.0.0, tensorflow-gpu è integrato nell'installazione regolare - vedi qui: github.com/fo40225/tensorflow-windows-wheel Forse vuoi considerare la mia risposta qui dove la compatibilità tra diversi versioni di pitone e tensorflow è spiegato: stackoverflow.com/questions/45749992/...
Cadoiz

7

TensorFlowrichiede MSVCP140.DLL, che potrebbe non essere installato sul tuo sistema. Per risolverlo apri il terminale e digita o incolla questo link:

C:\> pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0-cp35-cp35m-win_amd64.whl 

Tieni presente che questo serve per installare la versione solo CPU di TensorFlow.


Per la mia configurazione, il binario che ha funzionato era: storage.googleapis.com/tensorflow/windows/cpu/… - Controlla pypi.python.org/pypi/tensorflow per i binari compilati disponibili. Ne ho controllati un paio fino a quando "import tensorflow as tf" non riesce.
David

7

cuDNN causa il mio problema. La variabile PATH non funziona per me. Devo copiare i file nelle mie cartelle cuDNN in una struttura di cartelle CUDA 8.0 rispettosa.


6

Per coloro che utilizzano hardware meno recente:

Potresti ricevere lo stesso errore a causa di una vecchia CPU che utilizza tensorflow-gpu 1.6.

Se la tua CPU è stata realizzata prima del 2011, la tua versione massima di tensorflow-gpu è 1.5.

Tensorflow 1.6 richiede le istruzioni AVX sulla tua CPU. Verificato qui: documenti Tensorflow Github

CPU abilitate per AVX: CPU Wiki AVX

Cosa ho fatto nel mio ambiente conda per tensorflow:

pip install --ignore-installed --upgrade tensorflow-gpu==1.5

4

Il problema per me era la libreria cuDNN che non corrispondeva ai requisiti della scheda grafica. Ho scaricato la versione 6.0 ma per la mia GTX980ti ma la capacità di calcolo consigliata sul sito web di nvidia era 5.1 ( http://developer.nvidia.com/cuda-gpus ) quindi ho scaricato 5.1 e sostituito la versione 6.0 e non appena ho ' L'ho fatto ha iniziato a funzionare.


4

Dopo molte prove ed errori e assicurandosi che VC ++ 2015 Redistributable , cuDNN DLL e tutte le altre dipendenze siano accessibili da PATH, sembra che la GPU Tensorflow funzioni solo con Python 3.5.2(al momento della stesura di questo documento)

Quindi se stai usando Anaconda

  • conda create -n tensorflow-gpu python=3.5.2
  • activate tensorflow-gpu
  • pip install tensorflow-gpu

Quindi apri l'interprete Python e verifica

>>> import tensorflow as tf
>>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

Trovato dispositivo 0 con proprietà:
nome: GeForce 940M
maggiore: 5 minore: 0
memoryClockRate (GHz) 1.176
pciBusID 0000: 06: 00.0
Memoria totale: 2.00GiB
Memoria libera: 1.66GiB

Crediti: questa guida accurata


4

Per ogni versione di Tensorflow, richiede una versione diversa di CuDnn. Su www.tensorflow.org , non ne hanno parlato nella guida all'installazione!

Il mio caso utilizza la versione 1.3 di tensorflow che utilizza cuDNN 6. https://github.com/tensorflow/tensorflow/releases .

Si prega di controllare la versione di tensorfow e la versione cuDNN se corrispondono insieme.

E per favore imposta l'ambiente del percorso per cuDNN, se ancora non funziona, controlla la risposta di @ Chris Han .


3

Ho pubblicato un approccio generale per la risoluzione del problema del "caricamento della DLL non riuscito" in questo articolo sui sistemi Windows. Per riferimento:

  1. Utilizzare l'analizzatore delle dipendenze DLL Dipendenze per analizzare <Your Python Dir>\Lib\site-packages\tensorflow\python\_pywrap_tensorflow_internal.pyde determinare l'esatta DLL mancante (indicata da un ?accanto alla DLL). Il percorso del file .pyd è basato sulla versione della GPU TensorFlow 1.9 che ho installato. Non sono sicuro che il nome e il percorso siano gli stessi in altre versioni di TensorFlow.

  2. Cerca le informazioni sulla DLL mancante e installa il pacchetto appropriato per risolvere il problema.


1
Mi piace questo approccio poiché mostra esplicitamente quali DLL mancano. Ho scoperto che tensorflow 1.11 sta cercando dll CUDA 9 e sembra non cercare librerie CUDA 10.
padmalcom

1
Grazie mille per il tuo suggerimento! Sulla mia macchina il problema era che tensorflow stava cercando DLL fornite con CUDA takeit v9, ma ho installato CUDA toolkit v10
Floris Devreese

Questo è incredibilmente utile. Si noti che è necessario selezionare All files (*.*)accanto al nome del file anziché solo exe files (*.exe, *.dll).
Cadoiz

2

Si può essere tentati di mantenere aperto Powershell / cmd su Windows. Ho trascorso un tempo ragionevole finché non ho deciso di chiudere e riaprire il mio Powershell solo per rendermi conto di aver fatto tutto bene.


2

Nel caso in cui si stia tentando di installare la GPU tensorflow in Windows, è possibile trovare questo tutorial semplice e interessante.

Nota: se stai usando PyCharm, ad esempio, devi cambiare l'interprete nell'ambiente conda creato.



1

Il problema era la libreria cuDNN per me. Sono stato in grado di eseguire il codice di prova dopo aver aggiunto la directory (possibilmente cartella bin) della DLL cuDNN (non il file LIB) nel PATH di Windows.

Per riferimento, ho installato TensorFlow dall'origine utilizzando PIP e il mio sistema operativo: Windows 7 e IDE: Visual Studio 2015.



1

I miei due centesimi:

Ho avuto un sacco di problemi cercando di installare correttamente il mio CUDA 8.0 su Windows 7. Avevo una versione precedente installata e volevo aggiornarla, quindi l'ho disinstallata e ho provato a installare CUDA 8.0 (per tensorflow 1.3). L'installazione non è riuscita ogni volta, ho provato a eseguire il downgrade a CUDA 7.5 e sono riuscito a installarlo ma ho avuto un sacco di problemi con tensorflow (simile al problema PATH descritto qui). Per farla breve: ciò che ha funzionato per me è stato:

1) Disinstalla OGNI componente NVIDIA (tranne il driver grafico dello schermo)

2) Scarica il toolkit CUDA 8.0 (e la patch) https://developer.nvidia.com/cuda-downloads

3) Controlla CheckSum MD5 (ho utilizzato MS https://www.microsoft.com/en-ca/download/confirmation.aspx?id=11533 ma qualsiasi andrebbe bene) per assicurarti che fosse OK (è successo più volte che il programma di installazione non è stato scaricato correttamente perché apparentemente il mio router WiFi).

4) Esegui il programma di installazione del toolkit CUDA come root

5) scarica cudnn 8.0 v6 e aggiungi la sua posizione alla variabile PATH https://developer.nvidia.com/rdp/cudnn-download

Spero che aiuti e salvi qualche mal di testa ...

NOTA: questo script mi ​​ha aiutato molto a eseguire il debug del problema! (Grazie signor) https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c


1

Cercherò di dare la soluzione che ha funzionato per me. Sembra che una serie diversa di problemi possa portare a questa situazione.

Il software a 32 bit funziona in sistemi operativi a 64 bit. Ho installato anaconda-3 (32 bit) nel mio sistema operativo a 64 bit. Funzionava perfettamente bene. Ho deciso di installare tensorflow sulla mia macchina e all'inizio non si installava. Stavo usando l'ambiente conda per installare tensorflow e ho ricevuto questo errore.

La soluzione è se stai utilizzando un sistema operativo a 64 bit, installa anaconda a 64 bit e se il sistema operativo a 32 bit è a 32 bit anaconda . Quindi segui la procedura standard menzionata nel sito Web di tensorflow per Windows (installazione di anaconda). Ciò ha permesso di installare tensorflow senza alcun problema.


1

la mia risposta è solo per gli utenti di Windows 10 poiché ho provato quanto segue su Windows 10. Estendendo alcune delle risposte sopra, suggerisco questo: Se stai usando anaconda, puoi evitare tutto e installare semplicemente anaconda-navigator usando il comando

conda install -c anaconda anaconda-navigator

Quindi puoi avviare il navigatore dal prompt dei comandi utilizzando il comando

anaconda-navigator

Eseguendo questo comando si ottiene una semplice gui in cui è possibile creare un ambiente virtuale, creare l'ambiente con python = 3.5.2 e installare il modulo tensorflow-gpu o tensorflow cercando il modulo nella casella di ricerca utilizzando gui, si occuperà anche di installare i file cuda corretti per te. Usare anaconda navigator è la soluzione più semplice.

Se non stai usando anaconda, fai attenzione a quanto segue

tensorflow-gpu 1.3 richiede python 3.5.2, cuda development kit 8.0 e cudaDNN 6.0, quindi durante l'installazione assicurati di eseguire il comando

pip install tensorflow-gpu==1.3

tensorflow-gpu 1.2.1 o inferiore richiede python 3.5.2, cuda development kit 8.0 e cudaDNN 5.1 quindi durante l'installazione assicurati di eseguire il comando

pip install tensorflow-gpu==1.2.1

Di seguito sono riportati i passaggi da seguire per entrambi i processi precedenti Impostazione delle variabili di percorso È necessario disporre delle seguenti variabili di sistema

CUDA_HOME = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"
CUDA_PATH = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"
CUDA_PATH_V8.0 = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"

Il tuo PATHTEXT deve includere ".DLL" insieme ad altre estensioni

".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.DLL"

Aggiungi anche quanto segue al tuo percorso

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\CUPTI\libx64;
C:\Windows\SysWOW64;
C:\Windows\System32        

Se ricevi errori, puoi scaricare il codice di esecuzione seguente da mrry, questo codice controllerà la tua configurazione e ti dirà se qualcosa non va https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c

Riferimenti: http://blog.nitishmutha.com/tensorflow/2017/01/22/TensorFlow-with-gpu-for-windows.html

Il riferimento sopra è molto utile. Si prega di commentare per miglioramenti a questa risposta. Spero che questo aiuti, grazie.


L'opzione anaconda suona alla grande, ma guardando anaconda.org/anaconda/tensorflow-gpu la versione di tensorflow-gpu per Windows sembra essere 1.1, un modo per ottenere la 1.3 tramite anaconda?
ftiaronsem

@ftiaronsem Non c'è modo di installare 1.3 usando anaconda-navigator se vuoi 1.3 quindi segui il link di riferimento e prendi nota di usare cudaDNN 6.0
M2skills

1

tensorflow 1.3 non supporta ancora cuda 9.0 . Degrado a cuda 8.0 , quindi funziona.


1

Per le persone che hanno trovato questo post nel 2019, questo errore potrebbe verificarsi anche perché la versione 3.7 di Python non supporta TensorFlow (vedere https://www.tensorflow.org/install/pip ). Quindi, controlla la versione di Python:

python --version

Nel caso in cui sia maggiore di 3,6, dovrebbe essere declassato a 3,6. Per Anaconda:

conda install python=3.6

Quindi, installa TensorFlow.

pip install tensorflow

A proposito, non avevo la versione GPU, quindi nel mio caso non c'erano problemi relativi a CUDA.


1
L'ho fatto e ho ancora lo stesso problema
RollRoll

Questo ha funzionato per me su due diversi computer utilizzati dai miei studenti. Abbiamo ancora avuto il problema dopo aver provato le soluzioni sopra. Nel tuo caso, potrebbe essere una situazione descritta sopra.
Catalin Stoean

0

Si è verificato lo stesso problema ( nel 09/09/2019 ) durante l'indagine [SO]: errore durante l'addestramento utilizzando l'API estimator in tensorflow .

Impostare:

Errore :

[cfati@CFATI-5510-0:e:\Work\Dev\StackOverflow\q057588589]> "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -c "import tensorflow as tf"
Traceback (most recent call last):
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: The specified module could not be found.


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/errors

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

Guardando il modulo "difettoso" (grazie a Dependency Walker ), si scopre che non è in sé che manca, ma alcune delle sue dipendenze (i file cu * _ 100 .dll ).

Img0

Controllare [SO]: Python Ctypes - il caricamento della dll genera OSError: [WinError 193]% 1 non è un'applicazione Win32 valida (risposta di @ CristiFati) (la sezione Conclusioni alla fine) per maggiori dettagli su questo tipo di errori.
Avevo una versione precedente di CUDA Toolkit ( 8 ) e, di conseguenza, il cu * _ 80 .dll .

L'aggiornamento a TensorFlow-GPU 1. 14 .0 ( "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -m pip install --upgrade tensorflow-gpu), ha reso l'errore un po 'più chiaro (e anche più breve):

[cfati@CFATI-5510-0:e:\Work\Dev\StackOverflow\q057588589]> "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -c "import tensorflow as tf"
Traceback (most recent call last):
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\platform\self_check.py", line 75, in preload_check
    ctypes.WinDLL(build_info.cudart_dll_name)
  File "c:\install\x64\python\python\03.07.03\Lib\ctypes\__init__.py", line 356, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\__init__.py", line 28, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in <module>
    self_check.preload_check()
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\platform\self_check.py", line 82, in preload_check
    % (build_info.cudart_dll_name, build_info.cuda_version_number))
ImportError: Could not find 'cudart64_100.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 10.0 from this URL: https://developer.nvidia.com/cuda-90-download-archive

Passaggi :

  • Disinstalla qualsiasi versione di CUDA Toolkit (opzionale)
  • Installa [nVidia.Developer]: CUDA Toolkit 10.0 Archive
    • Assicurati di installare la v10.0 (su cui è stata costruita questa versione di TensorFlow-GPU ). Ho installato la v10. 1 (che era l'ultima e anche la versione consigliata al momento della risposta) ei nomi .dll non corrispondevano ( cu * _10 1 .dll ). Dato che non volevo installare la v10.0 , ho creato dei link simbolici (con i nomi "corretti") ai file esistenti, e ha funzionato. Ma tieni presente che questo non è supportato !!! Potrebbero verificarsi comportamenti divertenti (inclusi arresti anomali) . Questa è una (zoppa) soluzione alternativa ( gainarie )
    • Inoltre, è necessaria una versione cuDNN compatibile (ovvero per una versione specifica del Toolkit CUDA ) ( [nVidia.Developer]: cuDNN Archive ). Per accedere all'URL di download , è richiesta l'iscrizione a nVidia

Dopo i passaggi precedenti e anche impostando i percorsi corretti, ha funzionato:

[cfati@CFATI-5510-0:e:\Work\Dev\StackOverflow\q057588589]> set PATH=%PATH%;%CUDA_PATH%\bin;f:\Install\x64\NVidia\GPU Computing Toolkit\cuDNN\7.6\bin

[cfati@CFATI-5510-0:e:\Work\Dev\StackOverflow\q057588589]> "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -c "import tensorflow;print(\"Success!!!\")"
Success!!!
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.