質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

1回答

7752閲覧

Anaconda環境のpythonでginzaを実行するとエラーメッセージが表示され,解決できない

LostValt

総合スコア0

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2021/04/16 07:15

前提・実現したいこと

pythonでGiNZAを使用したいのですが,サンプルプログラムを動かすとエラーメッセージが表示されました
大雑把に翻訳すると
「'CompoundSplitter'が見つからない」
「spacyが内蔵されていないコンポーネント名で'nlp.create_pipe'を呼び出した場合に発生するエラーである」
とのことでした
どういう意味なのかが分からず,解決策が思いつきません
助けていただきたいです

発生している問題・エラーメッセージ

KeyError: "[E002] Can't find factory for 'CompoundSplitter'. This usually happens when spaCy calls nlp.create_pipe with a component name that's not built in - for example, when constructing the pipeline from a model's meta.json. If you're using a custom component, you can write to Language.factories['CompoundSplitter'] or remove it from the model meta and add it via nlp.add_pipe instead."

該当のソースコード

python3.7

import spacy

nlp = spacy.load('ja_ginza') #GiNZAモデルの読み込み
doc = nlp('吾輩は猫である,名前はまだない.')

試したこと

pipコマンドでインストールしました
pip install "https://github.com/megagonlabs/ginza/releases/download/v1.0.2/ja_ginza_nopn-1.0.2.tgz"

補足情報(FW/ツールのバージョンなど)

Windows10
Anacomda3
python3.7

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

# condaでpython3.7環境を、env_for_ginzaという名前で作製する。 $ conda create --name env_for_ginza python=3.7 # env_for_ginza を有効にする $ conda activate env_for_ginza # 公式ドキュメントに従って、ginzaをインストールする $ pip install -U ginza # 対話型インタプリタを起動する $ python3

上のようにして、まっさらなpython3.7環境から、ginzaが入った環境を作製します。

そのあとインタプリタ上で以下を実行します。

python3

1import spacy 2nlp = spacy.load('ja_ginza') 3doc = nlp('銀座でランチをご一緒しましょう。') 4print([[token for token in d] for d in doc.sents]) 5>> [[銀座, で, ランチ, を, ご, 一緒, し, ましょう, 。]]

投稿2021/04/17 11:13

izuna385

総合スコア53

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

LostValt

2021/04/19 01:52

回答ありがとうございます. 上記の方法を試したところ「ModuleNotFoundError: No module named 'spacy'」と表示されました. 「pip list」でインストールされているパッケージを見ると「spacy 2.3.5」がインストールされていました.また,Anaconda環境でginzaを使用したいのですが,やはり難しいでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問