Laguna-M.1-FP8 / image /LOAD.md
joerowell's picture
initial commit
fb051c8
|
Raw
History Blame Contribute Delete
2.22 kB
# 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`).