Skip to content

kev-deploy and kev-finetune: pin KEV_REF to fc4a17e (device probe in a child process #218 #231, compare null diagnostics #217) - #233

Merged
jaredpalmer merged 1 commit into
mainfrom
devin/1791631801-pin-kev-ref
Oct 10, 2026
Merged

jaredpalmer merged 1 commit into
mainfrom
devin/1791631801-pin-kev-ref

Conversation

@devin-ai-integration

Copy link
Copy Markdown
Contributor

Summary

Both published skills install the kev package from a pinned commit: KEV_REF in skills/kev-deploy/scripts/kev_serve.py and skills/kev-finetune/scripts/kev_modal.py. On main both pins point at 84847f0 (#214). Three commits have touched kev/ since then, so a user who installs either skill today serves and trains with code main no longer runs. This PR moves both pins to the current tip of main, fc4a17e194bca35a48c57211392ec49ea54a94ac (#231). No SKILL.md or README names the commit (kev-finetune/SKILL.md only says "pinned commit"), so only the two constants change.

What the pins pick up (git log --oneline 84847f0..origin/main -- kev/ pyproject.toml uv.lock):

What this means for each skill:

  • kev-finetune: kev_modal.py launches kev.train ... --device cuda --dtype bf16, so every training container now runs the bf16 probe first. That costs one extra torch import in a child process (seconds). The upside: a broken GPU fails the trial before it starts instead of letting it train on CPU.
  • kev-deploy: no change to what runs. kev_serve.py and kev_modal.load_server call Checkpoint.load("cuda", LoadOptions(dtype=bf16, cuda_graphs=True, fused=True)) and build kev.serve.Server directly. They never go through kev.serve.main() or select(). The pin still moves so both skills stay on one commit.

Serving numbers: not re-measured, and none changed. #218 and #231 touch kev/serve.py and kev/device.py, both on the serving list in AGENTS.md. That is why I checked whether the README serving table could be stale:

  • Nothing on main is newer than the table. The reports it reads (runs/serve-*, runs/grouping-4b-h100*, runs/fused-*) were last committed 2026-09-24 and runs/serving-27b-r23 on 2026-09-28. The table section was last edited 2026-10-01 (Kev 1.0 release candidate: the four released checkpoints versioned as one family, with formal cards, a README family table, release notes and an asset builder (nothing published) #206).
  • I don't think a re-measurement is needed. The only kev/serve.py change is in main(), where the device is picked: _serving_device() before the load instead of default_device(). For an NVIDIA CUDA device the LoadOptions that come out are the same as before (bf16, CUDA graphs on, fused when fla is installed, backend="auto"), and the timed request path (Server, kev.model, kev.cuda_graphs, kev.fused_qwen35) did not change. So no released checkpoint's serving path changed: 0.8B on L4, 4B on L40S, 9B on H100, 27B on B200.
  • I also could not have re-measured. This environment has no MODAL_TOKEN_ID / MODAL_TOKEN_SECRET, so modal run modal_app.py::serving cannot run here.
  • If this reasoning is wrong, the rows a re-measurement would replace are runs/serve-08b-l4, runs/serve-4b-l40s, runs/serve-9b-h100 and runs/fused-27b-b200. The table and model cards are left as they are and still trace to their committed reports (tests/test_conventions.py passes).

No earlier run of this automation has a PR open: #214 merged and #154 is closed, so this is a new PR rather than a push to an old branch. Nothing under evals/ or any frozen suite is touched.

Test plan

Link to Devin session: https://app.devin.ai/sessions/0b7ac5485ee34370a00de780897bfc50
Open in Devin Desktop: https://app.devin.ai/desktop/session/0b7ac5485ee34370a00de780897bfc50?variant=devin

…a child process #218 #231, compare null diagnostics #217)

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".

  • Disable automatic comment, CI, and merge conflict monitoring

@jaredpalmer
jaredpalmer merged commit 2ecafc4 into main Oct 10, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant