-
Notifications
You must be signed in to change notification settings - Fork 0
Eagle speculator #31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Eagle speculator #31
Conversation
📦 Build Artifacts Available |
📦 Build Artifacts Available |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not terribly familiar with speculators, but looking through this specifically for coding style and class definition, things look good to me! One question on structure
3f6da6c
to
f5ac7a4
Compare
📦 Build Artifacts Available |
116bb5b
to
db86eb6
Compare
serialization support - Add LlamaEagleSpeculator model class - Implement model serialization/deserialization - Add torch as a project dependency - Include unit and integration tests - Fixes for serialization handling This introduces the core LlamaEagleSpeculator functionality with full serialization support
f5ac7a4
to
7895196
Compare
📦 Build Artifacts Available |
📦 Build Artifacts Available |
Add configuration classes for EAGLE1 and HASS speculator models without the model implementation. This separates the config from the actual model code. - Add LlamaDecoderParameters for Llama decoder configuration - Add LlamaEagleSpeculatorConfig with support for both EAGLE1 and HASS variants - Include config-only unit tests 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
📦 Build Artifacts Available |
LlamaEagleSpeculator
class foreagle, eagle2, hass
speculatorsfrom_pretrained
,save_pretrained
LlamaEagleSpeculatorConfig
to control instantiation of the modelPR description includes a verification script that checks model weights can be loaded
Open Questions: Does the final norm need to be included?
Verification Script for EAGLE 1
Verification Output
Eagle Config
```{
"eagle_variant": "eagle",
"extra_layernorm_positions": null,
"fc_bias": false,
"has_no_defaults_at_init": false,
"inputs": [
"input_ids",
"hidden_states[-1]"
],
"inputs_hidden_states_normalized": false,
"llama_decoder_params": {
"attention_bias": false,
"attention_dropout": 0.0,
"bos_token_id": null,
"eos_token_id": null,
"hidden_act": "silu",
"hidden_size": 4096,
"intermediate_size": 14336,
"max_position_embeddings": 2048,
"mlp_bias": false,
"num_attention_heads": 32,
"num_key_value_heads": 8,
"pad_token_id": null,
"rms_norm_eps": 1e-05,
"rope_theta": 500000.0,
"vocab_size": 128256
},
"model_type": "speculator_model",
"num_hidden_layers": 1,
"replace_first_layer_norm": true,
"speculators_config": null,
"speculators_model_type": "llama_eagle",
"speculators_version": "0.1.0.dev7",
"transformer_input_type": "linear_no_bias",
"transformer_layer_type": "LlamaDecoderLayer",
"transformer_remove_last_layer_norm": false,
"transformers_version": "4.52.4",
"use_extra_layernorms": false,
"use_verifier_lm_head": false
}