Description
openedon Dec 18, 2022
Is this a new feature, an improvement, or a change to existing functionality?
Improvement
How would you describe the priority of this feature request
Medium
Please provide a clear description of problem this feature solves
Morpheus maintains both C++ and Python variants of many stages, leading to confusion while running pipelines, testing, and debugging. It also allows for discrepancies between the implementations, as seen in #559.
By enforcing only a single implementation of a stage, we can reduce the complexity of the stage's API and eliminate discrepancies between the implementations, reduce required maintenance, and delete redundant code.
Describe your ideal solution
Consolidate, deprecate, and eventually remove Python implementation of stages in favor of existing C++ implementations:
-
add_classifications_stage.py
-
add_scores_stage.py
-
deserialize_stage.py
-
file_source_stage.py
-
filter_detections_stage.py
-
kafka_source_stage.py
-
preprocess_fil_stage.py
-
preprocess_nlp_stage.py
-
serialize_stage.py
-
triton_inference_stage.py
-
write_to_file_stage.py
Remove all references to CppConfig
and supports_cpp_node
, and update documentation accordingly.
Describe any alternatives you have considered
Maintain parity and testing of both Python and C++ implementations.
Additional context
If we absolutely need both a C++ and a Python implementation of a stage, we can either split that in to two stages, or provide a constructor argument dictating which implementation should be used.
Code of Conduct
- I agree to follow this project's Code of Conduct
- I have searched the open feature requests and have found no duplicates for this feature request
Metadata
Assignees
Labels
Type
Projects
Status
Todo