Python で感情分析に IBM Watson を使用しようとしていますが、「モジュールがありません」エラーが発生します。
ドキュメントに従ってみたところ、コードは次のようになります。
import json
import constants
from ibm_watson import NaturalLanguageUnderstandingV1
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator
from ibm_watson.natural_language_understanding_v1 import Features, SentimentOptions
class SentimentAnalysis:
def __init__(self):
authenticator = IAMAuthenticator(constants.IBM_WATSON_KEY)
this.natural_language_understanding = NaturalLanguageUnderstandingV1(
version='2020-08-01',
authenticator=authenticator
)
this.natural_language_understanding.set_service_url(constants.IBM_WATSON_URL)
def analyse_sentiments(self, data):
response = this.natural_language_understanding.analyze(
url='www.wsj.com/news/markets',
features=Features(sentiment=SentimentOptions(targets=['stocks']))).get_result()
assert isinstance(response, object)
return response
if __name__ == "__main__":
sentiment_analysis_object = SentimentAnalysis()
data = ("I've seen you")
response = sentiment_analysis_object.analyse_sentiments(data)
print json.dumps(response, indent=2)
私が使用している Python のバージョンは Python 3.6.5 です:: Anaconda, Inc.
ibm_watson はサードパーティのモジュールです。 Python には組み込まれていません。自分でインストールする必要があります。それをやったのですか?
– ジョン・ゴードン
2020 年 9 月 4 日 17:27
はい、そうでした。 pip3 install --upgrade "ibm-watson"=4.6.0" を使用しました。
– ラーフル・グプタ
2020 年 9 月 4 日 17:28
pip3 は Anaconda のモジュールをインストールする正しい方法ですか? Anaconda にはモジュールをインストールする独自の方法があると思いました。
– ジョン・ゴードン
2020 年 9 月 4 日 17:32
ええ、悪いです。コマンド「conda install -c conda-forge ibm-watson」を変更しました。それでも同じ問題が発生します。
– ラーフル・グプタ
2020 年 9 月 4 日 17:46
リンク stackoverflow.com/questions/60127093/… にアクセスしてください。
– ムハンマド・リズワン・ムナワール
2020 年 9 月 5 日 8:37
------------------------
IBM ワットの本拠地Python SDK は GitHub にあります。ここには、Python モジュールをインストールして問題を解決するためのいくつかの異なる方法があります。
その GitHub リポジトリには、NLU の例を含む例が含まれるディレクトリもあります。それを実行してみてください。
------------------------
これが私にとってうまくいきました
Python で anaconda3 フォルダーを指定しています。それで、私が走るとき
which python
出力は次のとおりです
/usr/local/anaconda3/bin/python
Python3 の場合も同様です。
ibm-watson の既存の pip インストールをアンインストールし、以下のコマンドを実行して conda パッケージからインストールしました
conda install -c conda-forge ibm-watson
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /usr/local/anaconda3
added / updated specs:
- ibm-watson
The following NEW packages will be INSTALLED:
ibm-watson conda-forge/noarch::ibm-watson-4.7.0-pyh9f0ad1d_0
Proceed ([y]/n)? y
Preparing transaction: done
Verifying transaction: | WARNING conda.core.path_actions:verify(962): Unable to create environments file. Path not writable.
environment location: /Users/VMac/.conda/environments.txt
done
Executing transaction: done
入力を確認するにはインストールが完了したら、以下のコマンドを実行しました。
conda list | grep ibm
ibm-cloud-sdk-core 1.5.1 pyh9f0ad1d_0 conda-forge
ibm-watson 4.7.0 pyh9f0ad1d_0 conda-forge
最新バージョンをインストールする前に、以前のバージョンの ibm-watson をアンインストールすることをお勧めします。
pip uninstall ibm-watson
conda uninstall ibm-watson
また、正しいバージョンの Python を指定しているかどうかを確認してください。
------------------------
これは私に起こったことで、原因はコマンド プロンプトで python のsource_file.py ではなく、source_file.py と入力したことです。