บน Windows TensorFlow รายงานข้อผิดพลาดอย่างใดอย่างหนึ่งหรือทั้งสองข้อต่อไปนี้หลังจากดำเนินการimport tensorflow
คำสั่ง:
No module named "_pywrap_tensorflow"
DLL load failed.
บน Windows TensorFlow รายงานข้อผิดพลาดอย่างใดอย่างหนึ่งหรือทั้งสองข้อต่อไปนี้หลังจากดำเนินการimport tensorflow
คำสั่ง:
No module named "_pywrap_tensorflow"
DLL load failed.
คำตอบ:
ปัญหาคือไลบรารี cuDNN สำหรับฉัน - ไม่ว่าด้วยเหตุผลใดก็ตาม cudnn-8.0-windows10-x64-v6.0 ไม่ทำงาน - ฉันใช้ cudnn-8.0-windows10-x64-v5.1 - ดีทั้งหมด!
การตั้งค่าของฉันทำงานกับ Win10 64 และ Nvidia GTX780M:
หากคุณใช้ Windows 32 อย่าลืมดาวน์โหลดไฟล์เวอร์ชัน 32 บิตที่กล่าวถึงข้างต้น
ในกรณีของฉันไฟล์ "cudnn64_6.dll" ในโฟลเดอร์ / bin ต้องเปลี่ยนชื่อเป็น "cudnn64_5.dll" เพื่อให้ข้อผิดพลาดหายไป ฉันใช้เวลาสองชั่วโมงในการคิดออกอย่างง่ายดายและฉันก็ทำตามคู่มือการติดตั้งอย่างเป็นทางการของจดหมาย นี่เป็นเรื่องจริงสำหรับการติดตั้งผ่าน pip (รองรับอย่างเป็นทางการ) และ conda (รองรับโดยชุมชน)
cudnn64_6.dll
cudnn64_5.dll
cudnn64_7.dll
ที่จะcudnn64_6.dll
ช่วยให้
ข้อผิดพลาดอย่างใดอย่างหนึ่งบ่งชี้ว่าระบบของคุณไม่ได้ติดตั้งMSVCP140.DLL
ซึ่ง TensorFlow ต้องการ
ในการแก้ไขข้อผิดพลาดนี้:
MSVCP140.DLL
อยู่ใน%PATH%
ตัวแปรของคุณหรือไม่MSVCP140.DLL
ไม่ได้อยู่ในของคุณ%PATH%
ให้ติดตั้ง
Visual C ++ 2015 redistributable (รุ่น x64) ซึ่งมี DLL นี้ฉันมี Win7 Pro 64 บิตบนซีพียู AMD ไม่มี GPU ผมก็ทำตามคำแนะนำภายใต้ "การติดตั้งกับ pip แม่" ที่https://www.tensorflow.org/install/install_windows ขั้นตอนการติดตั้งทำได้ดี แต่ความพยายามในการนำเข้าเทนเซอร์โฟลว์ทำให้เกิดความเสียหาย
ImportError: No module named '_pywrap_tensorflow_internal'
นี่ดูเหมือนจะเป็นหนึ่งในสถานการณ์เหล่านั้นที่สิ่งที่ไม่เกี่ยวข้องหลายอย่างอาจผิดพลาดได้ขึ้นอยู่กับการกำหนดค่าซึ่งทั้งหมดเรียงซ้อนกันไปสู่ข้อผิดพลาดเดียวกัน
ในกรณีของฉันการติดตั้ง MSVCP140.DLL คือคำตอบ
คุณมีMSVCP140.DLL
แล้วถ้า
C:\Windows\System32\MSVCP140.DLL
ANDC:\Windows\SysWOW64\MSVCP140.DLL
ไฟล์.ฉันติดตั้งด้วยตนเองซึ่งไม่จำเป็น (แจกจ่ายต่อได้ไม่ใช่ความยุ่งเหยิงในการพัฒนา Visual C ++ ทั้งหมดและไม่ใหญ่) ใช้ลิงก์ที่โพสต์ก่อนหน้านี้ในเธรดนี้เพื่อติดตั้ง: Visual C ++ 2015 แจกจ่ายต่อได้
นอกจากนี้ฉันขอแนะนำให้คุณแทนที่ไดเร็กทอรีการติดตั้งเริ่มต้นสำหรับ Python และวางไว้ที่ใดก็ได้ที่ไม่อยู่ภายใต้C:\Program Files
เนื่องจาก Windows พยายามเขียนป้องกันไฟล์ที่นั่นซึ่งทำให้เกิดปัญหาในภายหลัง
สำหรับเทนเซอร์โฟลว์กับ CPU เท่านั้น:
ฉันติดตั้งเทนเซอร์โฟลว์โดยใช้คำสั่ง:
pip3 install --upgrade tensorflow
สิ่งนี้ติดตั้งแล้วtensorflow 1.7
แต่ไม่สามารถนำเข้าเทนเซอร์โฟลว์จากการpython 3.6.5 amd64
ใช้:
import tensorflow as tf
ดังนั้นฉันจึงดาวน์เกรดเวอร์ชันเทนเซอร์โฟลว์จาก1.7
เป็น1.5
โดยใช้คำสั่งต่อไปนี้:
pip3 install tensorflow==1.5
1.5
นี้ถอนการติดตั้งรุ่นก่อนหน้านี้และติดตั้ง ตอนนี้ใช้งานได้แล้ว
ดูเหมือนว่าCPUของฉันไม่รองรับชุดคำสั่ง AVXที่จำเป็นในtensorflow 1.7
ฉันมีMSVCP140.DLL
ในโฟลเดอร์ระบบและ. DLL ในตัวแปร PATHEXT ใน Environment Variable
TensorFlow
ต้องการMSVCP140.DLL
ซึ่งอาจไม่ได้ติดตั้งในระบบของคุณ ในการแก้ปัญหาให้เปิด Terminal en พิมพ์หรือวางลิงค์นี้:
C:\> pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0-cp35-cp35m-win_amd64.whl
โปรดทราบว่านี่คือการติดตั้ง TensorFlow เวอร์ชัน CPU เท่านั้น
cuDNN ทำให้เกิดปัญหาของฉัน ตัวแปร PATH ใช้ไม่ได้สำหรับฉัน ฉันต้องคัดลอกไฟล์ในโฟลเดอร์ cuDNN ของฉันไปยังโครงสร้างโฟลเดอร์ CUDA 8.0 ที่เกี่ยวข้อง
สำหรับผู้ที่ใช้ฮาร์ดแวร์รุ่นเก่า:
คุณอาจได้รับข้อผิดพลาดเดียวกันนี้เนื่องจากมี CPU รุ่นเก่าที่ใช้ tensorflow-gpu 1.6
หากซีพียูของคุณสร้างขึ้นก่อนปี 2011 เวอร์ชันสูงสุดของคุณคือ tensorflow-gpu คือ 1.5
Tensorflow 1.6 ต้องการคำแนะนำ AVX บน cpu ของคุณ ตรวจสอบแล้วที่นี่: เอกสาร Tensorflow Github
ซีพียูที่เปิดใช้งาน AVX: ซีพียู Wiki AVX
สิ่งที่ฉันทำในสภาพแวดล้อม conda สำหรับเทนเซอร์โฟลว์:
pip install --ignore-installed --upgrade tensorflow-gpu==1.5
ปัญหาสำหรับฉันคือไลบรารี cuDNN ซึ่งไม่ตรงกับความต้องการของกราฟิกการ์ด ฉันดาวน์โหลดเวอร์ชัน 6.0 แต่สำหรับ GTX980ti ของฉัน แต่ความสามารถในการประมวลผลที่แนะนำบนเว็บไซต์ nvidia คือ 5.1 ( http://developer.nvidia.com/cuda-gpus ) ดังนั้นฉันจึงดาวน์โหลด 5.1 และแทนที่เวอร์ชัน 6.0 และทันทีที่ฉัน ' เสร็จแล้วมันก็เริ่มทำงาน
หลังจากลองผิดลองถูกและตรวจสอบให้แน่ใจว่าVC ++ 2015 Redistributable , cuDNN DLL และการอ้างอิงอื่น ๆ ทั้งหมดสามารถเข้าถึงได้จาก PATH ดูเหมือนว่าTensorflow GPU จะใช้งานได้กับ Python เท่านั้น3.5.2
(ณ ที่เขียนนี้)
ดังนั้นหากคุณใช้ Anaconda
conda create -n tensorflow-gpu python=3.5.2
activate tensorflow-gpu
pip install tensorflow-gpu
จากนั้นเปิดตัวแปล python และตรวจสอบ
>>> import tensorflow as tf
>>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
พบอุปกรณ์ 0 ที่มีคุณสมบัติ:
ชื่อ: GeForce 940M
major: 5 minor: 0
memoryClockRate (GHz) 1.176
pciBusID 0000: 06
: 00.0 หน่วยความจำทั้งหมด: 2.00GiB
หน่วยความจำว่าง: 1.66GiB
เครดิต: คำแนะนำที่เป็นระเบียบนี้
สำหรับแต่ละเวอร์ชันของ Tensorflow ต้องใช้ CuDnn เวอร์ชันที่แตกต่างกัน ในwww.tensorflow.orgพวกเขาไม่ได้กล่าวถึงเรื่องนั้นในคู่มือการติดตั้ง!
ฉันใช้กรณี tensorflow รุ่น 1.3 ซึ่งใช้ cuDNN 6. https://github.com/tensorflow/tensorflow/releases
โปรดตรวจสอบเวอร์ชัน tenorfow และเวอร์ชัน cuDNN ของคุณว่าตรงกันหรือไม่
และโปรดสภาพแวดล้อมเส้นทางการตั้งค่าสำหรับ cuDNN ถ้ามันยังไม่ทำงานโปรดตรวจสอบคำตอบจาก @ คริสฮัน
ฉันโพสต์วิธีการทั่วไปสำหรับการแก้ไขปัญหา "การโหลด DLL ล้มเหลว" ในโพสต์นี้ในระบบ Windows สำหรับการอ้างอิง:
ใช้Dependenciesตัววิเคราะห์การพึ่งพา DLL เพื่อวิเคราะห์
<Your Python Dir>\Lib\site-packages\tensorflow\python\_pywrap_tensorflow_internal.pyd
และกำหนด DLL ที่ขาดหายไปอย่างแน่นอน (ระบุโดย?
ข้าง DLL) เส้นทางของไฟล์. pyd ขึ้นอยู่กับ TensorFlow 1.9 GPU เวอร์ชันที่ฉันติดตั้ง ฉันไม่แน่ใจว่าชื่อและเส้นทางเหมือนกันใน TensorFlow เวอร์ชันอื่นหรือไม่ค้นหาข้อมูลของ DLL ที่หายไปและติดตั้งแพ็คเกจที่เหมาะสมเพื่อแก้ไขปัญหา
All files (*.*)
exe files (*.exe, *.dll)
อาจถูกล่อลวงให้เปิด Powershell / cmd บน Windows ฉันใช้เวลาพอสมควรจนตัดสินใจปิดและเปิด Powershell อีกครั้งเพื่อให้รู้ว่าฉันทำทุกอย่างถูกต้องแล้ว
ในกรณีที่คุณพยายามติดตั้ง tensorflow GPU ใน Windows คุณจะพบสิ่งนี้กวดวิชาที่น่าสนใจได้ง่าย
หมายเหตุ: หากคุณใช้ PyCharm ตัวอย่างเช่นคุณต้องเปลี่ยนล่ามเป็นสภาพแวดล้อม conda ที่สร้างขึ้น
ไม่พบ dll ติดตั้ง Visual C ++ 2015 ที่แจกจ่ายต่อได้เพื่อแก้ไข
ปัญหาคือห้องสมุด cuDNN สำหรับฉัน ฉันสามารถเรียกใช้รหัสทดสอบได้หลังจากเพิ่มไดเร็กทอรี (อาจเป็นโฟลเดอร์ bin) ของ cuDNN DLL (ไม่ใช่ไฟล์ LIB) ใน Windows PATH
สำหรับการอ้างอิงฉันติดตั้ง TensorFlow จากแหล่งที่มาโดยใช้ PIP และระบบปฏิบัติการของฉัน: Windows 7 และ IDE: Visual Studio 2015
ด้วย TensorFlow รุ่น 1.3.0 คุณต้องใช้ Cudnn 6.0 แทน Cudnn 5.0 เนื่องจาก Cudnn 5.0 ให้ข้อผิดพลาดนี้ อย่าลืมเพิ่มตัวแปรเส้นทางไปยัง Cudnn 6.0 ด้วย cudnn64_6.dll Tensorflow ของคุณจะทำงานได้ดี อ่านลิงค์ด้านล่าง https://github.com/tensorflow/tensorflow/blob/master/RELEASE.md#release-130
สองเซ็นต์ของฉัน:
ฉันมีปัญหามากมายในการพยายามติดตั้ง CUDA 8.0 อย่างถูกต้องบน Windows 7 ฉันติดตั้งเวอร์ชันก่อนหน้าและต้องการอัปเกรดดังนั้นฉันจึงถอนการติดตั้งและพยายามติดตั้ง CUDA 8.0 (สำหรับ tensorflow 1.3) การติดตั้งล้มเหลวทุกครั้งฉันพยายามดาวน์เกรดเป็น CUDA 7.5 และสามารถติดตั้งได้ แต่มีปัญหามากมายเกี่ยวกับเทนเซอร์โฟลว์ (คล้ายกับปัญหา PATH ที่อธิบายไว้ที่นี่) เรื่องสั้นสั้น: สิ่งที่ได้ผลสำหรับฉันคือ:
1) ถอนการติดตั้งส่วนประกอบ NVIDIA ทุกตัว (ยกเว้นไดรเวอร์กราฟิกที่แสดง)
2) ดาวน์โหลด CUDA toolkit 8.0 (และแพทช์) https://developer.nvidia.com/cuda-downloads
3) ตรวจสอบ CheckSum MD5 (ฉันใช้ MS https://www.microsoft.com/en-ca/download/confirmation.aspx?id=11533แต่จะทำอะไรก็ได้) เพื่อให้แน่ใจว่าใช้ได้ (เกิดขึ้นหลายครั้ง โปรแกรมติดตั้งไม่ได้ทำการโหลดอย่างถูกต้องเนื่องจากเราเตอร์ WiFi ของฉันเห็นได้ชัด)
4) เรียกใช้ตัวติดตั้งชุดเครื่องมือ CUDA ในฐานะรูท
5) ดาวน์โหลด cudnn 8.0 v6 และเพิ่มตำแหน่งลงในตัวแปร PATH https://developer.nvidia.com/rdp/cudnn-download
หวังว่าจะช่วยและประหยัดอาการปวดหัวได้บ้าง ...
หมายเหตุ: สคริปต์นี้ช่วยฉันได้มากในการแก้ไขปัญหา! (ขอบคุณ mrry) https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c
ฉันจะพยายามให้วิธีแก้ปัญหาที่ได้ผลสำหรับฉัน ดูเหมือนว่าปัญหาที่แตกต่างกันอาจนำไปสู่สถานการณ์นี้
ซอฟต์แวร์ 32 บิตทำงานในระบบปฏิบัติการ 64 บิต ฉันติดตั้ง anaconda-3 (32 บิต) ในระบบปฏิบัติการ 64 บิตของฉัน มันทำงานได้ดีอย่างสมบูรณ์ ฉันตัดสินใจติดตั้งเทนเซอร์โฟลว์ในเครื่องของฉันและมันจะไม่ติดตั้งในตอนแรก ฉันใช้สภาพแวดล้อม conda เพื่อติดตั้งเทนเซอร์โฟลว์และได้รับข้อผิดพลาดนี้
การแก้ปัญหาคือถ้าคุณกำลังเรียก 64 bit OS, ติดตั้งงู 64 บิตและถ้า 32 bit OS แล้วงู จากนั้นทำตามขั้นตอนมาตรฐานที่กล่าวถึงในเว็บไซต์ tensorflow สำหรับ windows (การติดตั้ง anaconda) สิ่งนี้ทำให้สามารถติดตั้งเทนเซอร์โฟลว์ได้โดยไม่มีปัญหา
คำตอบของฉันคือสำหรับผู้ใช้ windows 10 เท่านั้นเมื่อฉันได้ลองทำสิ่งต่อไปนี้บน windows 10 การขยายคำตอบบางส่วนข้างต้นฉันขอแนะนำสิ่งนี้: หากคุณใช้ anaconda คุณสามารถหลีกเลี่ยงทุกสิ่งและเพียงแค่ติดตั้งanaconda-navigatorโดยใช้คำสั่ง
conda install -c anaconda anaconda-navigator
จากนั้นคุณสามารถเรียกใช้เนวิเกเตอร์จากพรอมต์คำสั่งโดยใช้คำสั่ง
anaconda-navigator
ในการเรียกใช้คำสั่งนี้คุณจะได้รับ gui ง่ายๆที่คุณสามารถสร้างสภาพแวดล้อมเสมือนสร้างสภาพแวดล้อมด้วย python = 3.5.2 และติดตั้งโมดูล tensorflow-gpu หรือ tensorflow โดยค้นหาโมดูลในช่องค้นหาโดยใช้ gui มันจะดูแลด้วย ของการติดตั้งไฟล์ cuda ที่ถูกต้องสำหรับคุณ การใช้อนาคอนดาเนวิเกเตอร์เป็นวิธีที่ง่ายที่สุด
หากคุณไม่ได้ใช้งูใหญ่ให้ดูแลสิ่งต่อไปนี้
tensorflow-gpu 1.3 ต้องใช้ python 3.5.2, cuda development kit 8.0 และ cudaDNN 6.0 ดังนั้นเมื่อติดตั้งตรวจสอบให้แน่ใจว่าคุณรันคำสั่ง
pip install tensorflow-gpu==1.3
tensorflow-gpu 1.2.1 หรือน้อยกว่าต้องใช้ python 3.5.2, cuda development kit 8.0 และ cudaDNN 5.1 ดังนั้นเมื่อทำการติดตั้งตรวจสอบให้แน่ใจว่าคุณรันคำสั่ง
pip install tensorflow-gpu==1.2.1
ด้านล่างนี้เป็นขั้นตอนที่คุณต้องปฏิบัติตามสำหรับทั้งสองกระบวนการข้างต้นการตั้งค่าตัวแปรเส้นทางของคุณคุณต้องมีตัวแปรระบบดังต่อไปนี้
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"
PATHTEXT ของคุณต้องมี ".DLL" พร้อมกับส่วนขยายอื่น ๆ
".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.DLL"
เพิ่มสิ่งต่อไปนี้ในเส้นทางของคุณด้วย
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
หากคุณได้รับข้อผิดพลาดคุณสามารถดาวน์โหลดรันโค้ดด้านล่างโดย mrry รหัสนี้จะตรวจสอบการตั้งค่าของคุณและบอกคุณว่ามีบางอย่างผิดปกติหรือไม่ https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c
อ้างอิง: http://blog.nitishmutha.com/tensorflow/2017/01/22/TensorFlow-with-gpu-for-windows.html
การอ้างอิงข้างต้นมีประโยชน์มาก โปรดแสดงความคิดเห็นเพื่อปรับปรุงคำตอบนี้ หวังว่านี่จะช่วยได้ขอบคุณ
tensorflow 1.3 ไม่สนับสนุนCUDA 9.0เลย ฉันลดระดับเป็นcuda 8.0แล้วมันใช้งานได้
สำหรับผู้ที่พบโพสต์นี้ในปี 2019 ข้อผิดพลาดนี้อาจเกิดขึ้นได้เนื่องจาก Python เวอร์ชัน 3.7 ไม่รองรับ TensorFlow (ดูhttps://www.tensorflow.org/install/pip ) ดังนั้นตรวจสอบเวอร์ชัน Python:
python --version
ในกรณีที่มีขนาดใหญ่กว่า 3.6 ควรลดระดับเป็น 3.6 สำหรับอนาคอนดา:
conda install python=3.6
จากนั้นติดตั้ง TensorFlow
pip install tensorflow
แต่ฉันไม่มีเวอร์ชั่น GPU ดังนั้นจึงไม่มีปัญหาที่เกี่ยวข้องกับ CUDA ในกรณีของฉัน
วิ่งเข้าไปในปัญหาเดียวกัน ( ใน2019/09/09 ) ขณะที่การสืบสวน[SO]: ข้อผิดพลาดในขณะที่การฝึกอบรมโดยใช้ API ประมาณการใน tensorflow
ติดตั้ง:
ข้อผิดพลาด :
[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.
เมื่อดูที่โมดูล "ผิดพลาด" (ขอบคุณDependency Walker ) ปรากฎว่าไม่ใช่ตัวมันเองที่หายไป แต่มีการอ้างอิงบางส่วน (ไฟล์cu * _ 100 .dll )
ตรวจสอบ[SO]: Python Ctypes - การโหลด dll พ่น OSError: [WinError 193]% 1 ไม่ใช่แอปพลิเคชัน Win32 ที่ถูกต้อง (คำตอบของ @ CristiFati) ( ส่วนสรุปในตอนท้าย) สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับข้อผิดพลาดประเภทนี้
ฉันมีCUDA Toolkitเวอร์ชันเก่า ( 8 ) และด้วยเหตุนี้cu * _ 80 .dllไฟล์
การอัพเกรดเป็นTensorFlow-GPU 1. 14 .0 ( "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -m pip install --upgrade tensorflow-gpu
) ทำให้ข้อผิดพลาดชัดเจนขึ้นเล็กน้อย (และสั้นลงด้วย):
[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
ขั้นตอน :
หลังจากขั้นตอนข้างต้นและการตั้งค่าเส้นทางที่ถูกต้องมันใช้งานได้:
[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!!!