[WIP] Model Conversion Framework for EAGLE and HASS #32
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Model Conversion Framework for EAGLE and HASS
Summary
This PR introduces a model conversion framework that enables users to convert existing EAGLE (v1/v3) and HASS speculative decoding models into the standardized Speculators format. The framework provides both a programmatic API and CLI interface for seamless conversion workflows.
Key Features:
speculators convert
for easy command-line usageImplementation Details
Base Converter (
converters/base.py
)Configuration Mapping
LlamaEagleSpeculatorConfig
with appropriate settingsspeculators_config
with algorithm info and verifier detailsUsage Examples
Programmatic API
CLI
Files Added/Modified
New Files
src/speculators/converters/__init__.py
- Package exportssrc/speculators/converters/base.py
- Base converter class and utilitiessrc/speculators/converters/llama_eagle.py
- EAGLE/HASS converter implementationsrc/speculators/convert.py
- High-level conversion APIsrc/speculators/cli/__init__.py
- CLI package exportssrc/speculators/cli/main.py
- Main CLI entry pointsrc/speculators/cli/convert.py
- Convert command implementationModified Files
src/speculators/__init__.py
- Addedconvert
to exportspyproject.toml
- Added typer dependency and CLI entry pointChecklist