Skip to content

Commit d9952d1

Browse files
sleepcootony3liuliutao
authored
Add a SpecBundle dashboard (#382)
* Publish spec-bundle dashboard Co-authored-by: tony3liu <tony3liu@icloud.com> * Update publish_docs.yaml * Update publish_docs.yaml * fix bug * fix bug * fix gbu * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug * refactor: migrate benchmark dashboard from XLSX to JSON data format * fix bug * fix bug * fix code format * fix bug * fix bug * fix bug * fix bug * fix bug * fix bug --------- Co-authored-by: tony3liu <tony3liu@icloud.com> Co-authored-by: liutao <liutao@zhihe.com>
1 parent 157745d commit d9952d1

21 files changed

Lines changed: 9732 additions & 4 deletions

.github/workflows/publish_docs.yaml

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ concurrency:
1616
jobs:
1717
deploy-github-pages:
1818
runs-on: ubuntu-latest
19-
if: github.repository == 'sgl-project/specforge'
19+
if: github.repository == 'sgl-project/specforge' || github.repository == 'sleepcoo/SpecForge'
2020
permissions:
2121
contents: write
2222
steps:
@@ -28,17 +28,42 @@ jobs:
2828
with:
2929
python-version: '3.13'
3030

31+
- name: Setup Node.js
32+
uses: actions/setup-node@v4
33+
with:
34+
node-version: '20'
35+
cache: 'npm'
36+
cache-dependency-path: docs/spec_bundle/package-lock.json
3137

3238
- name: Install dependencies
3339
run: |
34-
apt-get update && apt-get install -y pandoc parallel retry
40+
sudo apt-get update && sudo apt-get install -y pandoc parallel retry
3541
pip install -r docs/requirements.txt
3642
43+
- name: Build spec bundle dashboard
44+
run: |
45+
# Copy logos to public directory
46+
cp assets/logo.png docs/spec_bundle/public/logo.png
47+
cp docs/_static/imgs/specbundle-logo.png docs/spec_bundle/public/specbundle-logo.png
48+
cd docs/spec_bundle
49+
npm ci
50+
npm run build
51+
# Clean up node_modules to prevent Sphinx from processing them
52+
rm -rf node_modules
53+
cd ..
54+
3755
- name: Build documentation
3856
run: |
3957
cd docs
4058
make compile
4159
make html
60+
# Copy SpecBundle to root of output directory
61+
mkdir -p _build/html/SpecBundle
62+
cp -r spec_bundle/dist/* _build/html/SpecBundle/
63+
64+
- name: Add .nojekyll file
65+
run: |
66+
touch ./docs/_build/html/.nojekyll
4267
4368
- name: Deploy
4469
uses: peaceiris/actions-gh-pages@v4

docs/benchmarks/dashboard.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Interactive Benchmark Dashboard
2+
3+
View the interactive benchmark dashboard to explore SpecForge performance results:
4+
5+
**[🚀 Spec Bundle](../dashboard/index.html)**
6+
7+
8+
The dashboard displays the following key metrics:
9+
10+
- **Acceptance Length**: Average number of tokens accepted per speculation step
11+
- **Throughput**: Output tokens generated per second (tokens/s)
12+
- **Speedup**: Performance improvement ratio over baseline
13+
14+
## Benchmark Datasets
15+
16+
View results across multiple benchmarks:
17+
- MTBench
18+
- HumanEval
19+
- GSM8K
20+
- Math500
21+
22+
---
23+
24+
If the dashboard doesn't load, please ensure JavaScript is enabled in your browser.

docs/community_resources/specbundle.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# 🔥 SpecBundle
22

33
<div style="text-align:center;">
4-
<img src="/_static/imgs/specbundle-logo.png" alt="specbundle logo" width="400"></img>
4+
<img src="/SpecForge/_static/imgs/specbundle-logo.png" alt="specbundle logo" width="400"></img>
55
</div>
66

77

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@
120120
"conf_py_path": "/docs/",
121121
}
122122

123-
html_static_path = ["_static"]
123+
html_static_path = ["_static", "spec_bundle/public"]
124124
html_css_files = ["css/custom_log.css"]
125125

126126

docs/spec_bundle/.gitignore

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Logs
2+
logs
3+
*.log
4+
npm-debug.log*
5+
yarn-debug.log*
6+
yarn-error.log*
7+
pnpm-debug.log*
8+
lerna-debug.log*
9+
10+
node_modules
11+
dist
12+
dist-ssr
13+
*.local
14+
15+
# Auto-generated logo (copied from assets/)
16+
public/logo.png
17+
18+
# Editor directories and files
19+
.vscode/*
20+
!.vscode/extensions.json
21+
.idea
22+
.DS_Store
23+
*.suo
24+
*.ntvs*
25+
*.njsproj
26+
*.sln
27+
*.sw?

docs/spec_bundle/index.html

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!doctype html>
2+
<html lang="en">
3+
4+
<head>
5+
<meta charset="UTF-8" />
6+
<link rel="icon" type="image/x-icon" href="/logo.ico" />
7+
<link rel="preconnect" href="https://fonts.googleapis.com">
8+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9+
<link
10+
href="https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700;800&family=Inter:wght@300;400;500;600;700&family=Outfit:wght@500;600;700;800&family=Space+Grotesk:wght@500;700&display=swap"
11+
rel="stylesheet">
12+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
13+
<title>SpecBundle</title>
14+
</head>
15+
16+
<body>
17+
<div id="app"></div>
18+
<script type="module" src="/src/main.js"></script>
19+
</body>
20+
21+
</html>

0 commit comments

Comments
 (0)