jina-ai / serve

☁️ Build multimodal AI applications with cloud-native stack
https://jina.ai/serve
Apache License 2.0
21.15k stars 2.22k forks source link

Renaming the Transformer Executor #108

Closed hanxiao closed 4 years ago

hanxiao commented 4 years ago

Unfortunately, the word "transformer" is overly-used in the NLP community. Keep using Transformer Executor will make our NLP users confusing. We need to rename the module transformer and the class BaseTransformer to something else.

Possible alternatives:

hanxiao commented 4 years ago

@nan-wang please share your comments on this

hanxiao commented 4 years ago

Forger is someone who fake things for own good, bad word

hanxiao commented 4 years ago

Mapper

nan-wang commented 4 years ago

Preprocessor. I couldn't figure out a scenario that we use transformer after encoding and indexing.

nan-wang commented 4 years ago

Mapper

mapper also sounds good. It is somehow a synonymous of transformer. Forger and Formulator might need a second thought to figure out what they are.

hanxiao commented 4 years ago

Crafter

hanxiao commented 4 years ago

Preprocessor. I couldn't figure out a scenario that we use transformer after encoding and indexing.

No, not preprocessor. Preprocessor is something we use back in the old days, I rule it out immediately when building jina, because if we call it Preprocessor then there will be a Postprocessor. They basically do the same thing.

Back to your question, the need for Postprocessor is true. In the query time, sometimes the doc content need to be complemented/re-rendered even after the ranking, this is where another transformation needs to kick in. For example, the index stores a compressed/encrypted doc, the last step is therefore to "transform" it back to the original via decompressing/decrypting and returning to the Gateway.

nan-wang commented 4 years ago

‘Wrangler’ or ‘Munger’. Both are borrowed from data science.

nan-wang commented 4 years ago

‘Wrangler’ or ‘Munger’. Both are borrowed from data science.