Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,10 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); ver

### Changed

- Backend contribution guidance requires cold in-process model load timing, profiling above 5 s, and
complete checkpoint coverage before skipping random weight initialization.
- `--model laya` loads in about 3 s instead of about 35 s: the encoder is built with transformers' weight init
off, since the checkpoint replaces every weight. Weights and answers are unchanged.
- Important agent/inference PRs require an application + System1-Agents + System1-Omni video, following
PR #35's worked example. Contributor skills, recipes and the PR template retain missing demos as review gaps.
- `--model laya` no longer draws the encoder's random weights before the checkpoint replaces them, which took most
Expand Down
6 changes: 6 additions & 0 deletions docs/decision-models.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,12 @@ real servers in `tests/data/served_laya/`. Nothing patches `httpx`.
3. `tests/test_decision_models_<backend>.py` with `Test<Backend>Contract(DecisionModelContract, IsolatedAsyncioTestCase)`
plus the backend's mapping tests; a fake for its SDK lives in that file.
4. An optional extra in `pyproject.toml` and an env block in `.env.example` when it needs a dependency.
5. For an in-process backend, time a cold `from_env()` in a fresh process and report the load time in the PR,
separately from warm inference and episode timing. Profile loads above 5 s. If the loader builds a model
from its config (`AutoModel.from_config` or a bare `nn.Module`) and then replaces every weight with a
checkpoint, it can skip random initialization with transformers' `no_init_weights`, but only if loading
fails on missing keys (`strict=True` or an equivalent check). Prefer fixing this in the model's package;
Laya added the skip in 0.3.9. This step does not apply to backends served over HTTP.

### Laya browser input shaping

Expand Down
Loading