lhallee commited on
Commit
402d419
·
verified ·
1 Parent(s): b0ad7ff

Update FastPLMs files

Browse files
README.md CHANGED
@@ -10,7 +10,7 @@ tags:
10
 
11
  # Synthyra/ANKH_large
12
 
13
- This checkpoint packages the FastPLMs `ANKH` implementation.
14
 
15
  Accepted inputs are amino-acid sequences tokenized for encoder or sequence-to-
16
  sequence use.
@@ -30,9 +30,7 @@ Supported Transformers entry points are `AutoConfig`, `AutoModel`,
30
  | Attention variants | Supported: `eager`, `sdpa` |
31
  | Compliance | Declared: exact release evidence is required |
32
 
33
- A supported interface is not a pretrained downstream predictor. Classification
34
- heads start untrained, and declared compliance metadata is not a claim that an
35
- arbitrary local build passed its release gate.
36
 
37
  ## Install and platform requirements
38
 
@@ -43,12 +41,12 @@ python -m pip install -r \
43
  "https://huggingface.co/Synthyra/ANKH_large/resolve/main/requirements.txt"
44
  ```
45
 
46
- The FastPLMs implementation itself is embedded in the model repository and loaded
47
- by Transformers through `trust_remote_code=True`.
48
 
49
- Python 3.11-3.14, PyTorch 2.13, and Transformers 5.13 are required. The declared CPU gate covers tiny offline contracts; published checkpoint throughput and parity require the documented device tier. The Hub quick start below requires network
50
- access on first download. For an air-gapped run, first build the manifest-pinned
51
- local artifact and use the offline form shown in the example.
52
 
53
  ## Quick start
54
 
@@ -64,28 +62,27 @@ model = AutoModel.from_pretrained(
64
  ```
65
 
66
  For offline validation, replace `model_id` with the manifest-built
67
- `dist/hub/ANKH_large` path and pass `local_files_only=True`.
68
 
69
  ## Attention and compliance
70
 
71
- The quick start selects `sdpa` explicitly. Declared variants are `eager`, `sdpa`. An unavailable requested backend raises
72
- instead of silently switching implementations.
73
- `output_attentions=True` may use the documented, one-call eager fallback solely
74
- to materialize attention tensors; the configured backend remains unchanged.
75
 
76
- This family declares the `compliance` tier. Release evidence binds the exact
77
  checkpoint, backend, dtype, hardware, inputs, and reference revision.
78
 
79
  ## Tokenization and forward inference
80
 
81
  `Synthyra/ANKH_large` contains the complete encoder-decoder checkpoint.
82
- `AutoModel` loads the encoder view without allocating the decoder, while
83
- `AutoModelForSeq2SeqLM` loads the encoder, decoder, cross-attention, and
84
- language-model head.
85
 
86
- Use the tokenizer owned by the loaded model so tokenizer files, revision,
87
- offline/cache policy, and ANKH's residue-aware pre-tokenizer stay aligned.
88
- Pass raw protein strings without inserted residue spaces:
89
 
90
  ```python
91
  import torch
@@ -105,8 +102,8 @@ print(output.last_hidden_state.shape)
105
 
106
  ## Dataset embeddings
107
 
108
- Dataset embeddings default to the encoder final state. Select a native encoder
109
- layer directly:
110
 
111
  ```python
