Sudachiで量が多いテキストデータを係り受け解析したい

実現したいこと

Sudachiで係り受け解析をしたいです。

発生している問題・分からないこと

Exception: Tokenization error: Input is too long, it can't be more than 49149 bytes, was 123481
を解決できません。

該当のソースコード

Python

1import spacy 2 3nlp = spacy.load('ja_ginza')4 5with open('pdf_j.txt','r',encoding='utf-8') as f:6 text=f.read().strip()7 8doc=nlp(text)9for sent in doc.sents:10 for token in sent:11 print(12 token.i,13 token.lemma_,14 token.tag_,15 token.dep_,16 token.head.i,17 token.head.text,18 token.rank 19 )20print('EOS')

Python

1import spacy 2 3nlp = spacy.load('ja_ginza')4 5with open('pdf_j.txt','r',encoding='utf-8') as f:6 text = f.read().strip()7 8max_len = 40009segments = []10for i in range(0, len(text), max_len):11 segment = text[i:i + max_len]12 segments.append(segment)13 14docs = []15for segment in segments:16 doc = nlp(segment)17 docs.append(doc)18 19combined_doc = spacy.tokens.Doc(nlp.vocab)20 21for sent in combined_doc.sents:22 for token in sent:23 print(24 token.i,25 token.lemma_,26 token.tag_,27 token.dep_,28 token.head.i,29 token.head.text,30 token.rank 31 )32 33print('EOS')

Python

1import spacy 2 3nlp=spacy.load('ja_ginza')4 5with open('pdf_j.txt','r',encoding='utf-8') as f:6 text=f.read().strip()7 8max_len=40009uni_seguments=[]10 11segments=[]12for i in range(0,len(text),max_len):13 segment=text[i:i+max_len]14 segments.append(segment)15 16for segment in segments:17 doc=nlp(segment)18 uni_seguments.append(doc)19 20all_doc=spacy.tokens.Doc.from_docs(uni_seguments)21 22 23for sent in all_doc.sents:24 for token in sent:25 print(token.i,26 token.lemma_,27 token.tag_,28 token.head.i,29 token.head.text,30 token.dep_ 31 )32print()

試したこと・調べたこと

上記の詳細・結果

始めのコードでは
Exception: Tokenization error: Input is too long, it can't be more than 49149 bytes, was 123481
とエラーが出ました。

次のコードでは
EOS
のみ出力されました。

最後のコードではすべて出力されるのですが、
冒頭にUserWarning: [W102] Skipping unsupported user data 'sub_tokens:
が出力されます。
加えて、どのコードでも
"tokens" はモジュール "spacy" の既知のメンバーではありません
というメッセージが出ます。

補足

環境は
VSCode
Python 3.10.12
spacyのVersion 3.2.0
ginza-5.1.3 ja_ginza-5.1.3
です。

コメントを投稿

0 コメント