Transformers
Safetensors
t5
text2text-generation
protein-language-model
fastplms
custom_code
text-generation-inference
Instructions to use Synthyra/ANKH_large with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Synthyra/ANKH_large with Transformers:
# Load model directly from transformers import AutoTokenizer, AutoModelForSeq2SeqLM tokenizer = AutoTokenizer.from_pretrained("Synthyra/ANKH_large", trust_remote_code=True) model = AutoModelForSeq2SeqLM.from_pretrained("Synthyra/ANKH_large", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
Update FastPLMs files
Browse files- README.md +45 -50
- THIRD_PARTY_NOTICES.md +3 -3
- fastplms/models.toml +8 -7
- fastplms_bundle.py +0 -0
- modeling_fastplms.py +1 -1
README.md
CHANGED
|
@@ -10,7 +10,7 @@ tags:
|
|
| 10 |
|
| 11 |
# Synthyra/ANKH_large
|
| 12 |
|
| 13 |
-
This checkpoint
|
| 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
|
| 47 |
-
|
| 48 |
|
| 49 |
-
Python 3.11-3.14, PyTorch 2.13, and Transformers 5.13
|
| 50 |
-
|
| 51 |
-
|
| 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
|
| 68 |
|
| 69 |
## Attention and compliance
|
| 70 |
|
| 71 |
-
The quick start selects `sdpa` explicitly. Declared variants are `eager`, `sdpa`. An unavailable requested backend raises
|
| 72 |
-
|
| 73 |
-
`output_attentions=True`
|
| 74 |
-
|
| 75 |
|
| 76 |
-
This family declares the `compliance` tier. Release evidence
|
| 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
|
| 83 |
-
|
| 84 |
-
language-model head.
|
| 85 |
|
| 86 |
-
Use the tokenizer
|
| 87 |
-
offline/cache policy, and ANKH's residue-aware pre-tokenizer
|
| 88 |
-
|
| 89 |
|
| 90 |
```python
|
| 91 |
import torch
|
|
@@ -105,8 +102,8 @@ print(output.last_hidden_state.shape)
|
|
| 105 |
|
| 106 |
## Dataset embeddings
|
| 107 |
|
| 108 |
-
Dataset embeddings
|
| 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
|
| 122 |
-
|
| 123 |
|
| 124 |
```python
|
| 125 |
from transformers import AutoModelForSeq2SeqLM
|
|
@@ -144,8 +141,8 @@ and alignment policy.
|
|
| 144 |
|
| 145 |
## Downstream classification
|
| 146 |
|
| 147 |
-
Both downstream AutoClasses
|
| 148 |
-
untrained `classifier`. Sequence labels have shape `(b,)`
|
| 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
|
| 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
|
| 208 |
-
`classifier`
|
| 209 |
All FastPLMs checkpoints follow the Transformers `PreTrainedModel` contract and
|
| 210 |
-
can
|
| 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
|
| 218 |
|
| 219 |
```python
|
| 220 |
from transformers import AutoModelForMaskedLM
|
|
@@ -232,13 +229,13 @@ ttt_model.ttt_reset()
|
|
| 232 |
print(metrics)
|
| 233 |
```
|
| 234 |
|
| 235 |
-
|
| 236 |
-
|
| 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
|
| 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
|
| 265 |
-
|
| 266 |
-
|
| 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
|
| 293 |
-
- Source-tree and runtime-bundle SHA-256: recorded in
|
| 294 |
- Canonical transformed state SHA-256: `e498a2e9aea76ef784cbe3e596c6b3f5e9a40e209ad837f7e3207099e4d74483`
|
| 295 |
-
- Conversion equality attestation: recorded in
|
| 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 |
-
|
| 304 |
-
legal texts, schema, and attestations. A nonzero unresolved count blocks release.
|
| 305 |
|
| 306 |
## Validation boundary
|
| 307 |
|
| 308 |
-
Declared tiers compare
|
| 309 |
-
|
| 310 |
-
|
| 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`.
|
| 317 |
-
|
| 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/
|
| 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/
|
| 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 `
|
| 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 |
-
"
|
| 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 |
-
"
|
| 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 |
-
"
|
| 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 |
-
"
|
| 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/
|
| 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/
|
| 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 != "
|
| 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 = []
|