112
  encoder_result = model.embed_dataset(
@@ -118,8 +115,8 @@ encoder_result = model.embed_dataset(
118
  print(encoder_result[0].tensor.shape) # (l, d)
119
  ```
120
 
121
- Decoder representations require `AutoModelForSeq2SeqLM` and exactly one
122
- aligned decoder input. ANKH does not invent a shifted target:
123
 
124
  ```python
125
  from transformers import AutoModelForSeq2SeqLM
@@ -144,8 +141,8 @@ and alignment policy.
144
 
145
  ## Downstream classification
146
 
147
- Both downstream AutoClasses reuse the checkpoint backbone and initialize a new,
148
- untrained `classifier`. Sequence labels have shape `(b,)`; residue labels have
149
  shape `(b, l)` and use `-100` outside biological positions:
150
 
151
  ```python
@@ -183,7 +180,7 @@ print(token_output.logits.shape) # (b, l, 3)
183
 
184
  ## PEFT fine-tuning
185
 
186
- Install the direct training dependencies, then attach LoRA to the loaded checkpoint:
187
 
188
  ```bash
189
  python -m pip install "datasets>=4.8,<5" "peft>=0.19,<0.20"
@@ -204,17 +201,17 @@ peft_model = get_peft_model(
204
  )
205
  ```
206
 
207
- This checkpoint advertises a classification head, so the separately trained
208
- `classifier` is saved with the adapter.
209
  All FastPLMs checkpoints follow the Transformers `PreTrainedModel` contract and
210
- can be adapted with PEFT. The ESM2-specific shipped CLI is an example, not a
211
  support boundary. Record the target modules, base revision, data identity, and
212
  trainable parameter scope.
213
 
214
  ## Test-time training
215
 
216
  TTT samples masked views of one protein and updates only injected low-rank
217
- adapters. Base checkpoint weights remain frozen:
218
 
219
  ```python
220
  from transformers import AutoModelForMaskedLM
@@ -232,13 +229,13 @@ ttt_model.ttt_reset()
232
  print(metrics)
233
  ```
234
 
235
- Persisted adapters retain their deterministic reset state. TTT adds latency
236
- and memory, can worsen an output, and does not establish biological function.
237
 
238
  ## Encoder and sequence-to-sequence use
239
 
240
  `Synthyra/ANKH_large` contains the complete ANKH encoder-decoder checkpoint.
241
- Use `AutoModel` for encoder embeddings and `AutoModelForSeq2SeqLM` for
242
  task-specific decoding:
243
 
244
  ```python
@@ -261,9 +258,9 @@ print(encoder_hidden.shape)
261
  print(tokenizer.batch_decode(generated_ids, skip_special_tokens=True))
262
  ```
263
 
264
- ANKH artifacts retain CC BY-NC-SA 4.0 terms. The notes below distinguish the
265
- official heads from FastPLMs extensions. The complete checkpoint is larger than
266
- the former encoder-only mirror while preserving encoder-output parity.
267
 
268
  ## Notes and limitations
269
 
@@ -289,10 +286,10 @@ masked-LM extension and is not an official ANKH head.
289
  ## Release record
290
 
291
  - FastPLMs weights: `Synthyra/ANKH_large`
292
- - Runtime revision: recorded separately in the built artifact and published commit
293
- - Source-tree and runtime-bundle SHA-256: recorded in `provenance.json`
294
  - Canonical transformed state SHA-256: `e498a2e9aea76ef784cbe3e596c6b3f5e9a40e209ad837f7e3207099e4d74483`
295
- - Conversion equality attestation: recorded in `provenance.json`
296
  - Official checkpoint: `ElnaggarLab/ankh-large`
297
  - Artifact source: `official`
298
  - State transform: `ankh_t5_to_fastplms_v1`
@@ -300,19 +297,17 @@ masked-LM extension and is not an official ANKH head.
300
  - Release tiers: `check`, `compliance`, `feature`, `artifact`, `benchmark`
301
  - Unresolved required file identities: `0`
302
 
303
- `provenance.json` records exact file identities, conversion, source revisions,
304
- legal texts, schema, and attestations. A nonzero unresolved count blocks release.
305
 
306
  ## Validation boundary
307
 
308
- Declared tiers compare applicable configuration, tokenizer behavior, state,
309
- and representative inference with the pinned reference. Metadata alone does
310
- not claim a build passed, a backend is faster, or an output is biologically
311
- valid.
312
 
313
  ## License
314
 
315
  Checkpoint terms: CC-BY-NC-SA-4.0. The Hub model-card identifier is
316
- `cc-by-nc-sa-4.0`. Applicable source licenses, notices, attribution,
317
- and conversion records are distributed with the local artifact. Review them
318
- before use.
 
10
 
11
  # Synthyra/ANKH_large
12
 
13
+ This checkpoint contains the FastPLMs `ANKH` implementation.
14
 
15
  Accepted inputs are amino-acid sequences tokenized for encoder or sequence-to-
16
  sequence use.
 
30
  | Attention variants | Supported: `eager`, `sdpa` |
31
  | Compliance | Declared: exact release evidence is required |
32
 
33
+ A supported interface is not a pretrained downstream predictor. Classification heads start untrained. Compliance metadata does not show that a local build passed its release gate.
 
 
34
 
35
  ## Install and platform requirements
36
 
 
41
  "https://huggingface.co/Synthyra/ANKH_large/resolve/main/requirements.txt"
42
  ```
43
 
44
+ The FastPLMs implementation itself is embedded in the model repository.
45
+ Transformers loads it through `trust_remote_code=True`.
46
 
47
+ This model requires Python 3.11-3.14, PyTorch 2.13, and Transformers 5.13. The CPU gate covers small offline tests. Published checkpoint throughput and parity require the documented device tier. The Hub quick start needs network access for
48
+ the first download. For an air-gapped run, build the manifest-pinned local
49
+ artifact first and use the offline example.
50
 
51
  ## Quick start
52
 
 
62
  ```
63
 
64
  For offline validation, replace `model_id` with the manifest-built
65
+ `dist/hub/ANKH_large` path. Pass `local_files_only=True`.
66
 
67
  ## Attention and compliance
68
 
69
+ The quick start selects `sdpa` explicitly. Declared variants are `eager`, `sdpa`. An unavailable requested backend raises.
70
+ It does not silently change implementation.
71
+ `output_attentions=True` can use the documented one-call eager fallback to
72
+ materialize attention tensors. The configured backend does not change.
73
 
74
+ This family declares the `compliance` tier. Release evidence identifies the
75
  checkpoint, backend, dtype, hardware, inputs, and reference revision.
76
 
77
  ## Tokenization and forward inference
78
 
79
  `Synthyra/ANKH_large` contains the complete encoder-decoder checkpoint.
80
+ `AutoModel` loads the encoder without the decoder. `AutoModelForSeq2SeqLM`
81
+ loads the encoder, decoder, cross-attention, and language-model head.
 
82
 
83
+ Use the tokenizer from the loaded model. This keeps tokenizer files, revision,
84
+ offline/cache policy, and ANKH's residue-aware pre-tokenizer aligned. Pass raw
85
+ protein strings without residue spaces:
86
 
87
  ```python
88
  import torch
 
102
 
103
  ## Dataset embeddings
104
 
105
+ Dataset embeddings use the final encoder state by default. Select a native
106
+ encoder layer directly:
107
 
108
  ```python
109
  encoder_result = model.embed_dataset(
 
115
  print(encoder_result[0].tensor.shape) # (l, d)
116
  ```
117
 
118
+ Decoder representations require `AutoModelForSeq2SeqLM` and one aligned decoder
119
+ input. ANKH does not create a shifted target:
120
 
121
  ```python
122
  from transformers import AutoModelForSeq2SeqLM
 
141
 
142
  ## Downstream classification
143
 
144
+ Both downstream AutoClasses use the checkpoint backbone and create a new,
145
+ untrained `classifier`. Sequence labels have shape `(b,)`. Residue labels have
146
  shape `(b, l)` and use `-100` outside biological positions:
147
 
148
  ```python
 
180
 
181
  ## PEFT fine-tuning
182
 
183
+ Install the training dependencies. Then attach LoRA to the loaded checkpoint:
184
 
185
  ```bash
186
  python -m pip install "datasets>=4.8,<5" "peft>=0.19,<0.20"
 
201
  )
202
  ```
203
 
204
+ This checkpoint advertises a classification head. Save the separately trained
205
+ `classifier` with the adapter.
206
  All FastPLMs checkpoints follow the Transformers `PreTrainedModel` contract and
207
+ can use PEFT. The ESM2-specific shipped CLI is an example, not a
208
  support boundary. Record the target modules, base revision, data identity, and
209
  trainable parameter scope.
210
 
211
  ## Test-time training
212
 
213
  TTT samples masked views of one protein and updates only injected low-rank
214
+ adapters. Base checkpoint weights stay frozen:
215
 
216
  ```python
217
  from transformers import AutoModelForMaskedLM
 
229
  print(metrics)
230
  ```
231
 
232
+ Saved adapters retain their deterministic reset state. TTT adds latency and
233
+ memory, can worsen an output, and does not show biological function.
234
 
235
  ## Encoder and sequence-to-sequence use
236
 
237
  `Synthyra/ANKH_large` contains the complete ANKH encoder-decoder checkpoint.
238
+ Use `AutoModel` for encoder embeddings. Use `AutoModelForSeq2SeqLM` for
239
  task-specific decoding:
240
 
241
  ```python
 
258
  print(tokenizer.batch_decode(generated_ids, skip_special_tokens=True))
259
  ```
260
 
261
+ ANKH artifacts retain CC BY-NC-SA 4.0 terms. The notes below distinguish official
262
+ heads from FastPLMs extensions. The complete checkpoint is larger than the former
263
+ encoder-only mirror and preserves encoder-output parity.
264
 
265
  ## Notes and limitations
266
 
 
286
  ## Release record
287
 
288
  - FastPLMs weights: `Synthyra/ANKH_large`
289
+ - Runtime revision: recorded in the built artifact and published commit
290
+ - Source-tree and runtime-bundle SHA-256: recorded in the source record
291
  - Canonical transformed state SHA-256: `e498a2e9aea76ef784cbe3e596c6b3f5e9a40e209ad837f7e3207099e4d74483`
292
+ - Conversion equality attestation: recorded in the source record
293
  - Official checkpoint: `ElnaggarLab/ankh-large`
294
  - Artifact source: `official`
295
  - State transform: `ankh_t5_to_fastplms_v1`
 
297
  - Release tiers: `check`, `compliance`, `feature`, `artifact`, `benchmark`
298
  - Unresolved required file identities: `0`
299
 
300
+ The source record records exact file identities, conversion, source revisions,
301
+ legal texts, schema, and attestations. A nonzero unresolved count blocks a release.
302
 
303
  ## Validation boundary
304
 
305
+ Declared tiers compare configuration, tokenizer behavior, state, and
306
+ representative inference with the pinned reference. Metadata does not show that
307
+ a build passed, that a backend is faster, or that an output is biologically valid.
 
308
 
309
  ## License
310
 
311
  Checkpoint terms: CC-BY-NC-SA-4.0. The Hub model-card identifier is
312
+ `cc-by-nc-sa-4.0`. The local artifact contains applicable source
313
+ licenses, notices, attribution, and conversion records. Review them before use.
 
THIRD_PARTY_NOTICES.md CHANGED
@@ -46,7 +46,7 @@ explicitly defines the repository release as including pretrained DPLM1 and
46
  DPLM2 weights, and the same revision carries the complete
47
  [Apache-2.0 license](https://github.com/bytedance/dplm/blob/8a2e15e53416b4536f03f79ad1f6f6a9cbd5e19d/LICENSE).
48
  FastPLMs records both checkpoint families as Apache-2.0 and distributes the
49
- verbatim license plus `LICENSES/dplm/PROVENANCE.md`. Converted weights retain
50
  those terms and remain subject to the ordinary artifact and publication gates.
51
 
52
  ## Biohub
@@ -80,7 +80,7 @@ TorchMetrics, Lightning Utilities, and NVIDIA DLLogger. Their exact versions or
80
  revision are pinned in `docker/constraints/esmfold.txt`; OpenFold imports them
81
  eagerly, and FastPLMs production code does not depend on them. DLLogger's exact
82
  source identity and installed-license handling are recorded in
83
- `LICENSES/dllogger/PROVENANCE.md`.
84
 
85
  ## ProteinTTT
86
 
@@ -93,7 +93,7 @@ revision-specific provenance are under `LICENSES/protein-ttt/`.
93
  For every supported family, `src/fastplms/models.toml` records an immutable
94
  official checkpoint revision, an immutable FastPLMs checkpoint revision, file
95
  digests, a named state transformation, and a mechanism-level conversion record.
96
- Generated artifacts reproduce that record in `provenance.json`. A release or
97
  artifact build must fail when a required file identity, legal text, attribution
98
  notice, modified-file notice, upstream revision, or conversion record is absent
99
  or differs from its manifest digest.
 
46
  DPLM2 weights, and the same revision carries the complete
47
  [Apache-2.0 license](https://github.com/bytedance/dplm/blob/8a2e15e53416b4536f03f79ad1f6f6a9cbd5e19d/LICENSE).
48
  FastPLMs records both checkpoint families as Apache-2.0 and distributes the
49
+ verbatim license plus `LICENSES/dplm/SOURCE_RECORD.md`. Converted weights retain
50
  those terms and remain subject to the ordinary artifact and publication gates.
51
 
52
  ## Biohub
 
80
  revision are pinned in `docker/constraints/esmfold.txt`; OpenFold imports them
81
  eagerly, and FastPLMs production code does not depend on them. DLLogger's exact
82
  source identity and installed-license handling are recorded in
83
+ `LICENSES/dllogger/SOURCE_RECORD.md`.
84
 
85
  ## ProteinTTT
86
 
 
93
  For every supported family, `src/fastplms/models.toml` records an immutable
94
  official checkpoint revision, an immutable FastPLMs checkpoint revision, file
95
  digests, a named state transformation, and a mechanism-level conversion record.
96
+ Generated artifacts reproduce that record in `source-record.json`. A release or
97
  artifact build must fail when a required file identity, legal text, attribution
98
  notice, modified-file notice, upstream revision, or conversion record is absent
99
  or differs from its manifest digest.
fastplms/models.toml CHANGED
@@ -88,7 +88,7 @@ license_files = ["LICENSE"]
88
  license_digests = ["LICENSE=sha256:cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30"]
89
  distribution_files = [
90
  "LICENSE=sha256:cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30",
91
- "PROVENANCE.md=sha256:a659f74be9073cf1ad2d2f7071531ca56959b421f111152cf4c41184ace5970e",
92
  ]
93
 
94
  [[upstreams]]
@@ -122,7 +122,7 @@ license_files = ["LICENSE"]
122
  license_digests = ["LICENSE=sha256:da6d3703ed11cbe42bd212c725957c98da23cbff1998c05fa4b3d976d1a58e93"]
123
  distribution_files = [
124
  "LICENSE=sha256:da6d3703ed11cbe42bd212c725957c98da23cbff1998c05fa4b3d976d1a58e93",
125
- "PROVENANCE.md=sha256:950adb94daf15e646ddf226dacfe2a8e77801aa0793e439a9a3490a48eb666e7",
126
  ]
127
 
128
  [[upstreams]]
@@ -136,7 +136,7 @@ license_digests = ["LICENSE=sha256:cfc7749b96f63bd31c3c42b5c471bf756814053e847c1
136
  distribution_files = [
137
  "LICENSE=sha256:cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30",
138
  "MODIFICATIONS.md=sha256:fd6f0aa1086a0c996cf967b326d18e965660cda0ad5c7f36a3474a8490720da3",
139
- "PROVENANCE.md=sha256:48c903db43a217a3126afaefbac60b7ddac7efda2dfcc0cbff0bffc7d6c30081",
140
  ]
141
 
142
  [[upstreams]]
@@ -149,7 +149,7 @@ license_files = ["LICENSE"]
149
  license_digests = ["LICENSE=sha256:bb01e7d5554f9e2e117172e56551452f68a7818df7bc8e71cd7a776a1d4ba3df"]
150
  distribution_files = [
151
  "LICENSE=sha256:bb01e7d5554f9e2e117172e56551452f68a7818df7bc8e71cd7a776a1d4ba3df",
152
- "PROVENANCE.md=sha256:dc641c37353c2efd50ccbdb316ca4aae495ec02c1563e0e15bac92f75fc482e5",
153
  ]
154
 
155
  [families.esm2]
@@ -187,7 +187,8 @@ reference_adapter = "tests.parity.support.reference_adapters.esm_plusplus"
187
  attention = ["eager", "sdpa", "flex_attention", "flash_attention_2", "flash_attention_3"]
188
  dtypes = ["float32", "bfloat16"]
189
  bf16_execution = "static_parameters"
190
- precisions = ["default"]
 
191
  vram_tier = "sequence"
192
  checkpoint_license = "MIT"
193
  hub_license = "mit"
@@ -267,7 +268,7 @@ checkpoint_license = "Apache-2.0"
267
  hub_license = "apache-2.0"
268
  weights_publication_allowed = true
269
  state_transform = "dplm_to_fastplms_v1"
270
- conversion_provenance = "Input: the pinned official DPLM1 checkpoint. Transformation: apply dplm_to_fastplms_v1, omitting the unused absolute-position table for rotary checkpoints and materializing the tied input/output embedding values as independent tensors. Output: the pinned Synthyra DPLM checkpoint. Validation: release parity compares exact state identity after the declared transform, tokenizer behavior, generation, and inference. License basis: the pinned ByteDance DPLM Apache-2.0 LICENSE and README explicitly scope the repository release to the pretrained DPLM1 and DPLM2 weights; immutable evidence is recorded in LICENSES/dplm/PROVENANCE.md. Limitation: redistribution remains subject to Apache-2.0 and the pinned source record; no broader rights are inferred."
271
  representative = "dplm_150m"
272
  documentation = "docs/models.md#dplm"
273
  test_tiers = ["check", "compliance", "feature", "artifact", "benchmark"]
@@ -291,7 +292,7 @@ checkpoint_license = "Apache-2.0"
291
  hub_license = "apache-2.0"
292
  weights_publication_allowed = true
293
  state_transform = "dplm2_to_fastplms_v1"
294
- conversion_provenance = "Input: the pinned official DPLM2 checkpoint. Transformation: apply dplm2_to_fastplms_v1, retaining the independent language-model head and trained encoder contact head while omitting the unused absolute-position table for rotary checkpoints. Output: the pinned Synthyra DPLM2 checkpoint. Validation: release parity compares exact keys and values after the declared omission, non-aliasing, tokenizer behavior, generation, and inference. License basis: the pinned ByteDance DPLM Apache-2.0 LICENSE and README explicitly scope the repository release to the pretrained DPLM1 and DPLM2 weights; immutable evidence is recorded in LICENSES/dplm/PROVENANCE.md. Limitation: no head exception is permitted by this source record, and redistribution remains subject to Apache-2.0."
295
  representative = "dplm2_150m"
296
  documentation = "docs/models.md#dplm2"
297
  test_tiers = ["check", "compliance", "feature", "artifact", "benchmark"]
 
88
  license_digests = ["LICENSE=sha256:cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30"]
89
  distribution_files = [
90
  "LICENSE=sha256:cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30",
91
+ "SOURCE_RECORD.md=sha256:a659f74be9073cf1ad2d2f7071531ca56959b421f111152cf4c41184ace5970e",
92
  ]
93
 
94
  [[upstreams]]
 
122
  license_digests = ["LICENSE=sha256:da6d3703ed11cbe42bd212c725957c98da23cbff1998c05fa4b3d976d1a58e93"]
123
  distribution_files = [
124
  "LICENSE=sha256:da6d3703ed11cbe42bd212c725957c98da23cbff1998c05fa4b3d976d1a58e93",
125
+ "SOURCE_RECORD.md=sha256:950adb94daf15e646ddf226dacfe2a8e77801aa0793e439a9a3490a48eb666e7",
126
  ]
127
 
128
  [[upstreams]]
 
136
  distribution_files = [
137
  "LICENSE=sha256:cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30",
138
  "MODIFICATIONS.md=sha256:fd6f0aa1086a0c996cf967b326d18e965660cda0ad5c7f36a3474a8490720da3",
139
+ "SOURCE_RECORD.md=sha256:48c903db43a217a3126afaefbac60b7ddac7efda2dfcc0cbff0bffc7d6c30081",
140
  ]
141
 
142
  [[upstreams]]
 
149
  license_digests = ["LICENSE=sha256:bb01e7d5554f9e2e117172e56551452f68a7818df7bc8e71cd7a776a1d4ba3df"]
150
  distribution_files = [
151
  "LICENSE=sha256:bb01e7d5554f9e2e117172e56551452f68a7818df7bc8e71cd7a776a1d4ba3df",
152
+ "SOURCE_RECORD.md=sha256:dc641c37353c2efd50ccbdb316ca4aae495ec02c1563e0e15bac92f75fc482e5",
153
  ]
154
 
155
  [families.esm2]
 
187
  attention = ["eager", "sdpa", "flex_attention", "flash_attention_2", "flash_attention_3"]
188
  dtypes = ["float32", "bfloat16"]
189
  bf16_execution = "static_parameters"
190
+ precisions = ["default", "fp8"]
191
+ experimental_precisions = ["fp8"]
192
  vram_tier = "sequence"
193
  checkpoint_license = "MIT"
194
  hub_license = "mit"
 
268
  hub_license = "apache-2.0"
269
  weights_publication_allowed = true
270
  state_transform = "dplm_to_fastplms_v1"
271
+ conversion_provenance = "Input: the pinned official DPLM1 checkpoint. Transformation: apply dplm_to_fastplms_v1, omitting the unused absolute-position table for rotary checkpoints and materializing the tied input/output embedding values as independent tensors. Output: the pinned Synthyra DPLM checkpoint. Validation: release parity compares exact state identity after the declared transform, tokenizer behavior, generation, and inference. License basis: the pinned ByteDance DPLM Apache-2.0 LICENSE and README explicitly scope the repository release to the pretrained DPLM1 and DPLM2 weights; immutable evidence is recorded in LICENSES/dplm/SOURCE_RECORD.md. Limitation: redistribution remains subject to Apache-2.0 and the pinned source record; no broader rights are inferred."
272
  representative = "dplm_150m"
273
  documentation = "docs/models.md#dplm"
274
  test_tiers = ["check", "compliance", "feature", "artifact", "benchmark"]
 
292
  hub_license = "apache-2.0"
293
  weights_publication_allowed = true
294
  state_transform = "dplm2_to_fastplms_v1"
295
+ conversion_provenance = "Input: the pinned official DPLM2 checkpoint. Transformation: apply dplm2_to_fastplms_v1, retaining the independent language-model head and trained encoder contact head while omitting the unused absolute-position table for rotary checkpoints. Output: the pinned Synthyra DPLM2 checkpoint. Validation: release parity compares exact keys and values after the declared omission, non-aliasing, tokenizer behavior, generation, and inference. License basis: the pinned ByteDance DPLM Apache-2.0 LICENSE and README explicitly scope the repository release to the pretrained DPLM1 and DPLM2 weights; immutable evidence is recorded in LICENSES/dplm/SOURCE_RECORD.md. Limitation: no head exception is permitted by this source record, and redistribution remains subject to Apache-2.0."
296
  representative = "dplm2_150m"
297
  documentation = "docs/models.md#dplm2"
298
  test_tiers = ["check", "compliance", "feature", "artifact", "benchmark"]
fastplms_bundle.py CHANGED
The diff for this file is too large to render. See raw diff
 
modeling_fastplms.py CHANGED
@@ -12,7 +12,7 @@ from zipfile import ZIP_DEFLATED, ZipFile
12
 
13
  from .fastplms_bundle import RUNTIME_DATA, RUNTIME_HASH
14
 
15
- if RUNTIME_HASH != "437c5f5dcc809678e99b8e36d962e78b7960170c81d0b6289d2baeef7920e40f":
16
  raise RuntimeError("FastPLMs runtime identity differs from the bridge.")
17
 
18
  _RUNTIME_TEMPORARIES = []
 
12
 
13
  from .fastplms_bundle import RUNTIME_DATA, RUNTIME_HASH
14
 
15
+ if RUNTIME_HASH != "5008fbb18bb3259b0c0dfeac2f6d4d4bb4ccd97ba641905964ccd97de180f3fb":
16
  raise RuntimeError("FastPLMs runtime identity differs from the bridge.")
17
 
18
  _RUNTIME_TEMPORARIES = []