| # Image |
|
|
| `laguna-vllm-v0.19.0-overlay.tar.gz` is `vllm/vllm-openai:v0.19.0` plus the |
| Laguna model file (`vllm.model_executor.models.laguna`), the `poolside_v1` |
| tool parser (`vllm.tool_parsers.poolside_v1_tool_parser`), the |
| `poolside_v1` reasoning parser |
| (`vllm.reasoning.poolside_v1_reasoning_parser`), and `LagunaConfig` |
| (`vllm.transformers_utils.configs.laguna`). No CUDA kernels are rebuilt — |
| the base image's SM90/SM90A binaries are used unchanged. |
|
|
| ## Load |
|
|
| ```bash |
| gunzip -c laguna-vllm-v0.19.0-overlay.tar.gz | docker load |
| ``` |
|
|
| The loaded image is tagged `vllm-laguna:v0.19.0-overlay-port`. |
|
|
| ## Integrity check |
|
|
| ```bash |
| sha256sum laguna-vllm-v0.19.0-overlay.tar.gz |
| # expected: 4266d7fc0fda731e774beeb932493cc4f2de1a9c6030babd32eae30f7dc60b3a |
| ``` |
|
|
| ## What's inside |
|
|
| - Base: `vllm/vllm-openai:v0.19.0` (PyTorch, CUDA, Triton, FlashAttention, |
| compressed-tensors, etc.) |
| - Added Python modules: |
| - `vllm/model_executor/models/laguna.py` — `LagunaForCausalLM` |
| - `vllm/tool_parsers/poolside_v1_tool_parser.py` — `PoolsideV1ToolParser` |
| - `vllm/reasoning/poolside_v1_reasoning_parser.py` — `PoolsideV1ReasoningParser` |
| - `vllm/transformers_utils/configs/laguna.py` — `LagunaConfig` |
| - Registry patches: `LagunaForCausalLM` added to the model registry; |
| `"poolside_v1"` added to the tool-parser and reasoning-parser lazy-register |
| dicts; `"laguna"` added to the config registry (so checkpoints don't need |
| a remote `configuration_laguna.py` and can be served without |
| `--trust-remote-code`). |
| - `transformers_utils/config.py::patch_rope_parameters` is patched to leave |
| a nested `rope_parameters` dict (e.g. `{full_attention: {...}, |
| sliding_attention: {...}}`) intact instead of overwriting it with the |
| flat `rope_scaling`. Without this, interleaved-attention configs raise |
| `KeyError 'full_attention'` at the per-layer attention site on |
| transformers <5. |
| - Bundled convenience scripts: |
| - `/usr/local/bin/serve-laguna.sh` — Laguna-M serve wrapper (TP=4) |
| - `/usr/local/bin/run_bench_multiple.py` — multi-config benchmark runner |
|
|
| ## Entrypoint |
|
|
| Default entrypoint is `vllm serve`, same as the base image. The first |
| positional argument is the model path (mount a checkpoint dir into `/model`). |
|
|