This is an automated email from the ASF dual-hosted git repository. Amar3tto pushed a commit to branch fix-inference-ml in repository https://gitbox.apache.org/repos/asf/beam.git
commit 9faa3c2410ac92e21eef2db417c2fd5352aba928 Author: Vitaly Terentyev <[email protected]> AuthorDate: Tue Aug 4 16:51:31 2026 +0400 Test new pipelines --- .../beam_Inference_Python_Benchmarks_Dataflow.yml | 213 +-------------------- 1 file changed, 4 insertions(+), 209 deletions(-) diff --git a/.github/workflows/beam_Inference_Python_Benchmarks_Dataflow.yml b/.github/workflows/beam_Inference_Python_Benchmarks_Dataflow.yml index fb7fecd2c01..49e63f6535b 100644 --- a/.github/workflows/beam_Inference_Python_Benchmarks_Dataflow.yml +++ b/.github/workflows/beam_Inference_Python_Benchmarks_Dataflow.yml @@ -107,134 +107,6 @@ jobs: # The env variables are created and populated in the test-arguments-action as "<github.job>_test_arguments_<argument_file_paths_index>" - name: get current time run: echo "NOW_UTC=$(date '+%m%d%H%M%S' --utc)" >> $GITHUB_ENV - - name: Build VLLM Development Image - id: build_vllm_image - uses: ./.github/actions/build-push-docker-action - with: - dockerfile_path: 'sdks/python/apache_beam/ml/inference/test_resources/vllm.dockerfile' - image_name: 'us-docker.pkg.dev/apache-beam-testing/beam-temp/beam-vllm-gpu-base' - image_tag: ${{ github.sha }} - - name: Run VLLM Gemma Batch Test - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.vllm_gemma_benchmarks \ - -Prunner=DataflowRunner \ - -PsdkLocationOverride=false \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/vllm_tests_requirements.txt '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_8 }} --mode=batch --job_name=benchmark-tests-vllm-with-gemma-2b-it-batch-${{env.NOW_UTC}} --sdk_container_image=${{ steps.build_vllm_image.outputs.image_url }}' - - name: run Pytorch Sentiment Streaming using Hugging Face distilbert-base-uncased model - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_sentiment_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/torch_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_6 }} --mode=streaming --job_name=benchmark-tests-pytorch-sentiment-distilbert-base-uncased-streaming-${{env.NOW_UTC}} --output_table=apache-beam-testing.beam_run_inference.result_sentiment_distilbert_base_uncased' \ - - name: run Pytorch Sentiment Batch using Hugging Face distilbert-base-uncased model - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_sentiment_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/torch_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_7 }} --mode=batch --job_name=benchmark-tests-pytorch-sentiment-distilbert-base-uncased-batch-${{env.NOW_UTC}} --output_table=apache-beam-testing.beam_run_inference.result_sentiment_distilbert_base_uncased' \ - - name: run Pytorch Vision Classification with Resnet 101 - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_image_classification_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/torch_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_1 }} --job_name=benchmark-tests-pytorch-imagenet-python-101-${{env.NOW_UTC}} --output=gs://temp-storage-for-end-to-end-tests/torch/result_resnet101-${{env.NOW_UTC}}.txt' \ - - name: run Pytorch Imagenet Classification with Resnet 152 - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_image_classification_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/torch_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_2 }} --job_name=benchmark-tests-pytorch-imagenet-python-152-${{env.NOW_UTC}} --output=gs://temp-storage-for-end-to-end-tests/torch/result_resnet152-${{env.NOW_UTC}}.txt' \ - - name: run Pytorch Language Modeling using Hugging Face bert-base-uncased model - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_language_modeling_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/torch_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_3 }} --job_name=benchmark-tests-pytorch-language-modeling-bert-base-uncased-${{env.NOW_UTC}} --output=gs://temp-storage-for-end-to-end-tests/torch/result_bert_base_uncased-${{env.NOW_UTC}}.txt' \ - - name: run Pytorch Langauge Modeling using Hugging Face bert-large-uncased model - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_language_modeling_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/torch_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_4 }} --job_name=benchmark-tests-pytorch-language-modeling-bert-large-uncased-${{env.NOW_UTC}} --output=gs://temp-storage-for-end-to-end-tests/torch/result_bert_large_uncased-${{env.NOW_UTC}}.txt' \ - - name: run Pytorch Imagenet Classification with Resnet 152 with Tesla T4 GPU - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_image_classification_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/torch_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_5 }} --job_name=benchmark-tests-pytorch-imagenet-python-gpu-${{env.NOW_UTC}} --output=gs://temp-storage-for-end-to-end-tests/torch/result_resnet152_gpu-${{env.NOW_UTC}}.txt' \ - - name: run Table Row Inference Sklearn Batch - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.table_row_inference_benchmark \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/table_row_inference_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_9 }} --autoscaling_algorithm=NONE --metrics_table=result_table_row_inference_batch --influx_measurement=result_table_row_inference_batch --mode=batch --input_file=gs://apache-beam-ml/testing/inputs/table_rows_100k_benchmark.jsonl --input_expand_factor=100 --output_table=apache-beam-testing:beam_run_inference.result_table_row_inference_batch_outputs --job_name=benchmark-tests-table-row-inference- [...] - - name: run Table Row Inference Sklearn Stream - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.table_row_inference_benchmark \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/table_row_inference_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_10 }} --autoscaling_algorithm=THROUGHPUT_BASED --max_num_workers=20 --metrics_table=result_table_row_inference_stream --influx_measurement=result_table_row_inference_stream --mode=streaming --input_subscription=projects/apache-beam-testing/subscriptions/table_row_inference_benchmark --window_size_sec=60 --trigger_interval_sec=30 --timeout_ms=900000 --output_table=apache-beam-testing:beam_run_inf [...] - - name: run PyTorch Image Object Detection Faster R-CNN ResNet-50 Batch CPU - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_image_object_detection_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_image_object_detection_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_12 }} --device=CPU --mode=batch --job_name=benchmark-tests-pytorch-image-object-detection-batch-${{env.NOW_UTC}} --metrics_table=torch_inference_image_object_detection_batch_cpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_image_object_detection_batch_cpu' \ - name: run PyTorch Image Captioning BLIP + CLIP Batch CPU uses: ./.github/actions/gradle-command-self-hosted-action timeout-minutes: 180 @@ -246,17 +118,6 @@ jobs: -PpythonVersion=3.10 \ -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_image_captioning_requirements.txt \ '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_13 }} --device=CPU --mode=batch --job_name=benchmark-tests-pytorch-image-captioning-batch-${{env.NOW_UTC}} --metrics_table=torch_inference_image_captioning_batch_cpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_image_captioning_batch_cpu' - - name: run PyTorch Image Object Detection Faster R-CNN ResNet-50 Batch GPU - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_image_object_detection_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_image_object_detection_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_12 }} --device=GPU --worker_accelerator=type=nvidia-tesla-t4,count=1,install-nvidia-driver=true --mode=batch --job_name=benchmark-tests-pytorch-image-object-detection-batch-${{env.NOW_UTC}} --metrics_table=torch_inference_image_object_detection_batch_gpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_image_object_detection_batch_gpu' \ - name: run PyTorch Image Captioning BLIP + CLIP Batch GPU uses: ./.github/actions/gradle-command-self-hosted-action timeout-minutes: 180 @@ -268,17 +129,6 @@ jobs: -PpythonVersion=3.10 \ -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_image_captioning_requirements.txt \ '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_13 }} --device=GPU --worker_accelerator=type=nvidia-tesla-t4,count=1,install-nvidia-driver=true --mode=batch --job_name=benchmark-tests-pytorch-image-captioning-batch-${{env.NOW_UTC}} --metrics_table=torch_inference_image_captioning_batch_gpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_image_captioning_batch_gpu' \ - - name: run PyTorch Image Object Detection Faster R-CNN ResNet-50 Streaming CPU - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_image_object_detection_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_image_object_detection_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_12 }} --device=CPU --mode=streaming --job_name=benchmark-tests-pytorch-image-object-detection-streaming-${{env.NOW_UTC}} --metrics_table=torch_inference_image_object_detection_streaming_cpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_image_object_detection_streaming_cpu' \ - name: run PyTorch Image Captioning BLIP + CLIP Streaming CPU uses: ./.github/actions/gradle-command-self-hosted-action timeout-minutes: 180 @@ -290,17 +140,6 @@ jobs: -PpythonVersion=3.10 \ -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_image_captioning_requirements.txt \ '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_13 }} --device=CPU --mode=streaming --job_name=benchmark-tests-pytorch-image-captioning-streaming-${{env.NOW_UTC}} --metrics_table=torch_inference_image_captioning_streaming_cpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_image_captioning_streaming_cpu' - - name: run PyTorch Image Object Detection Faster R-CNN ResNet-50 Streaming GPU - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_image_object_detection_benchmarks \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_image_object_detection_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_12 }} --device=GPU --worker_accelerator=type=nvidia-tesla-t4,count=1,install-nvidia-driver=true --mode=streaming --job_name=benchmark-tests-pytorch-image-object-detection-streaming-${{env.NOW_UTC}} --metrics_table=torch_inference_image_object_detection_streaming_gpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_image_object_detection_streaming_gpu' \ - name: run PyTorch Image Captioning BLIP + CLIP Streaming GPU uses: ./.github/actions/gradle-command-self-hosted-action timeout-minutes: 180 @@ -356,58 +195,14 @@ jobs: -PpythonVersion=3.10 \ -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_rightfit_requirements.txt \ '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_11 }} --device=GPU --experiments=enable_streaming_rightfitting,worker_accelerator=type:nvidia-tesla-t4;count:1;install-nvidia-driver:5xx --mode=streaming --job_name=benchmark-tests-pytorch-imagenet-rightfit-streaming-${{env.NOW_UTC}} --metrics_table=torch_inference_imagenet_stream_rightfit_once_gpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_imagenet_stream_right [...] - - name: run MLTransform Generate Vocab Batch - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.mltransform_generate_vocab_benchmark \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/examples/ml_transform/mltransform_generate_vocab_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_14 }} --job_name=benchmark-tests-mltransform-generate-vocab-batch-${{env.NOW_UTC}} --artifact_location=gs://temp-storage-for-perf-tests/mltransform/vocab_artifacts_${{env.NOW_UTC}} --output_vocab=gs://temp-storage-for-perf-tests/mltransform/vocab_outputs/mltransform_generate_vocab_batch_${{env.NOW_UTC}}' - - name: run MLTransform One-Hot Encoding Batch - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.mltransform_one_hot_encoding_benchmark \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/examples/ml_transform/mltransform_one_hot_encoding_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_15 }} --autoscaling_algorithm=NONE --metrics_table=mltransform_one_hot_encoding_batch --influx_measurement=mltransform_one_hot_encoding_batch --job_name=benchmark-tests-mltransform-one-hot-encoding-batch-${{env.NOW_UTC}} --output_file=gs://temp-storage-for-end-to-end-tests/mltransform/one_hot_output_${{env.NOW_UTC}} --artifact_location=gs://temp-storage-for-end-to-end-tests/mltransform/artifacts [...] - - name: run MLTransform Image Embedding GPU Batch - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.mltransform_image_embedding_benchmark \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/transforms/mltransform_embedding_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_16 }} --artifact_location=gs://temp-storage-for-perf-tests/loadtests/mltransform_image_embedding_gpu/artifacts-${{env.NOW_UTC}} --job_name=benchmark-tests-mltransform-image-embedding-gpu-batch-${{env.NOW_UTC}}' - - name: run MLTransform Text Embedding Batch - uses: ./.github/actions/gradle-command-self-hosted-action - timeout-minutes: 180 - with: - gradle-command: :sdks:python:apache_beam:testing:load_tests:run - arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.mltransform_text_embedding_benchmark \ - -Prunner=DataflowRunner \ - -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/transforms/mltransform_embedding_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_17 }} --output=gs://temp-storage-for-perf-tests/loadtests/mltransform_text_embedding/results-${{env.NOW_UTC}} --artifact_location=gs://temp-storage-for-perf-tests/loadtests/mltransform_text_embedding/artifacts-${{env.NOW_UTC}} --job_name=benchmark-tests-mltransform-text-embedding-batch-${{env.NOW_UTC}}' - - name: run MLTransform Image Embedding CPU Batch + - name: run PyTorch Image Object Detection Faster R-CNN ResNet-50 Batch CPU uses: ./.github/actions/gradle-command-self-hosted-action timeout-minutes: 180 with: gradle-command: :sdks:python:apache_beam:testing:load_tests:run arguments: | - -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.mltransform_image_embedding_benchmark \ + -PloadTest.mainClass=apache_beam.testing.benchmarks.inference.pytorch_image_object_detection_benchmarks \ -Prunner=DataflowRunner \ -PpythonVersion=3.10 \ - -PloadTest.requirementsTxtFile=apache_beam/ml/transforms/mltransform_embedding_tests_requirements.txt \ - '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_18 }} --artifact_location=gs://temp-storage-for-perf-tests/loadtests/mltransform_image_embedding_cpu/artifacts-${{env.NOW_UTC}} --job_name=benchmark-tests-mltransform-image-embedding-cpu-batch-${{env.NOW_UTC}}' + -PloadTest.requirementsTxtFile=apache_beam/ml/inference/pytorch_image_object_detection_requirements.txt \ + '-PloadTest.args=${{ env.beam_Inference_Python_Benchmarks_Dataflow_test_arguments_12 }} --device=CPU --mode=batch --job_name=benchmark-tests-pytorch-image-object-detection-batch-${{env.NOW_UTC}} --metrics_table=torch_inference_image_object_detection_batch_cpu --output_table=apache-beam-testing.beam_run_inference.result_torch_inference_image_object_detection_batch_cpu'
