Morpheus includes a number of pre-defined stage implementations to choose from when building a custom pipeline, each of which can be included and configured to suit your application.
There are likely going to be situations that require writing a custom stage. Morpheus stages are written in Python and optionally may include a C++ implementation. The following guides outline how to create your own stages in both Python and C++.
Note: The code for the above guides can be found in the
examples/developer_guide directory of the Morpheus repository. To build the C++ examples, pass
-DMORPHEUS_BUILD_EXAMPLES=ON to CMake when building Morpheus. Users building Morpheus with the provided
scripts/compile.sh script can do do by setting the
CMAKE_CONFIGURE_EXTRA_ARGS environment variable:
Morpheus includes, as of version 23.03, a number of pre-defined module implementations to choose from when building a custom pipeline. Modules can be thought of as units of work, which exist at a lower level than stages. Modules can be defined, registered, chained, nested, and loaded at runtime. Modules can be written in Python or C++.
There are likely going to be situations that require writing a custom module, either for creating your own reusable work units, or for creating a new compound module from a set of existing primitives. The following guides will walk through the process of creating a custom module in Python and C++.