remove eagle converter and reference - #672
Conversation
Signed-off-by: shanjiaz <hezhao@redhat.com>
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughThe PR removes the legacy Eagle conversion/model surface and related tests, narrows ChangesEagle conversion surface removal
Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
build_draft_model passes verifier=... to from_pretrained for the external-checkpoint auto-convert path. SpeculatorModel.from_pretrained had no verifier parameter, so it stayed in **kwargs, was forwarded to HF's from_pretrained, and reached the model constructor cls(config, **kwargs). Draft models take only `config`, so this raised: TypeError: Eagle3DraftModel.__init__() got an unexpected keyword argument 'verifier' Make verifier an explicit named parameter of from_pretrained so it is consumed (never forwarded to the constructor) and used directly for auto-conversion; forward it through the base-class re-dispatch alongside t2d/d2t. Stacked on #672 (eagle converter removal): with the attachment-style EagleSpeculator gone, no model constructor needs verifier, so consuming it at the loader boundary is sufficient. Signed-off-by: Rahul-Tuli <rtuli@redhat.com>
|
Are there any docs/readme's linking to this stuff? |
@fynnsu looks like there's one that claude didn't catch, will remove that. Never mind, https://docs.vllm.ai/projects/speculators/en/latest/reference/speculators/convert/eagle/eagle_converter/ this seems to be auto-generated by mkdocstrings? |
<!-- markdownlint-disable --> >⚠️ **DO NOT MERGE before #672.** This PR is stacked on #672 (remove eagle converter) and its base is `remove-eagle-converter`. Merging this first would pull in #672's changes prematurely and/or land against the wrong base. Merge order: **#672 first, then this.** Once #672 merges, I will rebase this onto `main`. The diff here is the 3-line loader change only. ## Purpose Fix `TypeError: Eagle3DraftModel.__init__() got an unexpected keyword argument 'verifier'` raised during draft model construction in `scripts/train.py --from-pretrained`. This breaks the EAGLE3 finetuning smoke test: ``` tests/e2e/smoke/test_finetuning_sanity.py::test_finetuning_weight_sanity TypeError: Eagle3DraftModel.__init__() got an unexpected keyword argument 'verifier' ``` `build_draft_model` passes `verifier=args.verifier_name_or_path` to `from_pretrained` (for the external-checkpoint auto-convert path added in #617). `SpeculatorModel.from_pretrained` had no `verifier` parameter, so it stayed in `**kwargs`, was forwarded to HF's `from_pretrained`, and reached the model constructor `cls(config, **kwargs)`. Draft models take only `config` and reject it. ## Fix Make `verifier` an explicit named parameter of `SpeculatorModel.from_pretrained` so it is consumed at the loader boundary (never forwarded into the constructor), used directly for auto-conversion, and forwarded through the base-class re-dispatch alongside `t2d`/`d2t`. With the attachment-style `EagleSpeculator` removed in #672, no model constructor takes `verifier` anymore, so consuming it is sufficient — no per-model special-casing needed. ## Tests - Failing test fixed: `tests/e2e/smoke/test_finetuning_sanity.py::test_finetuning_weight_sanity` (covered on CI). - `make style` / `make quality`: pass. - `pytest tests/unit/test_model.py tests/unit/convert/test_entrypoints.py`: 20 passed. ## Checklist I have filled in: - [x] The purpose of the PR, such as "Fix some issue (link existing issues this PR will resolve)". - [x] The test plan/results, such as providing test command and pasting the results. - [ ] (Optional) The necessary documentation update. - [x] I (a human) have written or reviewed the code in this pr to the best of my ability. --------- Signed-off-by: shanjiaz <hezhao@redhat.com> Signed-off-by: Rahul-Tuli <rtuli@redhat.com> Co-authored-by: shanjiaz <hezhao@redhat.com>
Purpose
Deprecate old eagle converter pathway. It's incompatible with rest of our converters and we haven't seen enough community engagement.
Tests
Checklist
I have filled in: