Tensorflow: Kompatibilitas Python 3.7

Dibuat pada 3 Jul 2018  ·  80Komentar  ·  Sumber: tensorflow/tensorflow

Saya yakin pengembang bekerja keras untuk mengejar ketinggalan dengan Python 3.7.
Apakah ada timelinenya?

pip3 install tensorflow - tampaknya tidak berfungsi, membangun dari sumber:

Platform dan Distribusi OS: Mac OS X 10.13.5
Python: Python 3.7.0 (Homebrew)
TensorFlow diinstal dari: sumber (https://github.com/tensorflow/tensorflow.git)
Versi TensorFlow: TensorFlow 1.9.0-rc2
Versi bazel:

Build label: 0.15.0-homebrew
Build target: bazel-out/darwin-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Tue Jun 26 12:42:27 2018 (1530016947)
Build timestamp: 1530016947
Build timestamp as int: 1530016947

Versi CUDA/cuDNN: Tidak ada
Model dan memori GPU: Tidak ada
Perintah yang tepat untuk mereproduksi:
bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package

Starting local Bazel server and connecting to it...
...........................
WARNING: /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/BUILD:1992:1: in srcs attribute of cc_library rule @grpc//:grpc_nanopb: please do not import '@grpc//third_party/nanopb:pb_common.c' directly. You should either move the file to this package or depend on an appropriate rule there. Since this rule was created by the macro 'grpc_generate_one_off_targets', the error might have been caused by the macro implementation in /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/bazel/grpc_build_system.bzl:172:12
WARNING: /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/BUILD:1992:1: in srcs attribute of cc_library rule @grpc//:grpc_nanopb: please do not import '@grpc//third_party/nanopb:pb_decode.c' directly. You should either move the file to this package or depend on an appropriate rule there. Since this rule was created by the macro 'grpc_generate_one_off_targets', the error might have been caused by the macro implementation in /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/bazel/grpc_build_system.bzl:172:12
WARNING: /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/BUILD:1992:1: in srcs attribute of cc_library rule @grpc//:grpc_nanopb: please do not import '@grpc//third_party/nanopb:pb_encode.c' directly. You should either move the file to this package or depend on an appropriate rule there. Since this rule was created by the macro 'grpc_generate_one_off_targets', the error might have been caused by the macro implementation in /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/bazel/grpc_build_system.bzl:172:12
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/learn/BUILD:17:1: in py_library rule //tensorflow/contrib/learn:learn: target '//tensorflow/contrib/learn:learn' depends on deprecated target '//tensorflow/contrib/session_bundle:exporter': No longer supported. Switch to SavedModel immediately.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/learn/BUILD:17:1: in py_library rule //tensorflow/contrib/learn:learn: target '//tensorflow/contrib/learn:learn' depends on deprecated target '//tensorflow/contrib/session_bundle:gc': No longer supported. Switch to SavedModel immediately.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/timeseries/python/timeseries/BUILD:356:1: in py_library rule //tensorflow/contrib/timeseries/python/timeseries:ar_model: target '//tensorflow/contrib/timeseries/python/timeseries:ar_model' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/timeseries/python/timeseries/state_space_models/BUILD:73:1: in py_library rule //tensorflow/contrib/timeseries/python/timeseries/state_space_models:kalman_filter: target '//tensorflow/contrib/timeseries/python/timeseries/state_space_models:kalman_filter' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/timeseries/python/timeseries/state_space_models/BUILD:230:1: in py_library rule //tensorflow/contrib/timeseries/python/timeseries/state_space_models:filtering_postprocessor: target '//tensorflow/contrib/timeseries/python/timeseries/state_space_models:filtering_postprocessor' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/bayesflow/BUILD:17:1: in py_library rule //tensorflow/contrib/bayesflow:bayesflow_py: target '//tensorflow/contrib/bayesflow:bayesflow_py' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/seq2seq/BUILD:23:1: in py_library rule //tensorflow/contrib/seq2seq:seq2seq_py: target '//tensorflow/contrib/seq2seq:seq2seq_py' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/kfac/python/ops/BUILD:80:1: in py_library rule //tensorflow/contrib/kfac/python/ops:loss_functions: target '//tensorflow/contrib/kfac/python/ops:loss_functions' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/BUILD:14:1: in py_library rule //tensorflow/contrib:contrib_py: target '//tensorflow/contrib:contrib_py' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
INFO: Analysed target //tensorflow/tools/pip_package:build_pip_package (303 packages loaded).
INFO: Found 1 target...
INFO: From Linking external/grpc/libgrpc_base_c.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(endpoint_pair_uv.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(endpoint_pair_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(ev_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(fork_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(gethostname_fallback.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(gethostname_host_name_max.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(iocp_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(iomgr_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(pollset_set_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(pollset_uv.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(pollset_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(resolve_address_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(socket_utils_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(socket_utils_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(socket_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_client_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_server_utils_posix_noifaddrs.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_server_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_uv.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(timer_uv.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(unix_sockets_posix_noop.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(wakeup_fd_eventfd.o) has no symbols
INFO: From Linking external/grpc/libalts_util.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libalts_util.a(check_gcp_environment_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libalts_util.a(check_gcp_environment_windows.o) has no symbols
INFO: From Linking external/grpc/libtsi.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libtsi.a(ssl_session_openssl.o) has no symbols
INFO: From Linking external/grpc/libgrpc++_base.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc++_base.a(rpc_method.o) has no symbols
INFO: From Linking external/grpc/libgpr_base.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(cpu_iphone.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(cpu_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(cpu_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(env_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(env_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(log_android.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(log_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(log_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(string_util_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(string_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(sync_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(time_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(tls_pthread.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(tmpfile_msys.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(tmpfile_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(wrap_memcpy.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(thd_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(stap_timers.o) has no symbols
INFO: From Linking external/grpc/third_party/address_sorting/libaddress_sorting.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/third_party/address_sorting/libaddress_sorting.a(address_sorting_windows.o) has no symbols
ERROR: /Users/zardoz/Projects/tensorflow/tensorflow/python/BUILD:5315:1: Executing genrule //tensorflow/python:framework/fast_tensor_util.pyx_cython_translation failed (Exit 1)
Traceback (most recent call last):
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/execroot/org_tensorflow/bazel-out/host/bin/external/cython/cython_binary.runfiles/cython/cython.py", line 17, in <module>
    main(command_line = 1)
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 720, in main
    result = compile(sources, options)
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 695, in compile
    return compile_multiple(source, options)
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 666, in compile_multiple
    context = options.create_context()
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 590, in create_context
    self.cplus, self.language_level, options=self)
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 75, in __init__
    from . import Builtin, CythonScope
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/CythonScope.py", line 5, in <module>
    from .UtilityCode import CythonUtilityCode
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/UtilityCode.py", line 3, in <module>
    from .TreeFragment import parse_from_strings, StringParseContext
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/TreeFragment.py", line 17, in <module>
    from .Visitor import VisitorTransform
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Visitor.py", line 15, in <module>
    from . import ExprNodes
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/ExprNodes.py", line 2875
    await = None
          ^
SyntaxError: invalid syntax
Target //tensorflow/tools/pip_package:build_pip_package failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 179.318s, Critical Path: 6.38s
INFO: 413 processes: 413 local.
FAILED: Build did NOT complete successfully
feature

Komentar yang paling membantu

@activatedgeek Maafkan saya, tapi saya gagal melihat bagaimana penurunan versi menjawab pertanyaan OP mengenai garis waktu membuat Tensorflow kompatibel dengan Python 3.7 (dirilis hampir sebulan yang lalu).

Semua 80 komentar

Terima kasih atas kiriman Anda. Kami melihat Anda belum mengisi bidang berikut di template masalah. Bisakah Anda memperbaruinya jika relevan dengan kasus Anda, atau membiarkannya sebagai T/A? Terima kasih.
Sudahkah saya menulis kode khusus?
Platform dan Distribusi OS
TensorFlow diinstal dari
Versi TensorFlow
Versi bazel
Versi CUDA/cuDNN
Model dan memori GPU
Perintah yang tepat untuk mereproduksi

Memperbarui posting asli seperti yang diminta.

@homofortis Anda bisa menggunakan ini sementara dengan Homebrew untuk menurunkan versi Python Anda.

brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb

async dan await sekarang menjadi kata kunci dan perlu diganti dalam basis kode TF. Lihat https://docs.python.org/3/whatsnew/3.7.html#summary -release-highlights

17022

@activatedgeek Maafkan saya, tapi saya gagal melihat bagaimana penurunan versi menjawab pertanyaan OP mengenai garis waktu membuat Tensorflow kompatibel dengan Python 3.7 (dirilis hampir sebulan yang lalu).

@homofortis Mohon maaf. Saya mungkin melewatkan beberapa kata di sana dan berpikir bahwa tujuan utama Anda adalah mengkompilasi dari sumber. Banyak pencarian mengarah ke masalah ini, saya pikir ini akan baik untuk semua orang yang hanya ingin menjalankan Tensorflow.

Seperti yang saya lihat dari deskripsi, diagnostik tidak terkait dengan kompatibilitas tensorflow dengan Python-3.7 tetapi dengan penggunaan Cython yang terlalu lama dan saat ini masalah ini tidak mereproduksi karena Cython yang disebutkan di ruang kerja Bazel cukup baru. Di sisi lain, setidaknya ada 2 masalah kompatibilitas Python-3.7:

  • penggunaan kata kunci async sebagai nama variabel di pywrap_tensorflow_internal.py yang dihasilkan dari tensorflow/c/eager/c_api.{h,cc} - #20690
  • dan kerusakan yang disebabkan oleh perubahan tipe pengembalian PyUnicode_AsUTF8AndSize() dari char * menjadi const char *
    Mungkin akan lebih baik untuk menempatkan yang terakhir untuk masalah terpisah.

FWIW, saya baru saja membuat (belum diuji) tensorflow 1.9 dengan MKL di Windows untuk Python 3.7 menggunakan VS2017 dan patch berikut:

diff --git a/tensorflow/c/eager/c_api.h b/tensorflow/c/eager/c_api.h
index 1862af3ce2..093b97110f 100644
--- a/tensorflow/c/eager/c_api.h
+++ b/tensorflow/c/eager/c_api.h
@@ -76,7 +76,7 @@ typedef enum TFE_ContextDevicePlacementPolicy {
 // Sets the default execution mode (sync/async). Note that this can be
 // overridden per thread using TFE_ContextSetAsyncForThread.
 TF_CAPI_EXPORT extern void TFE_ContextOptionsSetAsync(TFE_ContextOptions*,
-                                                      unsigned char async);
+                                                      unsigned char is_async);

 TF_CAPI_EXPORT extern void TFE_ContextOptionsSetDevicePlacementPolicy(
     TFE_ContextOptions*, TFE_ContextDevicePlacementPolicy);
@@ -125,7 +125,7 @@ TFE_ContextGetDevicePlacementPolicy(TFE_Context*);

 // Overrides the execution mode (sync/async) for the current thread.
 TF_CAPI_EXPORT extern void TFE_ContextSetAsyncForThread(TFE_Context*,
-                                                        unsigned char async,
+                                                        unsigned char is_async,
                                                         TF_Status* status);

 // Causes the calling thread to block till all ops dispatched in async mode
diff --git a/tensorflow/core/platform/windows/port.cc b/tensorflow/core/platform/windows/port.cc
index 174f41a993..b06434620e 100644
--- a/tensorflow/core/platform/windows/port.cc
+++ b/tensorflow/core/platform/windows/port.cc
@@ -57,6 +57,11 @@ int NumSchedulableCPUs() {
   return system_info.dwNumberOfProcessors;
 }

+int NumHyperthreadsPerCore() {
+  static const int ht_per_core = tensorflow::port::CPUIDNumSMT();
+  return (ht_per_core > 0) ? ht_per_core : 1;
+}
+
 void* AlignedMalloc(size_t size, int minimum_alignment) {
 #ifdef TENSORFLOW_USE_JEMALLOC
   void* ptr = NULL;
diff --git a/tensorflow/python/eager/pywrap_tfe_src.cc b/tensorflow/python/eager/pywrap_tfe_src.cc
index 6c9481c3af..13edbb07db 100644
--- a/tensorflow/python/eager/pywrap_tfe_src.cc
+++ b/tensorflow/python/eager/pywrap_tfe_src.cc
@@ -813,7 +813,7 @@ char* TFE_GetPythonString(PyObject* o) {
   }
 #if PY_MAJOR_VERSION >= 3
   if (PyUnicode_Check(o)) {
-    return PyUnicode_AsUTF8(o);
+    return (char *)PyUnicode_AsUTF8(o);
   }
 #endif
   return nullptr;
diff --git a/tensorflow/python/lib/core/ndarray_tensor.cc b/tensorflow/python/lib/core/ndarray_tensor.cc
index 9df38d464c..4150fbfdd4 100644
--- a/tensorflow/python/lib/core/ndarray_tensor.cc
+++ b/tensorflow/python/lib/core/ndarray_tensor.cc
@@ -154,7 +154,7 @@ Status PyBytesArrayMap(PyArrayObject* array, F f) {
     if (PyUnicode_Check(item.get())) {
 #if PY_VERSION_HEX >= 0x03030000
       // Accept unicode by converting to UTF-8 bytes.
-      ptr = PyUnicode_AsUTF8AndSize(item.get(), &len);
+      ptr = (char *)PyUnicode_AsUTF8AndSize(item.get(), &len);
       if (!ptr) {
         return errors::Internal("Unable to get element as UTF-8.");
       }
diff --git a/tensorflow/python/lib/core/py_func.cc b/tensorflow/python/lib/core/py_func.cc
index 30c1a9c759..231a66de59 100644
--- a/tensorflow/python/lib/core/py_func.cc
+++ b/tensorflow/python/lib/core/py_func.cc
@@ -322,7 +322,7 @@ Status ConvertNdarrayToTensor(PyObject* obj, Tensor* ret) {
         Py_ssize_t el_size;
         if (PyBytes_AsStringAndSize(input_data[i], &el, &el_size) == -1) {
 #if PY_MAJOR_VERSION >= 3
-          el = PyUnicode_AsUTF8AndSize(input_data[i], &el_size);
+          el = (char *)PyUnicode_AsUTF8AndSize(input_data[i], &el_size);
 #else
           el = nullptr;
           if (PyUnicode_Check(input_data[i])) {

Saya lebih suka menambahkan kualifikasi const ke target daripada menghapusnya dari hasil PyUnicode_AsUTF8AndSize() . Ini adalah string konstan, dan tidak boleh diubah.

@asimshankar mengatakan bahwa dia telah meninjau dan mengirimkan PR tentang topik ini. Aku akan menugaskannya.

Saya menghadapi masalah serupa saat membangun dari sumber juga, menggunakan python 3.7 di Arch Linux.

ERROR: /home/rharish/.cache/bazel/_bazel_rharish/5d4d7b1255c710f6c814ab2f3f084405/external/protobuf_archive/BUILD:659:1: C++ compilation of rule '@protobuf_archive//:python/google/protobuf/pyext/_message.so' failed (Exit 1): crosstool_wrapper_driver_is_not_gcc failed: error executing command 
  (cd /home/rharish/.cache/bazel/_bazel_rharish/5d4d7b1255c710f6c814ab2f3f084405/execroot/org_tensorflow && \
  exec env - \
    LD_LIBRARY_PATH=:/usr/local/lib:/opt/cuda/lib64 \
    PATH=/home/rharish/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/opt/cuda/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl \
    PWD=/proc/self/cwd \
  external/local_config_cuda/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc -MD -MF bazel-out/host/bin/external/protobuf_archive/_objs/python/google/protobuf/pyext/_message.so/descriptor_containers.pic.d '-frandom-seed=bazel-out/host/bin/external/protobuf_archive/_objs/python/google/protobuf/pyext/_message.so/descriptor_containers.pic.o' -iquote external/protobuf_archive -iquote bazel-out/host/genfiles/external/protobuf_archive -iquote bazel-out/host/bin/external/protobuf_archive -iquote external/bazel_tools -iquote bazel-out/host/genfiles/external/bazel_tools -iquote bazel-out/host/bin/external/bazel_tools -iquote external/local_config_python -iquote bazel-out/host/genfiles/external/local_config_python -iquote bazel-out/host/bin/external/local_config_python -isystem external/protobuf_archive/python -isystem bazel-out/host/genfiles/external/protobuf_archive/python -isystem bazel-out/host/bin/external/protobuf_archive/python -isystem external/protobuf_archive/src -isystem bazel-out/host/genfiles/external/protobuf_archive/src -isystem bazel-out/host/bin/external/protobuf_archive/src -isystem external/local_config_python/python_include -isystem bazel-out/host/genfiles/external/local_config_python/python_include -isystem bazel-out/host/bin/external/local_config_python/python_include '-std=c++11' -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' -fPIC -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -Wall -fno-omit-frame-pointer -no-canonical-prefixes -DNDEBUG -g0 -O2 -ffunction-sections -fdata-sections -g0 '-march=native' -g0 -DHAVE_PTHREAD -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -Wno-unused-function -Wno-writable-strings '-DGOOGLE_PROTOBUF_HAS_ONEOF=1' '-DPROTOBUF_PYTHON_ALLOW_OVERSIZE_PROTOS=1' -c external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc -o bazel-out/host/bin/external/protobuf_archive/_objs/python/google/protobuf/pyext/_message.so/descriptor_containers.pic.o)
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc: In function 'bool google::protobuf::python::descriptor::_GetItemByKey(google::protobuf::python::PyContainer*, PyObject*, const void**)':
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc:69:45: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
        ((*(charpp) = PyUnicode_AsUTF8AndSize(ob, (sizep))) == NULL? -1: 0): \
                      ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc:172:13: note: in expansion of macro 'PyString_AsStringAndSize'
         if (PyString_AsStringAndSize(key, &name, &name_size) < 0) {
             ^~~~~~~~~~~~~~~~~~~~~~~~
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc:69:45: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
        ((*(charpp) = PyUnicode_AsUTF8AndSize(ob, (sizep))) == NULL? -1: 0): \
                      ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc:189:13: note: in expansion of macro 'PyString_AsStringAndSize'
         if (PyString_AsStringAndSize(key, &camelcase_name, &name_size) < 0) {
             ^~~~~~~~~~~~~~~~~~~~~~~~
At global scope:
cc1plus: warning: unrecognized command line option '-Wno-writable-strings'
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 63.634s, Critical Path: 9.08s
INFO: 464 processes: 464 local.
FAILED: Build did NOT complete successfully

Konfigurasi sistem saya adalah:
Platform dan Distribusi OS: Arch Linux
Python: Python 3.7.0
TensorFlow diinstal dari: sumber (https://github.com/tensorflow/tensorflow.git), cabang master
Versi TensorFlow: TensorFlow 1.9.0
Versi bazel: 0.16.0
Versi CUDA/cuDNN: CUDA 9.2
Model dan memori GPU: NVIDIA GeForce GTX 960M, 4GB

@bstriner telah mengajukan diri untuk memperbarui #21202 yang akan membawa kita selangkah lebih maju. Tetapi tampaknya kita harus menunggu rilis protobuf dengan dukungan untuk Python 3.7 dan kemudian memperbarui dependensi TensorFlow untuk menggunakan versi protobuf baru itu.

@rharish101
Jika Anda menggunakan Arch Linux, Anda dapat menginstal Tensorflow dengan pacman-S python-tensorflow .

@rharish101
Jika Anda membutuhkan dukungan CUDA, Anda dapat menginstal pacman-S python-tensorflow-cuda

@hzxie Yup, ini berfungsi dengan baik sekarang! Bagaimana orang-orang Arch membuatnya bekerja?

Belum ada rilis protobuf yang mendukung 3.7 tetapi jika Anda ingin menggunakan snapshot dari master maka Anda dapat membuat TF untuk 3.7

@bstriner
Saya masih tidak dapat mengkompilasi master terbaru. Build keluar dengan kesalahan.

Platform dan Distribusi OS: Mac OS X 10.13.5
Python: Python 3.7.0
TensorFlow diinstal dari: sumber (https://github.com/tensorflow/tensorflow.git)
Versi TensorFlow: TensorFlow 1.10
Versi Bazel: 0.15.2-homebrew
Versi CUDA/cuDNN: Tidak ada
Model dan memori GPU: Tidak ada
Perintah yang tepat untuk mereproduksi:
bazel build --config=opt //tensorflow/tools/pip_ package:build_pip_package

ERROR: /Users/zardoz/Projects/tensorflow/tensorflow/python/eager/BUILD:10:1: C++ compilation of rule '//tensorflow/python/eager:pywrap_tfe_lib' failed (Exit 1)
tensorflow/python/eager/pywrap_tfe_src.cc:219:11: error: cannot initialize a variable of type 'char *' with an rvalue of type 'const char *'
    char* buf = PyUnicode_AsUTF8AndSize(py_value, &size);
          ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tensorflow/python/eager/pywrap_tfe_src.cc:834:12: error: cannot initialize return object of type 'char *' with an rvalue of type 'const char *'
    return PyUnicode_AsUTF8(o);
           ^~~~~~~~~~~~~~~~~~~
2 errors generated.
Target //tensorflow/tools/pip_package:build_pip_package failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 5896.213s, Critical Path: 267.71s
INFO: 2883 processes: 2883 local.
FAILED: Build did NOT complete successfully

@cgohlke Bagaimana cara membangun tensorflow-gpu untuk python 3.7?

@homofortis itu karena pr ini belum digabung. Anda harus menariknya ke dalam diri Anda sendiri. https://github.com/tensorflow/tensorflow/pull/21202

Untuk menarik perbaikan py37 ke repo Anda saat ini, sesuatu seperti ini:

git remote add bstriner https://github.com/bstriner/tensorflow.git
git fetch bstriner
git merge bstriner/py37

Pada dasarnya, jika Anda melihat masalah dengan const char * dilemparkan ke char * atau yang serupa, itu adalah perubahan pada py37. Perbaiki dan diskusikan di PR terkait.

@bstriner Saya memerlukan file roda dari tensorflow gpu untuk python 3.7. Saya tidak bisa membangunnya sendiri

Kapan masalah ini diperbaiki??

Berkat kontribusi @bstriner (PR #21202), kita seharusnya bisa membangun untuk Python 3.7 sekarang. Namun, seperti yang dia singgung di PR, perpustakaan eigen dan protobuf masih memerlukan perbaikan untuk dikompilasi di Windows.

@gunan @angersson akan mengetahui apakah rilis resmi TensorFlow 1.11 akan mendukung Python 3.7, atau jika Anda harus mengompilasi dari sumber.

Kami masih memiliki masalah di sisi infra yang perlu kami selesaikan.
Semua infra build kami menggunakan ubuntu 14, karena permintaan komunitas (agar kompatibel dengan ubuntu 14).
Namun, python 3.7 tidak mudah dibangun di ubuntu 14, karena memerlukan versi terbaru dari beberapa pustaka yang disertakan dengan ubuntu.

Sementara kami menunggu perbaikan eigen dan protobuf di windows, kami akan menyelesaikannya.
Tapi ini berarti 1.11 tidak akan memiliki paket bawaan untuk python 3.7

@SukeshP1995 Anda dapat mencoba url ini https://www.lfd.uci.edu/~gohlke/pythonlibs/#tensorflow

Apakah roda gpu Ubuntu 16.04 TensorFlow untuk python 3.7 tersedia? Atau, jika tidak, bisakah saya mendapatkan panduan singkat untuk membangunnya sendiri? Saya tidak punya pengalaman untuk pergi keluar dan melakukannya tanpa ada yang memegang tangan saya :)

@morenoh149 itu hanya untuk python 3.6. Saya memiliki 3.7 karena saya baru saja melakukan instalasi baru.

https://github.com/tensorflow/tensorflow/issues/20517#issuecomment -418442189 masih berlaku.
Selain masalah infra (python 3.7 di ubuntu 14) belum semua dependensi kami memiliki dukungan python 3.7. Jadi kami masih bekerja dengan mereka untuk pindah ke python 3.7.

ah tidak, itu masalah mendasar @bjtho08 tensorflow perlu berhenti menggunakan kata kunci python baru di 3.7. Itulah yang dimaksud dengan utas ini. Sementara itu Anda dapat menggunakan garpu yang tertunda atau menggunakan 3.6

@morenoh149 jadi opsi saya adalah membangun versi python yang lebih lama atau membangun tensorflow dari git/master?

mulai hari ini ya. PR ini https://github.com/tensorflow/tensorflow/pull/21202 ada di master tetapi rilis belum dipotong. FWIW Anda dapat menggunakan pyenv untuk menginstal banyak versi python pada suatu sistem. Seorang insinyur perangkat lunak profesional harus dapat menyematkan dependensi dan alat mereka tergantung pada proyek.

@morenoh149 @bjtho08 membangun tensorflow dari cabang master tidak cukup. Beberapa dependensi masih belum mendukung 3.7.

@adrianodennanni dependensi mendukung 3.7, tetapi tidak dalam versi yang dirilis. Anda perlu mengubah perpustakaan di ruang kerja ke master saat ini. Tidak dapat mengubah dependensi di tensorflow hingga library tersebut memiliki rilis yang stabil.

Jadi, untuk protobuf saat ini, gunakan ini:

    PROTOBUF_URLS = [
        "https://mirror.bazel.build/github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz",
        "https://github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz",
    ]
    PROTOBUF_SHA256 = "f785d2009ea7c8484cb0443d9db8fe55f73cfdb6e112bfa659a8a5cdaf664ccd"
    PROTOBUF_STRIP_PREFIX = "protobuf-a6e1cc7e328c45a0cb9856c530c8f6cd23314163"

Anda mungkin juga membutuhkan eigen terbaru.

@rharish101
Jika Anda membutuhkan dukungan CUDA, Anda dapat menginstal pacman-S python-tensorflow-cuda

bagus terima kasih

mulai hari ini ya. PR #21202 ini ada di master tetapi rilisnya belum dipotong. FWIW Anda dapat menggunakan pyenv untuk menginstal banyak versi python pada suatu sistem. Seorang insinyur perangkat lunak profesional harus dapat menyematkan dependensi dan alat mereka tergantung pada proyek.

Terima kasih atas tipnya, @morenoh149 ! Saya membuatnya bekerja dengan memulai kembali menggunakan pyenv dan CUDA 9.0 :)

@gunan

Namun, python 3.7 tidak mudah dibangun di ubuntu 14, karena memerlukan versi terbaru dari beberapa pustaka yang disertakan dengan ubuntu.

Saya ingin berbagi pengalaman saya dalam membangun Python-3.7 di Ubuntu 12, dan saya harap ini akan membantu jika Anda belum menyelesaikan masalah itu. Saya membangun menggunakan flag konfigurasi berikut:

    --prefix=... \
    --enable-ipv6 \
    --with-dbmliborder=gdbm \
    --with-system-expat \
    --with-computed-gotos \
    --with-system-ffi \
    --with-ensurepip=no

Dan satu-satunya pustaka sistem yang terlalu usang untuk Python adalah OpenSSL, sehingga modul ssl tidak dapat dibangun. Untuk mengatasi masalah ini, saya memutuskan untuk membuat OpenSSL dari sumber dan menautkannya secara statis menggunakan resep cryptography (https://cryptography.io/en/latest/installation/#static-wheels):

  • buat OpenSSL yang dikonfigurasi dengan benar hanya dengan lib statis:
OPENSSL_VERSION=1.0.2p
wget https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz
tar xf openssl-${OPENSSL_VERSION}.tar.gz
cd openssl-${OPENSSL_VERSION}
./config no-shared no-ssl2 no-ssl3 -fPIC --prefix=$(pwd)/_openssl
make && make install
  • buat Python menggunakan OpenSSL itu dengan meneruskan flag ke skrip configure : --with-openssl=$(pwd)/openssl-${OPENSSL_VERSION}/_openssl , jadi permintaan configure terlihat seperti:
./configure
    --prefix=... \
    --enable-ipv6 \
    --with-dbmliborder=gdbm \
    --with-system-expat \
    --with-computed-gotos \
    --with-system-ffi \
    --with-ensurepip=no \
    --with-openssl=$(pwd)/openssl-${OPENSSL_VERSION}/_openssl

Selain masalah OpenSSL yang sudah ketinggalan zaman, saya belum menemukan masalah dalam membangun Python-3.7 di Ubuntu lama, saya menguji build saya dan tampaknya berfungsi dengan baik, tes dari sumber Python lulus.

Penerima Tugas yang Mengomel @gunan , @angersson : Sudah 14 hari tanpa aktivitas dan masalah ini memiliki penerima tugas. Harap perbarui label dan/atau status yang sesuai.

@bstriner Anda menyarankan untuk mengubah PROTOBUF_URLS, PROTOBUF_SHA256 dan PROTOBUF_STRIP_PREFIX. Saya berasumsi Anda melakukan ini di tensorflow/workspace.bzl? Di tempat lain? Terima kasih.

Sebenarnya, setelah mencoba ini, build bazel dari tensorflow 1.11 menghasilkan:

GALAT: tensorflow/tensorflow/tools/pip_package/ BUILD:216 :1: kesalahan memuat paket 'tensorflow': File ekstensi tidak ditemukan. Tidak dapat memuat paket untuk '@bazel_skylib//:lib.bzl': Repositori tidak dapat diselesaikan dan dirujuk oleh '//tensorflow/tools/pip_ package:build_pip_package '

@jeffcbecker Saya juga mendapat masalah ini. Tampaknya URL https://mirror.bazel.build/github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz tidak tersedia. Adakah yang punya solusi untuk ini?

Saya dapat mengatasinya dengan menggunakan Python 3.6.
Bersulang
jeff
Dikirim dari Perangkat 4G LTE T-Mobile saya
-------- Pesan asli -------- Dari: Adriano Dennanni [email protected] Tanggal: 21/10/18 13:40 (GMT-08:00) Kepada: tensorflow/tensorflow [email protected] Cc: jeffcbecker [email protected] , Sebutkan [email protected] Perihal: Re: [tensorflow/tensorflow] Kompatibilitas Python 3.7 (#20517)
@jeffcbecker Saya juga mendapat masalah ini. Tampaknya URL https://mirror.bazel.build/github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz tidak tersedia. Adakah yang punya solusi untuk ini?


Anda menerima ini karena Anda disebutkan.
Balas email ini secara langsung, lihat di GitHub, atau matikan utasnya.
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/tensorflow/tensorflow","title ":"tensorflow/tensorflow","subtitle":"Repositori GitHub","main_image_url":" https://assets-cdn.github.com/images/email/message_cards/header.png ","avatar_image_url":" https://assets-cdn.github.com/images/email/message_cards/avatar.png ","action":{"name":"Buka di GitHub","url":" https://github.com /tensorflow/tensorflow "}},"updates":{"snippets":[{"icon":"PERSON","message":" @adrianodennanni di #20517: @jeffcbecker Saya juga mendapatkan masalah ini. Tampaknya URL https://mirror.bazel.build/github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz tidak tersedia. Ada yang punya solusi untuk ini?"}],"action":{"name":"View Issue","url":" https://github.com/tensorflow /tensorflow/issues/20517#issuecomment -431701713"}}}
[
{
"@konteks": " http://schema.org ",
"@type": "Pesan Email",
"potensiAksi": {
"@type": "ViewAction",
"target": " https://github.com/tensorflow/tensorflow/issues/20517#issuecomment -431701713",
"url": " https://github.com/tensorflow/tensorflow/issues/20517#issuecomment -431701713",
"name": "Lihat Masalah"
},
"description": "Lihat Masalah ini di GitHub",
"penerbit": {
"@type": "Organisasi",
"nama": "GitHub",
"url": " https://github.com "
}
},
{
"@type": "Kartu Pesan",
"@context": " http://schema.org/extensions ",
"hideOriginalBody": "salah",
"pencetus": "AF6C5A86-E920-430C-9C59-A73278B5EFEB",
"title": "Re: [tensorflow/tensorflow] Kompatibilitas Python 3.7 (#20517)",
"bagian": [
{
"teks": "",
"activityTitle": " Adriano Dennanni ",
"activityImage": " https://assets-cdn.github.com/images/email/message_cards/avatar.png ",
"activitySubtitle": "@adrianodennanni",
"fakta": [

]
}
],
"potensiAksi": [
{
"nama": "Tambahkan komentar",
"@type": "ActionCard",
"masukan": [
{
"isMultiLine": benar,
"@type": "Masukan Teks",
"id": "IsuKomentar",
"diperlukan": false
}
],
"tindakan": [
{
"nama": "Komentar",
"@type": "HttpPOST",
"target": " https://api.github.com ",
"body": "{n"commandName": "IssueComment",n"repositoryFullName": "tensorflow/tensorflow",n"issueId": 20517,n"IssueComment": "{{IssueComment.value}}"n}"
}
]
},
{
"name": "Tutup masalah",
"@type": "HttpPOST",
"target": " https://api.github.com ",
"body": "{n"commandName": "IssueClose",n"repositoryFullName": "tensorflow/tensorflow",n"issueId": 20517n}"
},
{
"target": [
{
"os": "default",
"uri": " https://github.com/tensorflow/tensorflow/issues/20517#issuecomment -431701713"
}
],
"@type": "OpenUri",
"name": "Lihat di GitHub"
},
{
"nama": "Berhenti berlangganan",
"@type": "HttpPOST",
"target": " https://api.github.com ",
"body": "{n"commandName": "MuteNotification",n"threadId": 352548653n}"
}
],
"warna tema": "26292E"
}
]

roda protobuf telah ditingkatkan untuk mendukung 3.7.

Sekarang saatnya untuk merilis tensorflow untuk dukungan 3.7.

Kabar baik!
Apakah Anda ingin mengirim PR untuk menabrak dependensi protobuf TF di ruang kerja dan setup.py?

Tensorflow tampaknya adalah bagian terakhir dari Python-3.7.1. Ini mungkin berdampak pada beberapa tagihan Cloud Electric karena Python-3.7 lebih efisien daripada Python-3.6.

https://github.com/fo40225/tensorflow-windows-wheel/tree/master/1.12.0/py37

Bagi siapa saja yang ingin menguji tensorflow 1.12.0 dengan python 3.7 di windows.

depands pada protobuf v3.6.0 + cherry-pick https://github.com/protocolbuffers/protobuf/commit/0a59054c30e4f0ba10f10acfc1d7f3814c63e1a7

Sudah berbulan-bulan sejak rilis 3.7, pembaruan untuk TF masih diluncurkan, jadi apa kata/ETA tentang kompatibilitas?

Jadi tahun 2018 akan segera berakhir, dan rilis resmi python 3.7 yang didukung masih menjadi gelembung? :)

Versi yang diposting oleh @adrianodennanni berfungsi untuk saya. Saya menggunakan fitur python3.7 dalam kode saya dan sangat sulit untuk berpindah lingkungan setiap saat.

Untuk apa nilainya, saya dapat mengkompilasi tf dan membangun roda Python3.7 di OSX menggunakan master saat ini.

Saya telah mengirimkan https://github.com/tensorflow/tensorflow/commit/b0d7d8a477d3041e2d0ebd0cb1d35e4a7fa09663 yang seharusnya memungkinkan Anda membangun untuk 3.7. tf-nightly sekarang memiliki versi CPU (khusus Ubuntu) yang hanya berfungsi di Ubuntu16.04+. Versi GPU untuk Ubuntu akan segera hadir.

@av8ramit

terima kasih kepada Anda, saya baru saja berhasil membangun tf dengan python 3.7.1, cuda 10, dan cudnn 7.4

sekarang hanya dukungan bazel 0,20 yang tersisa

tf-nightly-gpu build dengan CUDA 10 juga ada di pypi sekarang. Saya akan membiarkan bug ini tetap terbuka sampai kami memiliki rilis resmi Python3.7 build.

@alanpurple bisa anda jelaskan? Saya tidak dapat membangun tf 1.12 untuk menyelamatkan hidup saya di Ubuntu 18 dan python 3.7

Di jendela:
berhasil membangun 1.12-cpu, dan diimpor dalam py3.7.
tapi gpu:
ps: menggunakan bazel 0.21

INFO: From Linking tensorflow/contrib/tpu/python/ops/_tpu_ops.so:
   Creating library bazel-out/x64_windows-opt/bin/tensorflow/contrib/tpu/python/ops/python/ops/lib_tpu_ops.so.ifso and object bazel-out/x64_windows-opt/bin/tensorflow/contrib/tpu/python/ops/python/ops/lib_tpu_ops.so.exp
INFO: From Linking tensorflow/contrib/tensor_forest/python/ops/_stats_ops.so:
   Creating library bazel-out/x64_windows-opt/bin/tensorflow/contrib/tensor_forest/python/ops/python/ops/lib_stats_ops.so.ifso and object bazel-out/x64_windows-opt/bin/tensorflow/contrib/tensor_forest/python/ops/python/ops/lib_stats_ops.so.exp
ERROR: C:/tensorflow/tensorflow/python/keras/api/BUILD:28:1: Executing genrule //tensorflow/python/keras/api:keras_python_api_gen_compat_v1 failed (Exit 1): bash.exe failed: error executing command
  cd C:/users/USER/_bazel_USER/xv6zejqw/execroot/org_tensorflow
  SET CUDA_TOOLKIT_PATH=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.0
    SET CUDNN_INSTALL_PATH=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.0
    SET PATH=C:\msys64\usr\bin;C:\msys64\bin
    SET PYTHON_BIN_PATH=C:/Program Files/Python37/python.exe
    SET PYTHON_LIB_PATH=C:/Program Files/Python37/lib/site-packages
    SET TF_CUDA_CLANG=0
    SET TF_CUDA_COMPUTE_CAPABILITIES=3.5,7.0
    SET TF_CUDA_VERSION=10.0
    SET TF_CUDNN_VERSION=7
    SET TF_NEED_CUDA=1
    SET TF_NEED_OPENCL_SYCL=0
    SET TF_NEED_ROCM=0
  C:/msys64/usr/bin/bash.exe -c source external/bazel_tools/tools/genrule/genrule-setup.sh; bazel-out/x64_windows-opt/bin/tensorflow/python/keras/api/create_tensorflow.python_api_1_keras_python_api_gen_compat_v1.exe  --apidir=bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api_v1/ --apiname=keras --apiversion=1  --package=tensorflow.python,tensorflow.python.keras --output_package=tensorflow.python.keras.api._v1 bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/activations/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/densenet/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/inception_resnet_v2/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/inception_v3/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/mobilenet/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/mobilenet_v2/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/nasnet/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/resnet50/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/vgg16/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/vgg19/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/xception/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/backend/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/callbacks/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/constraints/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/boston_housing/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/cifar10/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/cifar100/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/fashion_mnist/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/imdb/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/mnist/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/reuters/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/estimator/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/experimental/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/initializers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/layers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/losses/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/metrics/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/models/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/optimizers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/preprocessing/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/preprocessing/image/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/preprocessing/sequence/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/preprocessing/text/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/regularizers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/utils/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/wrappers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/wrappers/scikit_learn/__init__.py
Execution platform: @bazel_tools//platforms:host_platform
Traceback (most recent call last):
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:\Program Files\Python37\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "C:\Program Files\Python37\lib\imp.py", line 343, 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 "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\tools\api\generator\create_python_api.py", line 27, in <module>
    from tensorflow.python.tools.api.generator import doc_srcs
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:\Program Files\Python37\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "C:\Program Files\Python37\lib\imp.py", line 343, 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.
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 2602.108s, Critical Path: 565.09s
INFO: 4691 processes: 4691 local.
FAILED: Build did NOT complete successfully

Biarkan saya memberi tahu Anda masalah apa yang saya hadapi dan bagaimana saya menyelesaikannya. Saya menggunakan Mac OS

Tensorflow tidak kompatibel dengan python 3.7 ini hanya tersedia untuk saya pikir hingga python 3.6 seperti yang sekarang ..

Saya menggunakan python 3.7 jadi saya mengunduh python 3.6 dari situs resminya .. paket penginstal dan menginstalnya. Dan sematkan aplikasi python 3.6 ke dock karena segera setelah python 3.7 ada di peluncur. Python 3.6 tidak akan ditampilkan .. meskipun itu akan ditampilkan di tab aplikasi sebagai folder sekunder

Sekarang buka terminal dan ketik: nano .bash_profile
Kemudian editor nano akan membuka tanda komentar pada jalur untuk python 3.6 dan mengomentari jalur untuk 3.7. lalu tekan control+X lalu y untuk ya lalu Enter

Setelah itu restart terminal dan ketik: echo $PATH
Pastikan tautan pertama adalah python 3.6

Sekarang ketik: python3 dan tekan enter dan periksa versi mana yang dibuka hanya untuk memastikan itu adalah python 3.6

Sekarang ketik: python3 -m pip install tensorflow
Anda dapat mengunduh modul lain dengan cara yang sama.

Sekarang ketika Anda ingin bekerja dengan python 3.6 buka. Python dari dermaga. Dan bekerja .. dan jika Anda ingin bekerja pada 3.7 Anda dapat membuka python 3.7 dan itu juga akan berfungsi dengan lancar

Untuk menginstal modul di python 3.7,. Cukup ketik: python3.7 -m pip install package namr

Mendapat python3.7.2 yang sangat baru dikompilasi untuk windows dengan CUDA 10, tautan di repo ini:
https://github.com/PlatinumLyfe/tf-windows-gpu/

Hai, ada kemajuan dalam masalah kompatibilitas ini?

bbhattmaclap:~ bbhatt$ pip3 install --upgrade tensorflow
Mengumpulkan tensorflow
Tidak dapat menemukan versi yang memenuhi persyaratan tensorflow (dari versi: )
Tidak ditemukan distribusi yang cocok untuk tensorflow
bbhattmaclap:~ bbhatt$

@BhuvaneshBhatt paket resmi tensorflow terbaru tidak memiliki dukungan Python3.7. Anda harus menggunakan paket tf-nightly-gpu Anda. Kami mencoba untuk memilikinya untuk 1.13.

@PlatinumLyfe tidak dapat menginstal.
tautan Anda hanya memiliki xxx-cp36-cp36m-... .
tidak ada cp37 dan tidak ada versi -gpu- .

Tolong berhenti meminta orang lain untuk menyediakan binari yang dikompilasi. Selain mengirim spam ke semua orang yang tertarik ketika dukungan resmi Python 3.7 mendarat, meminta pada halaman yang dapat dikomentari secara publik agar seseorang mengirimi Anda biner untuk dijalankan tidak terlalu aman.

Tensorflow 1.13-rc0 telah dirilis (https://github.com/tensorflow/tensorflow/releases/tag/v1.13.0-rc0), namun tidak ada Python 3.7 build di PyPI (https://pypi.org/project /tensorflow/1.13.0rc0/#files). Akankah Tensorflow 1.13 dirilis untuk Python 3.7 secara resmi?

Kami bertujuan untuk mencoba dan memiliki binari python Windows dan Ubuntu oleh rc2 atau yang resmi.

Ada berita tentang dukungan Mac? Saya terjebak di Mac untuk saat ini.
Pada 24 Januari 2019, 6:55 AM -0600, Amit Patankar [email protected] , menulis:

Kami bertujuan untuk mencoba dan memiliki binari python Windows dan Ubuntu oleh rc2 atau yang resmi.

Anda menerima ini karena Anda disebutkan.
Balas email ini secara langsung, lihat di GitHub, atau matikan utasnya.

Kami sekarang memiliki paket CPU tf-nightly untuk Mac. Akan mencoba dan memilikinya untuk rc2 juga.

Bagi siapa pun yang datang ke utas ini, paket tf-nightly yang disebutkan di atas bagus. Instal dengan pip3 install tf-nightly untuk versi CPU. Diuji, bekerja pada Python 3.7.2 di MacOS Mojave 10.14.2

Rilis 1.13.0rc1 menyertakan binari Python3.7 untuk semua OS-es untuk cpu dan gpu .

Sepertinya saya tidak bisa menginstalnya. Adakah langkah pemecahan masalah sederhana?
EDIT: Masalahnya adalah CPython versi 32-bit digunakan pada sistem 64-bit.

@MagixInTheAir Saya menutup masalah ini karena ini hanya tentang dukungan umum Python 3.7. Harap buka kembali masalah baru dengan log dan informasi lebih lanjut tentang penyiapan Anda jika Anda masih mengalami masalah.

Tensorflow 1.13.1 sekarang mendukung Python 3.7.

https://pypi.org/project/tensorflow/#files Ada rilis cp37 untuk tensorflow==1.13.1. Mungkin ada sesuatu yang salah di lingkungan Anda.

Saya menggunakan 3.7.2 dan saya memiliki masalah yang sama, versi/tag yang dilaporkan untuk 1.31.1 adalah sebagai berikut:

{('cp37', 'cp37m', 'manylinux1_x86_64')}

sementara 3.7.2 saya mendukung yang berikut:

[('cp37', 'cp37m', 'linux_x86_64'), ('cp37', 'abi3', 'linux_x86_64'), ('cp37', 'none', 'linux_x86_64'), ('cp36', 'abi3', 'linux_x86_64'), ('cp35', 'abi3', 'linux_x86_64'), ('cp34', 'abi3', 'linux_x86_64'), ('cp33', 'abi3', 'linux_x86_64'), ('cp32', 'abi3', 'linux_x86_64'), ('py3', 'none', 'linux_x86_64'), ('cp37', 'none', 'any'), ('cp3', 'none', 'any'), ('py37', 'none', 'any'), ('py3', 'none', 'any'), ('py36', 'none', 'any'), ('py35', 'none', 'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')]

(dari pep425tags.get_supported())

jadi saya yakin masalahnya hanya linux bukan manylinux1 dalam nama roda.

Saya memiliki build python bersih dari sumber dengan parameter yang hampir default.

@dellelce Anda mungkin menggunakan versi pip yang sangat lama?

import pip._internal; print(pip._internal.pep425tags.get_supported())

memberi saya banyak tag linux.

Saya baru saja memeriksa dan masalahnya adalah dengan build alpine, build saya (dellelce/py-base) dan gambar docker alpine resmi (python:alpine) memiliki masalah sementara gambar yang dibangun di atas debian (python:latest) berfungsi dengan baik.
Itu harus terkait dengan perpustakaan libc yang digunakan (musl vs glibc)? Jadi dist lain yang tidak menggunakan glibc mungkin memiliki masalah...

Semua memiliki pip terbaru dan 3.7.3 atau 3.7.2...

Saya cukup yakin bahwa Alpine tidak termasuk dalam banyak Linux yang didukung banyak linux.

@ppwwyyxx haruskah kita memiliki tiket lain untuk mendukung distribusi linux non-glibc?

PEP 571/PEP 513 ("manylinux") hanya mendukung glibc.

@dellelce Mendukung alpine linux bisa menjadi ide yang menarik tetapi mungkin tidak sepele. Saat ini sebagian besar binari tensorflow dikompilasi dengan Ubuntu 14.04. Bahkan beberapa platform lain yang umum digunakan (misalnya CentOS) terkadang mengalami beberapa masalah. Saya pikir dukungan alpine tidak mungkin menjadi prioritas dalam jangka pendek.

Membuka sebuah masalah selalu merupakan hal yang baik, karena dapat membantu mengukur kebutuhan dan minat dari masyarakat, dan itu selalu dapat diberi label sebagai "sumbangan diterima".

Apakah halaman ini membantu?
0 / 5 - 0 peringkat