2018-01-07 22:01:07 +00:00
|
|
|
from senpy import SentimentBox, MappingMixin, easy_test
|
|
|
|
|
|
|
|
from mypipeline import pipeline
|
|
|
|
|
|
|
|
|
|
|
|
class PipelineSentiment(MappingMixin, SentimentBox):
|
|
|
|
'''
|
|
|
|
This is a pipeline plugin that wraps a classifier defined in another module
|
|
|
|
(mypipeline).
|
|
|
|
'''
|
|
|
|
author = '@balkian'
|
|
|
|
version = 0.1
|
|
|
|
maxPolarityValue = 1
|
|
|
|
minPolarityValue = -1
|
|
|
|
|
|
|
|
mappings = {
|
|
|
|
1: 'marl:Positive',
|
|
|
|
-1: 'marl:Negative'
|
|
|
|
}
|
|
|
|
|
2018-01-10 08:50:52 +00:00
|
|
|
def predict(self, input):
|
2018-01-07 22:01:07 +00:00
|
|
|
return pipeline.predict([input, ])[0]
|
|
|
|
|
|
|
|
test_cases = [
|
|
|
|
{
|
|
|
|
'input': 'The sentiment for senpy should be positive :)',
|
|
|
|
'polarity': 'marl:Positive'
|
|
|
|
},
|
|
|
|
{
|
|
|
|
'input': 'The sentiment for senpy should be negative :(',
|
|
|
|
'polarity': 'marl:Negative'
|
|
|
|
}
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
easy_test()
|