@@ -686,9 +686,15 @@ def switch_chunker(fmt="multiclass"):
686686 """
687687 Return a pickle-free Named Entity Chunker instead of loading a pickle.
688688
689+ >>> import nltk
690+ >>> from nltk.corpus import treebank
691+ >>> from pprint import pprint
692+ >>> chunker = nltk.data.load('chunkers/maxent_ne_chunker/PY3/english_ace_multiclass.pickle')
693+ >>> pprint(chunker.parse(treebank.tagged_sents()[2][8:14])) # doctest: +NORMALIZE_WHITESPACE
694+ Tree('S', [('chairman', 'NN'), ('of', 'IN'), Tree('ORGANIZATION', [('Consolidated', 'NNP'), ('Gold', 'NNP'), ('Fields', 'NNP')]), ('PLC', 'NNP')])
689695
690696 """
691- from nltk .chunker import ne_chunker
697+ from nltk .chunk import ne_chunker
692698
693699 return ne_chunker (fmt )
694700
@@ -697,8 +703,14 @@ def switch_t_tagger():
697703 """
698704 Return a pickle-free Treebank Pos Tagger instead of loading a pickle.
699705
706+ >>> import nltk
707+ >>> from nltk.tokenize import word_tokenize
708+ >>> tagger = nltk.data.load('taggers/maxent_treebank_pos_tagger/PY3/english.pickle')
709+ >>> print(tagger.tag(word_tokenize("Hello, how are you?")))
710+ [('Hello', 'NNP'), (',', ','), ('how', 'WRB'), ('are', 'VBP'), ('you', 'PRP'), ('?', '.')]
711+
700712 """
701- from nltk .classifier .maxent import maxent_pos_tagger
713+ from nltk .classify .maxent import maxent_pos_tagger
702714
703715 return maxent_pos_tagger ()
704716
@@ -707,6 +719,12 @@ def switch_p_tagger(lang):
707719 """
708720 Return a pickle-free Averaged Perceptron Tagger instead of loading a pickle.
709721
722+ >>> import nltk
723+ >>> from nltk.tokenize import word_tokenize
724+ >>> tagger = nltk.data.load('taggers/averaged_perceptron_tagger/averaged_perceptron_tagger.pickle')
725+ >>> print(tagger.tag(word_tokenize("Hello, how are you?")))
726+ [('Hello', 'NNP'), (',', ','), ('how', 'WRB'), ('are', 'VBP'), ('you', 'PRP'), ('?', '.')]
727+
710728 """
711729 from nltk .tag import _get_tagger
712730
@@ -804,6 +822,8 @@ def load(
804822 protocol , path_ = split_resource_url (resource_url )
805823
806824 if path_ [- 7 :] == ".pickle" :
825+ if verbose :
826+ print (f"<<Loading pickle-free alternative to { resource_url } >>" )
807827 fil = os .path .split (path_ [:- 7 ])[- 1 ]
808828 if path_ .startswith ("tokenizers/punkt" ):
809829 return switch_punkt (fil )
0 commit comments