2017-08-07 2 views
0

私はtensorflowのドキュメントで確認して、彼らは唯一のbazelルールを通じてカスタムオペアンプのコンパイルに関する情報を提供するように見える:テンソーフローでカスタム操作をコンパイルするにはどのように動的にそれらをPythonでインポートする必要はありませんか?

load("//tensorflow:tensorflow.bzl", "tf_custom_op_library") 

tf_custom_op_library(
    name = "zero_out.so", 
    srcs = ["zero_out.cc"], 
) 

bazelがそれを構築したら、あなたはあなたのようなのpythonにインポートすることができzero_out.soファイルを取得以下:

import tensorflow as tf 
zero_out_module = tf.load_op_library('./zero_out.so') 

手動tf.load_op_libraryを通じてカスタムOPSをインポートする必要がないように、とにかくあなたがtensorflowのbazelビルド時にcustom_opsをリンクすることができますありますか?

+0

テンソルフローのカスタム操作がC++でコード化され、bazelのcc_libraryルールによってコンパイルされるためです。 –

答えて

0

動的にロードする以外に、独自のopsでプルするための公式にサポートされている拡張ポイントはありません。

ソースからテンソルフローを作成して、それをハッキングしようとしている場合は、あなたのopsがコアオペルですが、それはサポートされていません。

関連する問題