sgl-project / sgl-project/SpecForge
Naive brainstorm: accept length simulator
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.2k
- Forks
- 346
- Avg merge
- 4d 1h
- Merged PRs (30d)
- 41
Description
WARN: I have not learnt spec in details so this is just a naive brainstorm and I can be totally wrong!
Currently, it seems we we report accuracy and loss on eval data. However, what we really care about is the accept length.
Therefore, it would be great to have an API to simulate accept length on various eagle configurations at once, and then both call it automatically on train/val data, and also maybe expose as a normal function to allow users to use it.
From my naive view, we may firstly compute outputs of draft model, and then use very quick calculations (e.g. a sliding window on the output token ids) for each configuration to know the accept length. EDIT: briefly read EAGLE 3 and realize they have different hidden states, thus we may need to rerun draft model for each config, but anyway that may be lightweight compared to run full experiments using inference engine.
This has two use cases from my naive view: (1) We know the e2e metric we really care about during training, with almost no extra cost, which may help us a bit in training. (2) We know what may be the best config without having to test each and every eagle configuration, which is time consuming. (3) This may be useful for other scenarios I am interested in as a lightweight simulator.
Potential drawback: I dnk whether the error introduced by inference engine will be so large that this number may be inaccurate.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files or tests are named. Start by reviewing the existing evaluation metrics, EAGLE configurations, and inference paths to determine how accept length could be measured across configurations. Done would require a defined simulation API, train/validation integration, and evidence that its results are sufficiently accurate compared with inference-engine measurements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, pytorch
- Domain
- api, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100