Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
739e5ff
vela: add the 0.8B native bundle export, manifest gate and wire contract
Oct 24, 2026
9812853
vela: add the 0.8B native token-level processing
Oct 24, 2026
7391de2
vela: add the 0.8B native token-level processing
Oct 24, 2026
dd5064a
vela: add the 0.8B native F32 heads, scoring and span decoding
Oct 24, 2026
7d50f57
vela: add the 0.8B native F32 heads, scoring and span decoding
Oct 24, 2026
82dfa0a
vela: add the 0.8B native SystemOne response finishing
Oct 24, 2026
149a9ba
vela: add the 0.8B native backbone execution on CUDA
Oct 24, 2026
57994cb
Merge remote-tracking branch 'upstream/main' into model/vela2-native-…
Oct 25, 2026
ba86215
Merge remote-tracking branch 'upstream/main' into model/vela2-native-…
Oct 25, 2026
b6dc583
Merge remote-tracking branch 'upstream/main' into model/vela2-native-…
Oct 25, 2026
1685b5b
Merge model/vela2-hybrid-reference-serving and keep the Vela native r…
Oct 25, 2026
6bedca9
Merge model/vela2-native-processing: keep the canonical shared layer,…
Oct 25, 2026
30e0054
Merge model/vela2-native-heads: keep the executor layer, fold in the …
Oct 25, 2026
df901b2
vela: restore float_roundtrip and drop the duplicate sha2 dev-dependency
Oct 26, 2026
e6715a3
vela: make the heads parity test ignored with tighten-only env gates
Oct 26, 2026
44012d6
vela: score structural mismatches as full drift in the heads comparator
Oct 26, 2026
1a169bc
vela: verify the bundle manifest and hidden width before the heads load
Oct 26, 2026
774d589
vela: record the chunk-packing rounding constraint in run_all
Oct 26, 2026
76f233e
vela: make the response drift strict and put the opt-in checks behind…
Oct 26, 2026
2de81d5
vela: answer non-object bodies with the reference worker's 400 message
Oct 26, 2026
c1e4edb
vela: make the render-parity test opt-in behind --ignored
Oct 26, 2026
cca9174
vela: index unit_ids by code points, not byte offsets
Oct 26, 2026
9f13566
vela: fail the bundle gate closed on unpinned files and an empty pin …
Oct 26, 2026
ddaecd8
Merge branch 'model/vela2-hybrid-reference-serving' into model/vela2-…
Oct 26, 2026
0f1e4da
vela: recount the always-run tests after the bundle-gate cases
Oct 26, 2026
c2d704d
Merge branch 'model/vela2-native-processing' into model/vela2-native-…
Oct 26, 2026
064244d
Merge branch 'model/vela2-native-heads' into model/vela2-native-executor
Oct 26, 2026
fb8847c
vela: serve the 4B and 9B decoder members through the shared member r…
Oct 27, 2026
f346ecd
vela: put the member-label doc comment on member_label in the heads test
Oct 27, 2026
ab832bd
vela: drop the shadowed member_label lookup inside the response case …
Oct 27, 2026
ab38251
vela: name the decoder family in the native crate description
Oct 27, 2026
67991a9
vela: refuse an empty slot table in the span heads
Oct 27, 2026
73af078
vela: tie every decoder member's frozen oracles to the recipe examples
Oct 27, 2026
1b8d025
Merge remote-tracking branch 'upstream/main' into model/vela2-4b-9b
Oct 27, 2026
acabad4
vela: surface tokenizer failures instead of panicking and bound the e…
Oct 27, 2026
8d994e1
vela: walk the whole bundle directory and tie the span heads to the c…
Oct 27, 2026
e5a1684
vela: keep NaN out of the scoring sorts and index the window aggregation
Oct 27, 2026
6d73b75
vela: replay every member's plan fixtures and name the missing-safete…
Oct 27, 2026
1647872
vela: gate the fixture exporters on the pin and stamp each member's s…
Oct 27, 2026
1b212cb
vela: make the member max_length explicit in the registry
Oct 27, 2026
805ec0b
vela: run the worker tests in CI and document the 4B/9B fixture policy
Oct 27, 2026
b2559fe
vela: refresh the member rows and tables in the docs
Oct 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,11 @@ jobs:
run: |
python -m pip install pytest
PYTHONPATH=src python -m pytest tests/clef -q
- name: Vela worker tests
# Gate, worker wiring and the frozen oracle fixtures; torch-free
# (the pinned runtime is imported lazily), so only pytest is
# needed beyond the job's base install.
run: PYTHONPATH=src python -m pytest tests/vela -q

