O problema era a biblioteca cuDNN para mim - por algum motivo cudnn-8.0-windows10-x64-v6.0 NÃO estava funcionando - usei cudnn-8.0-windows10-x64-v5.1 - TUDO BOM!
Minha configuração trabalhando com Win10 64 e Nvidia GTX780M:
- Certifique-se de ter a lib MSVCP140.DLL verificando seu sistema / caminho - se não, pegue aqui
- Execute o instalador do Windows para python 3.5.3-amd64 a partir daqui - NÃO tente versões mais recentes, pois provavelmente não funcionarão
- Obtenha o cuDNN v5.1 para CUDA 8.0 a partir daqui - coloque-o na pasta de usuários ou em outro local conhecido (você precisará disso no seu caminho)
- Obtenha CUDA 8.0 x86_64 aqui
- Defina vars PATH conforme esperado para apontar para as libs cuDNN e python (o caminho do python deve ser adicionado durante a instalação do python)
- Certifique-se de que ".DLL" está incluído em sua variável PATHEXT
- Se você estiver usando tensorflow 1.3, então você deseja usar cudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705
Se você executar o Windows 32, certifique-se de obter as versões de 32 bits dos arquivos mencionados acima.
No meu caso, o arquivo "cudnn64_6.dll" na pasta / bin teve que ser renomeado para "cudnn64_5.dll" para que o erro desaparecesse. Eu facilmente gastei duas horas para descobrir isso e segui o guia de instalação oficial ao pé da letra. Isso é verdade para a instalação via pip (com suporte oficial) e conda (com suporte da comunidade).
fonte
cudnn64_6.dll
não serácudnn64_5.dll
.cudnn64_7.dll
decudnn64_6.dll
ajuda.Qualquer um dos erros indica que seu sistema não foi instalado
MSVCP140.DLL
, o que o TensorFlow exige.Para corrigir esse erro:
MSVCP140.DLL
está em sua%PATH%
variável.MSVCP140.DLL
não estiver em seu%PATH%
, instale o Visual C ++ 2015 redistribuível (versão x64), que contém essa DLL.fonte
Para tensorflow com CPU apenas:
Eu instalei o Tensorflow usando o comando:
Este instalado,
tensorflow 1.7
mas não foi possível importar o tensorflow de dentro
python 3.6.5 amd64
usando:import tensorflow as tf
Então, eu rebaixei a versão do tensorflow de
1.7
para1.5
usar o seguinte comando:pip3 install tensorflow==1.5
Isso desinstalou a versão anterior e instalou
1.5
. Agora funciona.Parece que minha CPU não suporta o conjunto de instruções AVX que é necessário em
tensorflow 1.7
Eu tinha
MSVCP140.DLL
nas pastas do sistema e .DLL na variável PATHEXT na Variável de Ambiente.fonte
Tenho Win7 Pro de 64 bits na CPU AMD, sem GPU. Eu estava seguindo as instruções em "Instalando com pip nativo" em https://www.tensorflow.org/install/install_windows . A etapa de instalação correu bem, mas a tentativa de importar tensorflow produziu o infame:
ImportError: No module named '_pywrap_tensorflow_internal'
Esta parece ser uma daquelas situações em que muitas coisas não relacionadas podem dar errado, dependendo da configuração, todas em cascata para o mesmo erro.
No meu caso, instalar o MSVCP140.DLL foi a resposta.
Você
MSVCP140.DLL
já seC:\Windows\System32\MSVCP140.DLL
EC:\Windows\SysWOW64\MSVCP140.DLL
.Eu instalei manualmente, o que era desnecessário (o redistribuível não é toda a bagunça de desenvolvimento do Visual C ++ e não é grande). Use o link postado anteriormente neste tópico para instalá-lo: Visual C ++ 2015 redistributable .
Além disso, recomendo que você substitua o diretório de instalação padrão do Python e o coloque em qualquer lugar que não seja
C:\Program Files
, porque o Windows tenta proteger os arquivos contra gravação lá, o que causa problemas posteriormente.fonte
TensorFlow
requerMSVCP140.DLL
, que pode não estar instalado em seu sistema. Para resolver o problema, abra o terminal e digite ou cole este link:C:\> pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0-cp35-cp35m-win_amd64.whl
Observe que isso é para instalar a versão somente CPU do TensorFlow.
fonte
cuDNN causa meu problema. A variável PATH não funciona para mim. Tenho que copiar os arquivos das minhas pastas cuDNN para a estrutura de pastas CUDA 8.0 respeitosa.
fonte
Para aqueles que usam hardware mais antigo:
Você pode obter este mesmo erro por ter uma CPU mais antiga usando tensorflow-gpu 1.6.
Se sua cpu foi feita antes de 2011, sua versão max tensorflow-gpu é 1.5.
O Tensorflow 1.6 requer instruções AVX em sua cpu. Verificado aqui: documentos do Tensorflow Github
CPUs habilitadas para AVX: CPUs Wiki AVX
O que eu fiz em meu ambiente conda para tensorflow:
pip install --ignore-installed --upgrade tensorflow-gpu==1.5
fonte
O problema para mim era a biblioteca cuDNN que não correspondia aos requisitos da placa gráfica. Eu baixei a versão 6.0, mas para minha GTX980ti, mas o recurso de computação recomendado no site da nvidia era 5.1 ( http://developer.nvidia.com/cuda-gpus ), então baixei 5.1 e substituí a versão 6.0 e assim que eu ' fiz isso, começou a funcionar.
fonte
Depois de muitas tentativas e erros, e certificando-se de que VC ++ 2015 Redistributable , cuDNN DLL e todas as outras dependências estão acessíveis a partir do PATH, parece que o Tensorflow GPU funciona apenas com Python
3.5.2
(no momento desta escrita)Então, se você estiver usando
Anaconda
conda create -n tensorflow-gpu python=3.5.2
activate tensorflow-gpu
pip install tensorflow-gpu
Em seguida, abra o interpretador python e verifique
>>> import tensorflow as tf >>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
Créditos: este guia bacana
fonte
Para cada versão do Tensorflow, ele requer uma versão diferente do CuDnn. Em www.tensorflow.org , eles não mencionaram isso no guia de instalação!
Meu caso usa o tensorflow versão 1.3 que usa cuDNN 6. https://github.com/tensorflow/tensorflow/releases .
Por favor, verifique sua versão tensorfow e a versão cuDNN se elas combinam.
E defina o ambiente do caminho para cuDNN, se ainda não funcionar, verifique a resposta de @Christ Han .
fonte
Publiquei uma abordagem geral para solucionar o problema de "falha no carregamento de DLL" neste artigo em sistemas Windows. Para referência:
fonte
All files (*.*)
próximo ao nome do arquivo em vez de apenasexe files (*.exe, *.dll)
.Alguém pode ficar tentado a manter o Powershell / cmd aberto no Windows. Passei um tempo razoável até decidir fechar e reabrir meu Powershell apenas para perceber que fiz tudo certo.
fonte
Caso você esteja tentando instalar a GPU tensorflow no Windows, você pode encontrar este tutorial fácil e interessante.
Nota: Se você estiver usando PyCharm, por exemplo, você deve alterar o interpretador para o ambiente conda criado.
fonte
Dll não encontrado. Instale o Visual C ++ 2015 redistribuível para corrigir.
fonte
O problema era a biblioteca cuDNN para mim. Consegui executar o código de teste após adicionar o diretório (possivelmente pasta bin) da DLL cuDNN (não o arquivo LIB) no PATH do Windows.
Para referência, instalei o TensorFlow da fonte usando PIP e meu SO: Windows 7 e IDE: Visual Studio 2015.
fonte
Com o TensorFlow versão 1.3.0, você precisa usar o Cudnn 6.0 em vez do Cudnn 5.0, pois o Cudnn 5.0 está apresentando esse erro. Não se esqueça de adicionar a variável de caminho ao Cudnn 6.0. Com o cudnn64_6.dll seu Tensorflow funcionará bem. Leia o link abaixo. https://github.com/tensorflow/tensorflow/blob/master/RELEASE.md#release-130
fonte
Meus dois centavos:
Tive muitos problemas ao tentar instalar o CUDA 8.0 corretamente no Windows 7. Eu tinha uma versão anterior instalada e queria atualizar, então desinstalei e tentei instalar o CUDA 8.0 (para tensorflow 1.3). A instalação falhou todas as vezes, tentei fazer o downgrade para CUDA 7.5 e consegui instalá-lo, mas tive muitos problemas com o tensorflow (semelhante ao problema PATH descrito aqui). Resumindo: o que funcionou para mim foi:
1) Desinstale CADA componente NVIDIA (exceto o driver de vídeo)
2) Baixe o kit de ferramentas CUDA 8.0 (e o patch) https://developer.nvidia.com/cuda-downloads
3) Verifique o CheckSum MD5 (usei o MS https://www.microsoft.com/en-ca/download/confirmation.aspx?id=11533 mas qualquer um serviria) para ter certeza de que estavam OK (aconteceu várias vezes que o instalador não foi baixado corretamente porque meu roteador WiFi aparentemente).
4) Execute o instalador do kit de ferramentas CUDA como root
5) baixe o cudnn 8.0 v6 e adicione sua localização à variável PATH https://developer.nvidia.com/rdp/cudnn-download
Espero que ajude e evite algumas dores de cabeça ...
NOTA: Este script me ajudou muito a depurar o problema! (Obrigado, mrry) https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c
fonte
Vou tentar dar a solução que funcionou para mim. Parece que diferentes conjuntos de problemas podem levar a essa situação.
O software de 32 bits funciona em sistemas operacionais de 64 bits. Instalei o anaconda-3 (32 bits) em meu SO de 64 bits. Estava funcionando perfeitamente bem. Decidi instalar o tensorflow na minha máquina e ele não iria instalar a princípio. Eu estava usando o ambiente conda para instalar o Tensorflow e recebi este erro.
A solução é se você estiver executando um sistema operacional de 64 bits, instale o anaconda de 64 bits e se você estiver executando um sistema operacional de 32 bits, então o anaconda de 32 bits . Então siga o procedimento padrão mencionado no site do tensorflow para windows (instalação do anaconda). Isso tornou possível instalar o tensorflow sem nenhum problema.
fonte
minha resposta é apenas para usuários do Windows 10, pois tentei o seguinte no Windows 10. Estendendo algumas das respostas acima, sugiro o seguinte: Se você estiver usando o anaconda, pode evitar tudo e simplesmente instalar o anaconda-navigator usando o comando
Então você pode lançar o navegador a partir do prompt de comando usando o comando
Ao executar este comando, você obtém um gui simples onde você pode criar um ambiente virtual, criar o ambiente com python = 3.5.2 e instalar o módulo tensorflow-gpu ou tensorflow pesquisando o módulo na caixa de pesquisa usando gui, isso também tomará cuidado de instalar arquivos cuda corretos para você. Usar o navegador anaconda é a solução mais simples.
Se você não estiver usando o anaconda, tome cuidado com o seguinte
tensorflow-gpu 1.3 requer python 3.5.2, cuda development kit 8.0 e cudaDNN 6.0, portanto, ao instalar certifique-se de executar o comando
pip install tensorflow-gpu==1.3
tensorflow-gpu 1.2.1 ou menos requer python 3.5.2, cuda development kit 8.0 e cudaDNN 5.1, portanto, ao instalar certifique-se de executar o comando
pip install tensorflow-gpu==1.2.1
Abaixo estão as etapas que você precisa seguir para ambos os processos acima Configurando suas variáveis de caminho Você deve ter as seguintes variáveis de 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"
Seu PATHTEXT deve incluir ".DLL" junto com outras extensões
".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.DLL"
Adicione também o seguinte ao seu caminho
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 estiver recebendo erros, você pode baixar o código abaixo por mrry, este código verificará sua configuração e informará se algo está errado https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c
Referências : http://blog.nitishmutha.com/tensorflow/2017/01/22/TensorFlow-with-gpu-for-windows.html
A referência acima é muito útil. Por favor, comente para melhorias a esta resposta. Espero que isso ajude, obrigado.
fonte
tensorflow 1.3 ainda não suporta cuda 9.0 . Eu degradado para cuda 8.0 , então funciona.
fonte
Para as pessoas que encontraram esta postagem em 2019, esse erro também pode ocorrer porque o Python versão 3.7 não tem suporte para TensorFlow (consulte https://www.tensorflow.org/install/pip ). Portanto, verifique a versão do Python:
Caso seja maior que 3,6, deve ser rebaixado para 3,6. Para Anaconda:
conda install python=3.6
Em seguida, instale o TensorFlow.
A propósito, eu não tinha a versão da GPU, então não houve problemas relacionados ao CUDA no meu caso.
fonte
Encontrou o mesmo problema ( em 09/09/2019 ) ao investigar [SO]: Erro ao treinar usando a API do estimador em tensorflow .
Configuração:
Erro :
Olhando para o módulo "defeituoso" (graças ao Dependency Walker ), não é ele mesmo que está faltando, mas algumas de suas dependências (os arquivos cu * _ 100 .dll ).
Verifique [SO]: Python Ctypes - carregando dll lança OSError: [WinError 193]% 1 não é um aplicativo Win32 válido (resposta de @CristiFati) (a seção Conclusões no final) para obter mais detalhes sobre esse tipo de erro.
Eu tinha uma versão mais antiga do CUDA Toolkit ( 8 ) e, como consequência, os arquivos cu * _ 80 .dll .
Atualizar para TensorFlow-GPU 1. 14 .0 (
"e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -m pip install --upgrade tensorflow-gpu
), tornou o erro um pouco mais claro (e também mais curto):Passos :
Após as etapas acima, e também definindo os caminhos corretos, funcionou:
fonte