niqun123123 commited on
Commit
d8b3ed5
·
verified ·
1 Parent(s): 84612ff

Update model card (new model id) and remove provenance/notice files to match v2 export

Browse files
Files changed (4) hide show
  1. LEMONDECIDER_BUILD.json +0 -25
  2. LEMONDECIDER_REBRAND.json +0 -16
  3. NOTICE +0 -6
  4. README.md +13 -20
LEMONDECIDER_BUILD.json DELETED
@@ -1,25 +0,0 @@
1
- {
2
- "schema": "lemondecider-build-receipt/1",
3
- "model_name": "lemondecider-4b-merge50-20261015-v2",
4
- "display_name": "LemonDecider 4B (Qwen3.5-4B 公开数据双路线 SFT 50/50 合并)",
5
- "compiled_utc": "2026-10-15T07:10:31Z",
6
- "base": "Qwen/Qwen3.5-4B",
7
- "training": {
8
- "routes": 2,
9
- "data": "public data sources",
10
- "description": "two independent SFT routes from a common Qwen3.5-4B initialization, trained on public data sources"
11
- },
12
- "merge": {
13
- "method": "exact 0.5*A + 0.5*B elementwise tensor merge, FP32 mean, one BF16 cast; FP32 readout preserved",
14
- "tensors": 724,
15
- "post_merge_training": false
16
- },
17
- "runtime": "lemonjev-qwen-decision-runtime-v2: noncausal_full_attention, pooling=last, T=1",
18
- "weights": {
19
- "shards": 2,
20
- "note": "serialization files byte-identical to the parent merged package of the same weights (sha256 verified)"
21
- },
22
- "eval_policy": "No benchmark score is claimed by this package.",
23
- "v2_of": "lemondecider-4b-merge50-20261015-v1",
24
- "v2_change": "machine-identifier spelling normalized to the LemonDecider form (module filenames, auto_map, protocol and model_type); serialization weights byte-identical"
25
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
LEMONDECIDER_REBRAND.json DELETED
@@ -1,16 +0,0 @@
1
- {
2
- "schema": "lemondecider-abi-rename-receipt/1",
3
- "model_name": "lemondecider-4b-merge50-20261015-v2",
4
- "rebuilt_utc": "2026-10-15T07:10:31Z",
5
- "purpose": "v2 spelling-normalization export of the rebranded two-route checkpoint: internal machine identifiers corrected to the LemonDecider spelling; weights and the tokenizer BPE asset byte-identical to the v1 rebranded export; v1 kept read-only with its evaluation evidence.",
6
- "weights": {
7
- "shards": 2,
8
- "note": "serialization files unchanged in this pass"
9
- },
10
- "amendments": [
11
- {
12
- "utc": "2026-10-15T09:05:30.492782+00:00",
13
- "change": "max_input_length 8192 -> 262144 in config.json and decision_config.json, enabling the Qwen3.5-4B backbone's full 256K position window (max_position_embeddings 262144, rope_theta 1e7), per user instruction 2026-10-15. Weights, tokenizer and runtime code unchanged (INDEX revision binds LEMONDECIDER_BUILD.json, untouched)."
14
- }
15
- ]
16
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
NOTICE DELETED
@@ -1,6 +0,0 @@
1
- LemonDecider (LemonJev typed decision engine)
2
- Copyright 2026 LemonJev Project — LemonDecider
3
-
4
- Built on Qwen/Qwen3.5-4B (Apache-2.0).
5
- Runtime and server code adapted from Apache-2.0 and MIT upstream components
6
- (see LICENSE and LICENSE.code for terms).
 
 
 
 
 
 
 
README.md CHANGED
@@ -13,9 +13,8 @@ tags:
13
 
14
  # LemonDecider 4B (LemonJev typed decision engine)
15
 
16
- **Model ID:** `lemondecider-4b-merge50-20261015-v2`
17
  **Base model:** `Qwen/Qwen3.5-4B`
18
- **Release date:** 2026-10-15
19
 
20
  LemonDecider 4B is a typed decision engine: it reads a state and a question with a
21
  list of options, runs **one forward pass**, and returns a probability distribution
@@ -73,9 +72,6 @@ label distributions.
73
 
74
  ## Package artifacts
75
 
76
- The release directory ships as a single self-contained package — weights,
77
- tokenizer, runtime code and provenance receipts travel together.
78
-
79
  ### Weight files
80
 
81
  | File | Size | SHA-256 |
@@ -85,8 +81,6 @@ tokenizer, runtime code and provenance receipts travel together.
85
  | `tokenizer.json` | 19,989,492 | `6f32ce20dc35f57a7f9ad1eac03525bd7d30f9df8cea6507e958279cc3657706` |
86
  | `model.safetensors.index.json` | 68,426 | `bda09c55c0152d7a6fb2db6898aea70e728dc528df6f9c026cefb0bd5d1d673b` |
87
 
88
- Provenance receipts ship inside the package: `LEMONDECIDER_BUILD.json` (build
89
- receipt) and `LEMONDECIDER_REBRAND.json` (export lineage).
90
 
91
  ## Evaluation results
92
 
@@ -228,16 +222,18 @@ Evidence: `lemondeeder-eval-20261015/jevbench/20261015-lemondecider-4b-jevbench-
228
  ## Usage
229
 
230
  Dependencies: `transformers==5.17.0` (needs the Qwen3.5 hybrid classes),
231
- `flash-linear-attention==0.5.2`, `pillow`, `torch` with SDPA. ROCm fast path
232
- keywords: `LEMONDECIDER_FAST`, `LEMONDECIDER_GRAPH_TOKENS`, `LEMONDECIDER_FUSED`,
233
- `LEMONDECIDER_CUDNN_SDPA`.
234
 
235
  ```python
236
- import torch
237
  from transformers import AutoModel
 
 
 
238
  from decision_utils import load_processor, predict_batch
239
 
240
- ckpt = "lemondecider-4b-merge50-20261015-v2" # local package directory
241
  model = AutoModel.from_pretrained(
242
  ckpt, trust_remote_code=True, local_files_only=True,
243
  dtype=torch.bfloat16, device_map="cuda:0", attn_implementation="sdpa",
@@ -258,9 +254,11 @@ print(answers["answers"][0]) # choice, probabilities over the 3 options, confi
258
 
259
  CLI from inside the package: `python3 model.py --checkpoint . --device cuda:0 --input rows.json`.
260
 
261
- Batching: the internal batch is 8 questions per forward pass; inputs are left-padded
262
- to the longest prompt; requests over the 262,144-token limit are rejected with the
263
- limit named (HTTP 422 in server wrappers) — nothing is truncated.
 
 
264
 
265
  ## Intended use & limitations
266
 
@@ -280,15 +278,10 @@ limit named (HTTP 422 in server wrappers) — nothing is truncated.
280
  - `LICENSE` — Apache-2.0 text as preserved from the parent checkpoint lineage
281
  (base: Qwen/Qwen3.5-4B, inherit the base model's terms).
282
  - `LICENSE.code` — MIT for runtime/server code components adapted from upstream.
283
- - `NOTICE` — rebranded for this export; no new license grant is asserted.
284
  - No benchmark score is claimed by this package beyond the reproducible evidence
285
  files listed above; the Decision Index owner reserves 80% of its Full score for
286
  private tests, so the 50.31 public index is not a board submission.
287
 
288
- ## Version history
289
-
290
- - **v1** — `lemondecider-4b-merge50-20261015-v1`: rebranded export of the merged two-route checkpoint (all evaluations in this card ran on v1; weight files byte-identical to v2).
291
- - **v2** — `lemondecider-4b-merge50-20261015-v2`: internal machine identifiers spelling-normalized — module files (`modeling_lemondecider.py`, `configuration_lemondecider.py`), `auto_map`, protocol `lemondeeder-v1` → `lemondecider-v1`, `model_type: lemondecider_decision`; weights and tokenizer byte-identical to v1 (sha256 unchanged).
292
 
293
  ## Acknowledgements
294
 
 
13
 
14
  # LemonDecider 4B (LemonJev typed decision engine)
15
 
16
+ **Model ID:** `lemondecider-4b-20261015-v2`
17
  **Base model:** `Qwen/Qwen3.5-4B`
 
18
 
19
  LemonDecider 4B is a typed decision engine: it reads a state and a question with a
20
  list of options, runs **one forward pass**, and returns a probability distribution
 
72
 
73
  ## Package artifacts
74
 
 
 
 
75
  ### Weight files
76
 
77
  | File | Size | SHA-256 |
 
81
  | `tokenizer.json` | 19,989,492 | `6f32ce20dc35f57a7f9ad1eac03525bd7d30f9df8cea6507e958279cc3657706` |
82
  | `model.safetensors.index.json` | 68,426 | `bda09c55c0152d7a6fb2db6898aea70e728dc528df6f9c026cefb0bd5d1d673b` |
83
 
 
 
84
 
85
  ## Evaluation results
86
 
 
222
  ## Usage
223
 
224
  Dependencies: `transformers==5.17.0` (needs the Qwen3.5 hybrid classes),
225
+ `flash-linear-attention==0.5.2`, `pillow`, `torch` with SDPA.
226
+ This package honours a single runtime env var: `LEMONDECIDER_CUDNN_SDPA=1`
227
+ (keep the cuDNN SDPA backend on CUDA; defaults are kept on CPU/ROCm).
228
 
229
  ```python
230
+ import sys, torch
231
  from transformers import AutoModel
232
+
233
+ ckpt = "lemondecider-4b-20261015-v2" # local package directory
234
+ sys.path.insert(0, ckpt) # make the in-package runtime importable
235
  from decision_utils import load_processor, predict_batch
236
 
 
237
  model = AutoModel.from_pretrained(
238
  ckpt, trust_remote_code=True, local_files_only=True,
239
  dtype=torch.bfloat16, device_map="cuda:0", attn_implementation="sdpa",
 
254
 
255
  CLI from inside the package: `python3 model.py --checkpoint . --device cuda:0 --input rows.json`.
256
 
257
+ Batching: each `predict_batch` call runs ONE forward pass over all the rows you pass
258
+ (inputs are left-padded to the longest prompt); the HTTP serving bridge chunks its
259
+ requests at 8 questions per forward pass. Requests over the 262,144-token
260
+ `max_input_length` limit are rejected with the limit named (HTTP 422 in server
261
+ wrappers) — nothing is truncated.
262
 
263
  ## Intended use & limitations
264
 
 
278
  - `LICENSE` — Apache-2.0 text as preserved from the parent checkpoint lineage
279
  (base: Qwen/Qwen3.5-4B, inherit the base model's terms).
280
  - `LICENSE.code` — MIT for runtime/server code components adapted from upstream.
 
281
  - No benchmark score is claimed by this package beyond the reproducible evidence
282
  files listed above; the Decision Index owner reserves 80% of its Full score for
283
  private tests, so the 50.31 public index is not a board submission.
284
 
 
 
 
 
285
 
286
  ## Acknowledgements
287