Stages Documentation#
Stages are the building blocks of Morpheus pipelines. Below is a list of the most commonly used stages. For a full list of stages, refer to the stages API morpheus.stages. In addition to this there are several custom stages contained in the Examples and Developer Guides.
Table of Contents#
DOCA#
DOCA Source Stage
DocaSourceStageA source stage used to receive raw packet data in GPU memory from a ConnectX NIC using DOCA GPUNetIO function within a CUDA kernel to actually receive and process Ethernet network packets. Receive packets information is passed to next pipeline stage in the form of RawPacketMessage. This stage is not compiled by default refer to the DOCA Example for details on building this stage.DOCA Convert Stage
DocaConvertStageConvert the RawPacketMessage format received by the DOCA Source Stage into a more complex message format MetaMessage. Packets’ info never leave the GPU memory. This stage is not compiled by default refer to the DOCA Example for details on building this stage.
General#
Linear Modules Stage
LinearModulesStageLoads an existing, registered, module and wraps it as a Morpheus stage. Refer to Morpheus Modules for details on modules.Monitor Stage
MonitorStageDisplay throughput numbers at a specific point in the pipeline.Multi Port Module Stage
MultiPortModulesStageLoads an existing, registered, multi-port module and wraps it as a multi-port Morpheus stage. Refer to Morpheus Modules for details on modules.Trigger Stage
TriggerStageBuffer data until the previous stage has completed, useful for testing performance of one stage at a time.
Inference#
PyTorch Inference Stage
PyTorchInferenceStagePyTorch inference stage used for most pipeline modes with the exception of Auto Encoder.Triton Inference Stage
TritonInferenceStageInference stage which utilizes a Triton Inference Server.
Input#
App Shield Source Stage
AppShieldSourceStageLoad App Shield messages from one or more plugins into a DataFrame.Control Message File Source Stage
ControlMessageFileSourceStageReceives control messages from different sources specified by a list of (fsspec)[https://filesystem-spec.readthedocs.io/en/latest/api.html?highlight=open_files#fsspec.open_files] strings.Control Message Kafka Source Stage
ControlMessageKafkaSourceStageLoad control messages from a Kafka cluster.Databricks Delta Lake Source Stage
DataBricksDeltaLakeSourceStageSource stage used to load messages from a DeltaLake table.File Source Stage
FileSourceStageLoad messages from a file.HTTP Client Source Stage
HttpClientSourceStagePoll a remote HTTP server for incoming data.HTTP Server Source Stage
HttpServerSourceStageStart an HTTP server and listens for incoming requests on a specified endpoint.In Memory Source Stage
InMemorySourceStageInput source that emits a pre-defined list of DataFrames.Kafka Source Stage
KafkaSourceStageLoad messages from a Kafka cluster.RSS Source Stage
RSSSourceStageLoad RSS feed items into a pandas DataFrame.
LLM#
LLM Engine Stage
LLMEngineStageExecute an LLM engine within a Morpheus pipeline.
Output#
HTTP Client Sink Stage
HttpClientSinkStageWrite all messages to an HTTP endpoint.HTTP Server Sink Stage
HttpServerSinkStageStart an HTTP server and listens for incoming requests on a specified endpoint.In Memory Sink Stage
InMemorySinkStageCollect incoming messages into a list that can be accessed after the pipeline is complete.Databricks Delta Lake Sink Stage
DataBricksDeltaLakeSinkStageWrite messages to a DeltaLake table.Write To Elastic Search Stage
WriteToElasticsearchStageWrite the messages as documents to Elasticsearch.Write To File Stage
WriteToFileStageWrite all messages to a file.Write To Kafka Stage
WriteToKafkaStageWrite all messages to a Kafka cluster.Write To Vector DB Stage
WriteToVectorDBStageWrite all messages to a Vector Database.
Post-process#
Add Classifications Stage
AddClassificationsStageAdd detected classifications to each message.Add Scores Stage
AddScoresStageAdd probability scores to each message.Filter Detections Stage
FilterDetectionsStageFilter message by a classification threshold.Generate Viz Frames Stage
GenerateVizFramesStageWrite out visualization DataFrames.MLflow Drift Stage
MLFlowDriftStageReport model drift statistics to MLflow.Serialize Stage
SerializeStageInclude & exclude columns from messages.Time Series Stage
TimeSeriesStagePerform time series anomaly detection and add prediction.
Pre-process#
Deserialize Stage
DeserializeStagePartition messages based on thepipeline_batch_sizeparameter of the pipeline’smorpheus.config.Configobject.Drop Null Stage
DropNullStageDrop null data entries from a DataFrame.Preprocess FIL Stage
PreprocessFILStagePrepare FIL input DataFrames for inference.Preprocess NLP Stage
PreprocessNLPStagePrepare NLP input DataFrames for inference.