16
16
from termcolor import colored
17
17
import torch
18
18
19
- from forte .nltk import (
20
- NLTKSentenceSegmenter , NLTKWordTokenizer , NLTKPOSTagger )
19
+ from forte .nltk import NLTKSentenceSegmenter , NLTKWordTokenizer , NLTKPOSTagger
21
20
from forte .common .configuration import Config
22
21
from forte .data .multi_pack import MultiPack
23
22
from forte .data .readers import MultiPackTerminalReader
@@ -36,30 +35,38 @@ def setup(config: Config) -> Pipeline:
36
35
resource = Resources ()
37
36
query_pipeline = Pipeline [MultiPack ](resource = resource )
38
37
query_pipeline .set_reader (
39
- reader = MultiPackTerminalReader (), config = config .reader )
38
+ reader = MultiPackTerminalReader (), config = config .reader
39
+ )
40
40
query_pipeline .add (
41
- component = MicrosoftBingTranslator (), config = config .translator )
41
+ component = MicrosoftBingTranslator (), config = config .translator
42
+ )
42
43
query_pipeline .add (
43
- component = BertBasedQueryCreator (), config = config .query_creator )
44
- query_pipeline . add (
45
- component = SearchProcessor (), config = config .searcher )
44
+ component = BertBasedQueryCreator (), config = config .query_creator
45
+ )
46
+ query_pipeline . add ( component = SearchProcessor (), config = config .searcher )
46
47
47
- top_response_pack_name = config .indexer .response_pack_name + '_0'
48
+ top_response_pack_name = config .indexer .response_pack_name + "_0"
48
49
49
50
query_pipeline .add (
50
51
component = NLTKSentenceSegmenter (),
51
- selector = NameMatchSelector (select_name = top_response_pack_name ))
52
+ selector = NameMatchSelector (select_name = top_response_pack_name ),
53
+ )
52
54
query_pipeline .add (
53
55
component = NLTKWordTokenizer (),
54
- selector = NameMatchSelector (select_name = top_response_pack_name ))
56
+ selector = NameMatchSelector (select_name = top_response_pack_name ),
57
+ )
55
58
query_pipeline .add (
56
59
component = NLTKPOSTagger (),
57
- selector = NameMatchSelector (select_name = top_response_pack_name ))
60
+ selector = NameMatchSelector (select_name = top_response_pack_name ),
61
+ )
58
62
query_pipeline .add (
59
- component = SRLPredictor (), config = config .SRL ,
60
- selector = NameMatchSelector (select_name = top_response_pack_name ))
63
+ component = SRLPredictor (),
64
+ config = config .SRL ,
65
+ selector = NameMatchSelector (select_name = top_response_pack_name ),
66
+ )
61
67
query_pipeline .add (
62
- component = MicrosoftBingTranslator (), config = config .back_translator )
68
+ component = MicrosoftBingTranslator (), config = config .back_translator
69
+ )
63
70
64
71
query_pipeline .initialize ()
65
72
@@ -87,28 +94,36 @@ def main(config: Config):
87
94
resource .update (bot_utterance = [response_pack ])
88
95
89
96
english_pack = m_pack .get_pack ("pack" )
90
- print (colored ("English Translation of the query: " , "green" ),
91
- english_pack .text , "\n " )
97
+ print (
98
+ colored ("English Translation of the query: " , "green" ),
99
+ english_pack .text ,
100
+ "\n " ,
101
+ )
92
102
93
103
# Just take the first pack.
94
- pack = m_pack .get_pack (config .indexer .response_pack_name_prefix + '_0' )
104
+ pack = m_pack .get_pack (config .indexer .response_pack_name_prefix + "_0" )
95
105
print (colored ("Retrieved Document" , "green" ), pack .text , "\n " )
96
- print (colored ("German Translation" , "green" ),
97
- m_pack .get_pack ("response" ).text , "\n " )
106
+ print (
107
+ colored ("German Translation" , "green" ),
108
+ m_pack .get_pack ("response" ).text ,
109
+ "\n " ,
110
+ )
98
111
for sentence in pack .get (Sentence ):
99
112
sent_text = sentence .text
100
- print (colored ("Sentence:" , ' red' ), sent_text , "\n " )
113
+ print (colored ("Sentence:" , " red" ), sent_text , "\n " )
101
114
102
- print (colored ("Semantic role labels:" , ' red' ))
115
+ print (colored ("Semantic role labels:" , " red" ))
103
116
for link in pack .get (PredicateLink , sentence ):
104
117
parent = link .get_parent ()
105
118
child = link .get_child ()
106
- print (f" - \" { child .text } \" is role "
107
- f"{ link .arg_type } of "
108
- f"predicate \" { parent .text } \" " )
119
+ print (
120
+ f' - "{ child .text } " is role '
121
+ f"{ link .arg_type } of "
122
+ f'predicate "{ parent .text } "'
123
+ )
109
124
print ()
110
125
111
- input (colored ("Press ENTER to continue...\n " , ' green' ))
126
+ input (colored ("Press ENTER to continue...\n " , " green" ))
112
127
113
128
114
129
if __name__ == "__main__" :
0 commit comments