cuda-contract:
# The CUDA backend contract and its checker. No CUDA toolkit and no GPU: both
Expand Down
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,9 @@ weights/
# Documentation site build and environment
/site/
.venv-docs/

# Vela 4B/9B head-input binaries are re-exported from the pinned
# packages, not committed (the JSON sidecars and the 0.8B binaries
# are); see recipe/vela/native.md
tests/vela/fixtures/head-input-Vela-2.0-4B-*.safetensors
tests/vela/fixtures/head-input-Vela-2.0-9B-*.safetensors
15 changes: 15 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[workspace]
members = ["src/frontend", "src/runtime", "src/models/clm", "src/models/cua_s1/native", "src/models/qwen3_5/native", "src/models/open_jev/native", "src/models/jev_vl/native", "src/models/omnijev/native", "src/models/laya", "src/backends/cuda", "src/models/decider/native", "src/models/jemm/native", "src/models/startlux/native", "src/models/clef/native"]
members = ["src/frontend", "src/runtime", "src/models/clm", "src/models/cua_s1/native", "src/models/qwen3_5/native", "src/models/open_jev/native", "src/models/jev_vl/native", "src/models/omnijev/native", "src/models/laya", "src/backends/cuda", "src/models/decider/native", "src/models/jemm/native", "src/models/vela/native", "src/models/startlux/native", "src/models/clef/native"]
resolver = "3"
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,8 +168,8 @@ Python screenshot worker, Valen-Preview-0923 has a Python reference worker for
text and one-image state, CLM has a stub-encoder contract recipe, and OmniJev-4B
v1.1 runs on a native Rust/CUDA worker. D3
(Decision 3.0) has a Python reference worker that runs the checkpoint's own
pinned runtime for text, image and video state, and the Vela 2.0 members (0.3B and the 0.8B
hybrid) have one that serves all five
pinned runtime for text, image and video state, and the Vela 2.0 members (0.3B and the decoder
members 0.8B/4B/9B) have one that serves all five
SystemOne question kinds (`choice`/`noul`/`score` plus the `span`/`set`
extensions) on each checkpoint's own pinned runtime.
pplx-decider-v1.1-27b has a Python reference worker for the pinned Perplexity
Expand All @@ -193,7 +193,8 @@ checkpoint. Public231 concurrency-1 latency for heads `1ba07d1`, `f968e576`,
| OmniJev-4B v1.1 | [Native Rust/CUDA worker](recipe/omnijev/native.md), eager: one image, Choice, Noul and Score; [reference comparison on sm_89](recipe/omnijev/native.md#comparison-with-the-reference) |
| D3 (Decision 3.0) | [Python reference worker](recipe/d3/reference.md) on the checkpoint's pinned runtime; `choice`/`noul`/`score` over text, image and video state; author-run on A100 for text and media serving (see the integration and media PRs) |
| Vela 2.0 0.3B | [Python reference worker](recipe/vela/reference.md) on the checkpoint's pinned runtime; all five kinds (`choice`/`noul`/`score`/`span`/`set`) for text state; CPU FP32 validated (author-run, evidence in the integration PR) |
| Vela 2.0 0.8B hybrid | [Python reference worker](recipe/vela/reference.md) on the checkpoint's pinned runtime; same surface plus `span_heads`; CPU FP32 parity recorded in the integration PR |
| Vela 2.0 0.8B hybrid | [Python reference worker](recipe/vela/reference.md) on the checkpoint's pinned runtime; same surface plus `span_heads`; [native library](recipe/vela/native.md) (bundle export, wire contract, processing, F32 heads); CPU FP32 parity recorded in the integration PR |
| Vela 2.0 4B / 9B | Same worker and member registry as the 0.8B (one shared runtime); **4B and 9B validated** on an RTX 4090 48 GB (exact-match reference parity, frozen fixtures, native parity; CUDA executor parity — 4B four cases worst 0.2271, 9B two of four cases worst 0.1899 — evidence in the recipes) |
| Clef-flash (9B) and Clef (27B) | [Rust `omni-clef` server](recipe/clef/reference.md) plus the pinned Python joint-schema executor on one persistent thread; text `choice`/`noul`/`score`; flash is the bring-up variant. Image, video, and a native joint head are not served. The L20X-labeled lab Public231 C1 primary is the previous Python HTTP worker, tip `594528a9`: p50 164.969 ms, p95 216.755 ms, `/health` `fla+causal_conv1d`, versus `9030065` run1 p50 247.518 ms, p95 413.025 ms (Δp50 −82.549 ms, Δp95 −196.270 ms). Operator-reported `omni-clef` tip `f9127a0` on that host is a serve-path paste, not a latency KEEP: R1 p50 169.605 ms, p95 220.003 ms (231/231) does not pass the dual gate versus 164.969/216.755; R2 53.580/97.031 and R3 52.950/97.608 are not a new primary. Smoke 4/4, `/health` `fla+causal_conv1d`, quality matches the baseline (`choice_acc=0.8417`, `noul_acc=0.7973`, `score_mae=0.2488`) |
| pplx-decider-v1.1-27b | [Python reference worker](recipe/pplx_decider/README.md) on the pinned checkpoint; `choice`/`noul`/`score` text plus up to four images. Lab L20X-labeled GPUs are the H200 target. Kept Public231 primary is `fcf5e2b`: 231/231, p50 87.782 ms, p95 291.183 ms, grouped-value FlashInfer with q and k packed before the L2 view (p50 −1.30%, p95 −1.56% versus `4b99b73` 88.942 / 295.797). `4b99b73` was p50 −4.20%, p95 −0.22% versus `ffae182` 92.844 / 296.458. Uncached all-sequence FlashInfer `3c72f02` is not the primary (p50 88.808 ms, p95 300.751 ms). Short-sequence FlashInfer `a50b9aa` missed its gate (p50 95.446 ms, p95 300.871 ms). cuDNN-first SDPA `0dcaa0ac` missed its gate (p50 138.501 ms, p95 332.859 ms). Fused gate-up `8b4ee326` missed its gate (p50 102.437 ms, p95 304.970 ms). Always-on dynamic compile `e36b32ed` missed the both-percentiles gate (p50 97.751 ms, p95 263.124 ms; p95 improved). The 512-token split `7e3b1be` missed its gate (p50 100.037 ms, p95 257.084 ms). Isolated-median compile `34ba5de` missed its gate (p50 97.084 ms, p95 256.679 ms; the 136-token probe was eager). The FlashInfer state-workspace ring `17a7b120` missed its gate (p50 89.165 ms, p95 295.723 ms). Always-on FLA residual RMSNorm `3afb472` missed its gate (p50 93.935 ms, p95 274.902 ms). Length-gated FLA residual RMSNorm `705ae089` missed its gate (p50 94.604 ms, p95 274.835 ms). `use_cp=auto` `a6f4d9a` missed its gate (p50 112.294 ms, p95 299.419 ms). Grouped-value `3ecdf5a` crashed in warmup (0/231, no p50 or p95). FLA fused gated RMSNorm `801ef7b` missed its gate (p50 89.172 ms, p95 274.790 ms). FLA `swiglu_fwd` `2bbbe4e` missed its gate (owner closeout p50 97.613 ms, p95 292.795 ms) and is not installed |

Expand Down
12 changes: 7 additions & 5 deletions docs/supported-models.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ Models that are being added are also tracked in issues labeled [new model](https
| OmniJev-4B v1.1 | [Native Rust/CUDA worker](../recipe/omnijev/native.md) on the shared Qwen3.5 vision and language path, eager | Contract, preparation, pixels, heads and finishing checked against the reference; no CPU inference | Compared with the reference on compute capability 8.9 for [140 answers](../recipe/omnijev/native.md#comparison-with-the-reference) | Not supported | Compute capability 8.0 or newer, CUDA toolkit to build, the export from `export.py` |
| D3 (Decision 3.0) | [Python reference worker](../recipe/d3/reference.md) on the checkpoint's pinned runtime — text, image and video state over `choice`/`noul`/`score`, with the deliberate transport differences documented in the recipe; the native worker is in progress ([#136](https://github.com/ThinkFlowLab/system1-omni/issues/136)) | Unverified | Author-run on NVIDIA A100 (sm_80): serving smoke and reference parity for text and media (exact decisions, max delta 0.0); evidence in the integration and media PRs. Owner: @MrDongsls. | Unverified | Python 3.12, the [pinned runtime requirements](../recipe/d3/requirements.txt), the [pinned package](https://huggingface.co/vllm-sr/d3) (~52 GB); [media budgets and the 64 MiB total request cap](../recipe/d3/reference.md) |
| Vela 2.0 0.3B | [Python reference worker](../recipe/vela/reference.md) running the checkpoint's pinned runtime | **CPU FP32 validated** (author-run, x86 WSL2, 24 cores): startup with all-kind warmup, the four example requests plus five synthetic rejections, and exact-match reference parity against the pinned upstream server on all nine (four 200s byte-equal incl. key order, agreed 422/413); byte-identical frontend forwarding; evidence in the integration PR. Owner: @MrDongsls. | Unverified (bf16-autocast is an untested deployment option) | Not supported | Python 3.12, the [pinned requirements](../recipe/vela/requirements.txt), the [pinned package](https://huggingface.co/vllm-sr/Vela-2.0-0.3B) (1.24 GB FP32 weights; ~4.4 GB with ONNX/assets) |
| Vela 2.0 0.8B hybrid | [Python reference worker](../recipe/vela/reference.md) running the checkpoint's pinned runtime (same wire layer as 0.3B) | Same surface as 0.3B plus the `span_heads` field (router/broad dispatch); **CPU FP32 parity** (author-run; evidence in the integration PR) | Unverified (bf16-autocast is the evaluated upstream setting but untested here) | Not supported | Python 3.12, the [pinned requirements](../recipe/vela/requirements.txt), the [pinned package](https://huggingface.co/vllm-sr/Vela-2.0-0.8B) (2.02 GB shard + 4.5 MB broad head; ~3 GB FP32 parameters) |
| Vela 2.0 0.8B hybrid | [Python reference worker](../recipe/vela/reference.md) running the checkpoint's pinned runtime (same wire layer as 0.3B); [native library](../recipe/vela/native.md) — bundle export, wire contract, processing, F32 heads and CUDA executor (no HTTP worker) | Same surface as 0.3B plus the `span_heads` field (router/broad dispatch); **CPU FP32 parity** (author-run; evidence in the integration PR) | Serving unverified; native executor parity author-run on sm_120 (evidence in the PR) | Not supported | Python 3.12, the [pinned requirements](../recipe/vela/requirements.txt), the [pinned package](https://huggingface.co/vllm-sr/Vela-2.0-0.8B) (2.02 GB shard + 4.5 MB broad head; ~3 GB FP32 parameters) |
| Vela 2.0 4B / 9B | [Python reference worker](../recipe/vela/reference.md) on the checkpoint's pinned runtime, same wire layer and member registry as the 0.8B (one runtime, shared byte-identical across the decoder members); the [native library](../recipe/vela/native.md) exports and gates them with the same member-parameterized stack (widths derived from tensor shapes) | **4B validated** (author-run, RTX 4090 48 GB, sm_89, GPU bf16-autocast): nine-case exact-match reference parity, frozen oracle/token-plan/head-input fixtures, native processing/heads/response parity and CUDA executor parity (worst logit drift 0.2271 < 0.35; the threshold-adjacent windowed-case divergence is recorded). **9B validated** on the same host: nine-case exact-match reference parity, frozen fixtures, native processing/heads/response parity (executor two of four cases recorded, worst 0.1899) | 4B executor parity author-run on sm_89 (worst 0.2271, four cases, see native.md); 9B executor two of four cases recorded (worst 0.1899) before the session ended | Not supported | Python 3.12, the [pinned requirements](../recipe/vela/requirements.txt), the pinned 4B (`d6923941`, ~9.7 GB, 3 shards) or 9B (`068425bb`, ~17.9 GB, 5 shards) package |
| Clef-flash (9B) | [Rust `omni-clef` server](../recipe/clef/reference.md) with the pinned Python executor on one persistent thread; text `choice`/`noul`/`score`; non-thinking prompt; `thinking.enabled: false` admitted and omitted from the prompt; 16384-token refusal. The joint head is still the checkpoint module | Contract tests only, including the persistent-thread serve path; no inference | Kept Public231 primary on the L20X-labeled lab host is the previous `ThreadingHTTPServer` worker. Baseline `9030065` run1 p50 247.518 ms, p95 413.025 ms, 231/231. Tip `594528a9` remeasure, warmup 5, concurrency 1, stock Public231 with `thinking.enabled` false, metric `successful_latency`: 231/231, p50 164.969 ms, p95 216.755 ms, `/health` `fla+causal_conv1d`. Versus run1: Δp50 −82.549 ms (−33.35%), Δp95 −196.270 ms (−47.52%). Operator-reported `omni-clef` tip `f9127a0`: smoke 4/4, `/health` `fla+causal_conv1d`, R1 p50 169.605 ms, p95 220.003 ms (231/231), R2 53.580/97.031, R3 52.950/97.608, quality `choice_acc=0.8417` `noul_acc=0.7973` `score_mae=0.2488` (matches `594528a9`). Not a latency KEEP. R1 does not pass the dual gate versus 164.969/216.755. R2 and R3 are not a new primary. Not re-run here | Not supported | Python 3.12, [card-tested torch 2.11 and transformers 5.10.2](../recipe/clef/requirements.txt), a Rust build of `omni-clef`, pinned `Cloudflare/clef-flash` snapshot (~19.1 GB) |
| Clef (27B) | Same `omni-clef` server and text contract as Clef-flash, selected with `--variant clef` | Contract tests only; no inference | Not run | Not supported | Same stack; pinned `Cloudflare/clef` snapshot (~55.0 GB). Weights and joint-head config differ from flash |
| pplx-decider-v1.1-27b | [Python reference worker](../recipe/pplx_decider/README.md) on the checkpoint's own runtime. Text and up to four images; `choice`/`noul`/`score`. Native CUDA executor is not this worker. Lab L20X-labeled GPUs are the H200 target. The causal-conv1d build keeps sm_90 and sm_89. Capability 8.9 is ready on FLA chunk. Capability 9.0 uses all-sequence FlashInfer. The kept primary rotates 48 `cu_seqlens` buffers per device and length, passes `use_cp` false, skips the q/k repeat, and packs q and k before the L2-norm view. `801ef7b` fused the 48 linear gated RMSNorms and missed the median (p50 89.172 ms, p95 274.790 ms), so that kernel stays off. `2bbbe4e` replaced `silu(gate) * up` with FLA `swiglu_fwd` and the owner closeout rejected it (p50 97.613 ms, p95 292.795 ms), so that kernel stays off. Gate and up GEMMs stay separate. Residual RMSNorm and the gated output norm stay eager. An unknown `PPLX_GDN_PREFILL` fails closed on every device, including capability 8.9. `3ecdf5a` crashed in warmup (0/231). Always-on fusion `3afb472` and the 512-token gate `705ae089` missed the median. The 48-slot FlashInfer state ring `17a7b120` missed the gate. `PPLX_GDN_PREFILL=fla` reproduces the prior `f968e576` chunk. `PPLX_GDN_PREFILL=short` is the rejected ≤256 dispatch. SDPA stays on the checkpoint order. The fused gate-up GEMM is refused. The forward stays eager. `PPLX_COMPILE=dynamic` and `PPLX_COMPILE=dynamic-tail` are rejected opt-ins | Contract checks only; no inference | Reported load on 1× lab L20X (sm_89, ~140 GiB) at head `1ba07d1`: BF16 resident ~50333 MiB, no OOM. Historical primary: 231/231, p50 98.777 ms, p95 341.202 ms. Prior primary is the `f968e576` remeasure on the lab L20X-labeled GPU, `compute_capability=9.0`, `fla-chunk`, `flashinfer` null: 231/231, p50 94.077 ms, p95 300.200 ms (p50 −4.76%, p95 −12.02%). Prior primary `ffae182`: 231/231, p50 92.844 ms, p95 296.458 ms (p50 −1.31%, p95 −1.25%). Prior primary `4b99b73`: 231/231, p50 88.942 ms, p95 295.797 ms (p50 −4.20%, p95 −0.22%), 48-slot `cu_seqlens`, quality `choice_acc=0.9065` (139), `noul_acc=0.8784` (74), `score_mae=0.2035` (18). Kept primary is `fcf5e2b`: 231/231, p50 87.782 ms, p95 291.183 ms (p50 −1.30%, p95 −1.56%), grouped-value FlashInfer with q and k packed, same quality digits. Uncached all-sequence FlashInfer `3c72f02`: p50 88.808 ms, p95 300.751 ms, gate failed. Short-sequence FlashInfer `a50b9aa`: p50 95.446 ms, p95 300.871 ms, gate failed. cuDNN-first SDPA `0dcaa0ac`: p50 138.501 ms, p95 332.859 ms, gate failed. Fused gate-up `8b4ee326`: p50 102.437 ms, p95 304.970 ms, gate failed. Always-on dynamic compile `e36b32ed`: p50 97.751 ms, p95 263.124 ms, gate failed (p95 improved). 512-token compile `7e3b1be`: p50 100.037 ms, p95 257.084 ms, gate failed. Isolated-median compile `34ba5de`: p50 97.084 ms, p95 256.679 ms, gate failed (median probe was eager). FlashInfer state-workspace ring `17a7b120`: p50 89.165 ms, p95 295.723 ms, gate failed. Always-on FLA residual RMSNorm `3afb472`: p50 93.935 ms, p95 274.902 ms, gate failed. Length-gated FLA residual RMSNorm `705ae089`: p50 94.604 ms, p95 274.835 ms, gate failed. `use_cp=auto` `a6f4d9a`: p50 112.294 ms, p95 299.419 ms, gate failed. Grouped-value `3ecdf5a` crashed in warmup (0/231, no p50 or p95). The fused linear gated-norm candidate has no sample. Does not enter the H800 board | Not supported | Python 3.12, pinned checkpoint revision `14c9d90137962d300f3de95633f7b6535e80c5ce`, checkpoint `requirements.txt`, `causal-conv1d` 1.7.0, `flash-linear-attention` 0.5.2, optional `flashinfer-python` 0.6.16.post3. Shard sizes in the release manifest sum with the readout to about 48.6 GiB before activations |
Expand All @@ -45,10 +46,11 @@ StartLux serves Instant only; AutoThink is not implemented, and the weights are
D3's reference worker serves the same three kinds for text, image and video
state (inline base64 media under the pinned runtime's per-item budgets);
its media serving evidence is author-run on the A100 above.
Vela 2.0's reference workers (0.3B and the 0.8B hybrid) serve all five
kinds (`choice`, `noul`, `score`, plus the `span`/`set` extensions with
their Noul views, and `span_heads` on the hybrid) for text state on CPU
FP32; the larger hybrid members (4B/9B) are separate slices.
Vela 2.0's reference workers (0.3B and the decoder members 0.8B/4B/9B
behind one member registry) serve all five kinds (`choice`, `noul`,
`score`, plus the `span`/`set` extensions with their Noul views, and
`span_heads` on the decoder members) for text state; 0.3B and 0.8B were
validated on CPU FP32, the 4B/9B members on GPU bf16-autocast.
Clef-flash and Clef serve the same three kinds for text only. The worker
refuses image and video inputs. The flash CUDA cell records two
operator-reported Public231 concurrency-1 results on the L20X-labeled lab
Expand Down
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ nav:
- LFM2.5-350M choice worker: recipe/lfm2/README.md
- D3 reference worker: recipe/d3/reference.md
- Vela 2.0 reference workers: recipe/vela/reference.md
- Vela 2.0 decoder native library: recipe/vela/native.md
- Clef reference worker: recipe/clef/reference.md
- pplx-decider reference worker: recipe/pplx_decider/README.md
- Contributing: CONTRIBUTING.md
Loading
Loading