| 1 | # SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. |
| 2 | # SPDX-License-Identifier: Apache-2.0 |
| 3 | # SPDX-FileCopyrightText: Copyright contributors to the vLLM project |
| 4 | |
| 5 | """Re-export the weight-transfer backend maintained by ModelExpress. |
| 6 | |
| 7 | Install ModelExpress from the main branch's modelexpress_client/python |
| 8 | subdirectory. |
| 9 | """ |
| 10 | |
| 11 | try: |
| 12 | from modelexpress import configure_vllm_logging |
| 13 | from modelexpress_rl.inference.engines.vllm.weight_transfer_engine import ( |
| 14 | ModelExpressWeightTransferEngine, |
| 15 | ModelExpressWeightTransferInitInfo, |
| 16 | ModelExpressWeightTransferUpdateInfo, |
| 17 | ) |
| 18 | except ModuleNotFoundError as exc: |
| 19 | if exc.name not in { |
| 20 | "modelexpress", |
| 21 | "modelexpress_rl", |
| 22 | "modelexpress_rl.inference", |
| 23 | "modelexpress_rl.inference.engines", |
| 24 | "modelexpress_rl.inference.engines.vllm", |
| 25 | "modelexpress_rl.inference.engines.vllm.weight_transfer_engine", |
| 26 | }: |
| 27 | raise |
| 28 | raise ImportError( |
| 29 | "The 'modelexpress' weight transfer backend requires ModelExpress. " |
| 30 | "Install it with `uv pip install " |
| 31 | "'git+https://github.com/ai-dynamo/modelexpress@main" |
| 32 | "#subdirectory=modelexpress_client/python'`." |
| 33 | ) from exc |
| 34 | |
| 35 | configure_vllm_logging() |
| 36 | |
| 37 | __all__ = [ |
| 38 | "ModelExpressWeightTransferEngine", |
| 39 | "ModelExpressWeightTransferInitInfo", |
| 40 | "ModelExpressWeightTransferUpdateInfo", |
| 41 | ] |