ibm クラウド - Python および IBM Watson SDK: ImportError: ibm_watson という名前のモジュールがありません

okwaves2024-01-25  9

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 と入力したことです。

総合生活情報サイト - OKWAVES
総合生活情報サイト - OKWAVES
生活総合情報サイトokwaves(オールアバウト)。その道のプロ(専門家)が、日常生活をより豊かに快適にするノウハウから業界の最新動向、読み物コラムまで、多彩なコンテンツを発信。