[Feature] Add Azure Blob Storage support for RunAI Model Streamer#34614
[Feature] Add Azure Blob Storage support for RunAI Model Streamer#34614DarkLight1337 merged 1 commit intovllm-project:mainfrom
Conversation
There was a problem hiding this comment.
Code Review
This pull request adds support for loading models from Azure Blob Storage using the RunAI Model Streamer. The changes are well-implemented and consistent across the codebase. The dependency runai-model-streamer is correctly updated to a version that supports Azure, and the azure extra is added to all relevant installation configurations, including the Dockerfile, requirements files, and setup.py. The utility functions for detecting storage schemes are updated, and new tests are added to cover the Azure URI format. The documentation and error messages are also updated to reflect the new capability. The changes are correct and I see no issues.
|
👋 Hi! Thank you for contributing to the vLLM project. 💬 Join our developer Slack at https://slack.vllm.ai to discuss your PR in #pr-reviews, coordinate on features in #feat- channels, or join special interest groups in #sig- channels. Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run You ask your reviewers to trigger select CI tests on top of Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging. To run CI, PR reviewers can either: Add If you have any questions, please reach out to us on Slack at https://slack.vllm.ai. 🚀 |
e7f57b5 to
6b345d5
Compare
af24d73 to
0995572
Compare
|
Documentation preview: https://vllm--34614.org.readthedocs.build/en/34614/ |
omer-dayan
left a comment
There was a problem hiding this comment.
Looks graet!
Thanks a lot
|
@DarkLight1337 can you please review? |
|
@hasethuraman may you please set the streamer version to the latest - 0.15.7 ? |
Head branch was pushed to by a user without write access
f6f0a0c to
f8d8846
Compare
|
Thanks @noa-neria on updating here. Have bumped up the runai version to 0.15.7. Please take a look |
|
LGTM, thanks |
f8d8846 to
6310c07
Compare
|
Hi @hasethuraman, the pre-commit checks have failed. Please run: uv pip install pre-commit
pre-commit install
pre-commit run --all-filesThen, commit the changes and push to your branch. For future commits, Tip Is
|
I have not touched kimi_audio.py but precommit is failing for the untouched file. @andrew @DarkLight1337 any pointers? |
6310c07 to
c46c6d1
Compare
|
@DarkLight1337 I dont have rights to merge. Required CI build is success. If all good, could you help me to merge this PR? |
|
This pull request has merge conflicts that must be resolved before it can be |
c46c6d1 to
73a70db
Compare
Signed-off-by: hasethuraman <hsethuraman@microsoft.com>
73a70db to
1c3dc4e
Compare
…lm-project#34614) Signed-off-by: hasethuraman <hsethuraman@microsoft.com> Signed-off-by: Athrael Soju <athrael.soju@gmail.com>
…lm-project#34614) Signed-off-by: hasethuraman <hsethuraman@microsoft.com>
…lm-project#34614) Signed-off-by: hasethuraman <hsethuraman@microsoft.com>
…lm-project#34614) Signed-off-by: hasethuraman <hsethuraman@microsoft.com>
Purpose
Add Azure Blob Storage (
az://) as a supported object storage backend for loading models via the RunAI Model Streamer, alongside the existing S3 and GCS support.This enables users to load models directly from Azure Blob Storage using:
Authentication uses DefaultAzureCredential (supports az login, managed identity, environment variables, etc.).
Changes:
Test Plan
Unit tests for URI detection
pytest tests/transformers_utils/test_utils.py::test_is_azure
pytest tests/transformers_utils/test_utils.py::test_is_cloud_storage
pytest tests/model_executor/model_loader/runai_streamer_loader/test_runai_utils.py::test_is_runai_obj_uri
E2E test (requires Azure credentials and AZURE_STORAGE_ACCOUNT_NAME set)
AZURE_STORAGE_ACCOUNT_NAME= vllm serve az:/// --load-format runai_streamer
Test Result
Unit tests — all pass:
test_is_azure: PASSED
test_is_s3: PASSED
test_is_gcs: PASSED
test_is_cloud_storage: PASSED
test_is_runai_obj_uri: PASSED
File listing from Azure Blob Storage:
$ AZURE_STORAGE_ACCOUNT_NAME=harikaito python3 -c "from vllm.transformers_utils.runai_utils import list_safetensors; print('\n'.join(list_safetensors('az://qwen/Qwen2.5-Coder-7B-Instruct')))"
Essential Elements of an Effective PR Description Checklist
supported_models.mdandexamplesfor a new model.