##概要
tensorflow2.0 + VScodeでコード補完が機能せず、その解決に手こずったという話。
ここで報告されており、一応の解決法もあったので試したら上手くいきました。
開発環境
windows10
VScode==1.40.0
tensorflow==2.0.0
##詳細
1. tensorflowのインストールディレクトリ(ほとんどの場合site-packages/)にtensorflowとtensorflow_coreがあるのでtensorflowを適当にrenameし、('tensorflow → tensorflow_back'など)tensorflow_coreをtensorflowにrenameする。
2. tensorflow/__init__.py(元はtensorflow_core/__init__.py)に以下を追記。
from .python.keras.api._v2 import keras
from tensorflow_estimator.python.estimator.api._v2 import estimator
これだけです。
ただ、2のimport文の追記はなくても問題なかったとの書き込みもあったので確認していませんがrenameだけでもいいのかもしれません。
またライブラリ自体に変更を加えない方法もあったので紹介しておきます。
- tensorflow_coreへのシンボリックリンクをtensorflowという名前で作成する。
- VScodeの設定で作成したリンクがあるディレクトリのパスを以下のように指定する。
"python.autoComplete.extraPaths": [
"/path/to/dir"
],
ライブラリ自体をいじるのはなるべく避けたほうがいいと思ったので最初はこの方法を試してみましたが、自分の環境ではうまくいかなかったので仕方なくrenameする方法をとりました。