部署
若要部署此解決方案,您必須先設定「專案」目錄。
定義主要專案目錄的環境變數。
export PROJECT_DIR=~/morpheus_fraud_detection
mkdir -p $PROJECT_DIR
cd $PROJECT_DIR
第 1 航站:執行 Morpheus 管線
此命令會啟動 Morpheus 管線 (Docker 容器) 泳道。
管線將會初始化,然後等待,監聽資料以到達
Kafka Topic: Input
。cd $PROJECT_DIR/Morpheus
docker run --rm -it --net=host --cap-add=sys_nice \ --runtime=nvidia --gpus=all \ -v $(pwd):/morpheus \ nvcr.io/nvidia/morpheus/morpheus:25.02-runtime bash
# --- INSIDE THE CONTAINER ---
cd /morpheus
conda env update --solver=libmamba -n ${CONDA_DEFAULT_ENV} --file ./conda/environments/examples_cuda-125_arch-$(arch).yaml python examples/gnn_fraud_detection_pipeline/run.py
預期的輸出:在建立管線時,您會看到來自 Morpheus 的日誌。如此一來,它就會停滯,這是目前主動監聽訊息時的正確行為。
終端機 2:執行 Kafka 用戶
此命令會啟動主機環境泳道中的 Python 用戶。
它會訂閱 Kafka Topic: Output
,並顯示 Morpheus 管線發佈的任何結果。
cd $PROJECT_DIR
source kafka_env/bin/activate
python3 consumer.py
預期的輸出:您會看到
"Listening for fraud detection results..."
訊息,而終端機將會等待。
終端機 3:執行 Kafka 產生器
此指令會啟動 Python 產生器,後者可從 Transaction Data
檔案讀取。
它會從 Input Stream
開始進入 Kafka Topic: Input
。此動作會觸發整個端對端流程。
cd $PROJECT_DIR
source kafka_env/bin/activate
python3 producer.py
預期的輸出:資料發佈時,您會看到一系列的
"Sent transaction index..."
訊息。與此同時,您將看到 Terminal 1 的 Morpheus 管道開始處理資料,最終詐騙警示將出現在 Terminal 2。