/ Модель

Характеристики

Лицензия
MIT
Архитектура
MoE
Библиотека
transformers
Опубликована
19 авг 2026

ares-ec-moe-4b-86k

Заполнение пропусковТекст → текст3 профессии

Белковый MoE-энкодер для заполнения маскированных аминокислот и получения представлений последовательностей, предназначенный для исследовательских задач.

33скачиваний за 30 дней0лайковвеса обновлены23 авг 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Ares-ec-moe-4b-86k — белковая языковая модель HazemLab, обученная с нуля на UniRef50 для заполнения маскированных аминокислот и получения представлений белковых последовательностей. Это двунаправленный энкодер с 20 слоями и разреженной архитектурой Mixture-of-Experts: первые 10 слоёв используют плотные блоки, а последние 10 — MoE с маршрутизацией expert choice. В модели около 4,22 млрд параметров, при обработке каждого токена активно примерно 0,44 млрд; чекпойнт сохранён в формате safetensors с весами float32.

Модель подходит для скоринга последовательностей, извлечения эмбеддингов остатков и белков, а также для экспериментального анализа эффектов аминокислотных замен. Она обучалась 86 000 шагов на 68 млн последовательностей UniRef50. Обучающий контекст — 1024 остатка; работа с более длинными последовательностями возможна благодаря RoPE, но её качество не проверено. Модель принимает только одноцепочечные аминокислотные последовательности: она не обрабатывает структуры, MSA, мультимеры или нуклеотидные последовательности и не генерирует белки авторегрессионно.

Это исследовательский артефакт, а не производственный энкодер: в маршрутизаторе expert choice известен дефект нормализации, а токены могут не попасть ни к одному эксперту. Качество прогнозирования эффектов вариантов сильно зависит от типа анализа, а смещения UniRef50 отражаются в обученных представлениях. Модель не валидирована для клинических, диагностических или биобезопасностных решений. Лицензия — MIT.

Сценарии применения

  • заполнение маскированных аминокислот в белковых последовательностях
  • получение эмбеддингов аминокислотных остатков
  • получение эмбеддинга целой белковой последовательности
  • скоринг вариантов аминокислотных замен
  • экспериментальное сравнение белковых последовательностей

Ограничения

Двунаправленный энкодер не генерирует последовательности; обучающий контекст составляет 1024 аминокислотных остатка, а качество за его пределами не проверено. Маршрутизатор может пропускать токены, известен дефект его нормализации; предсказания вариантов не валидированы для клинических и биобезопасностных решений.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

ares-ec-moe-4b-86k

A ~4.22B-parameter sparse Mixture-of-Experts protein language model, pretrained from scratch on UniRef50 with a masked-language-modeling objective on TPU.

This is the expert choice variant, with the last 10 of the 20 layers using MoE feed-forwards and the first 10 staying dense (consecutive placement), taken at 86,000 training steps.

Paper Code License

Spotlight at the GenBio Workshop, ICML 2026. Ares: Loss-Free Mixture-of-Experts Routing for Bidirectional Protein Encoders.

Pick the right checkpoint

Five Ares checkpoints are published. They share an architecture and a training recipe and differ only in how tokens reach experts and where the MoE layers sit.

CheckpointRoutingMoE placementStepsProteinGym
ares-softmoe-4b-consecutive-150KSoftConsecutive150,0000.341
ares-softmoe-4b-l2-consecutive-225KSoft + L2Consecutive225,0000.341
ares-softmoe-4b-l2-consecutive-150KSoft + L2Consecutive150,0000.319
ares-expert-choice-4b-interleaved-150KExpert choiceInterleaved150,0000.126
ares-ec-moe-4b-86k ← you are hereExpert choiceConsecutive86,000not evaluated

ProteinGym numbers are the Fisher-z aggregated Spearman over 217 DMS substitution assays (see Evaluation). Higher is better.

If you just want a protein encoder, start with ares-softmoe-4b-consecutive-150K. It and ares-softmoe-4b-l2-consecutive-225K are the two strongest of the family and are effectively tied on ProteinGym (0.341 vs 0.341; they split the 217 assays 111 to 106). The 150K checkpoint is the simpler default: same score, fewer training steps, no router normalization to reason about.

Model details

Parameters4,215,708,704 (~4.22B)
Weights on disk~16.9 GB, float32, single model.safetensors
Layers20 encoder blocks, pre-norm
Hidden size1024
Feed-forward size4096, gated SiLU (SwiGLU)
AttentionGrouped-query, 16 heads / 8 KV heads, head dim 64
Position encodingRotary (RoPE), base 10000
NormalizationRMSNorm
Vocabulary31 tokens (20 standard + BXZJUO + 5 special)
Trained context1024 tokens
Experts32
Routingexpert_choice
MoE placementConsecutive (layers 10-19)
ObjectiveMasked language modeling with scheduled masking + mutation noising

How routing works here

Each of the 32 experts selects its own top-k tokens, with k set by a capacity factor of 2.0 over the flattened batch. Load is balanced by construction (every expert receives exactly the same number of tokens), but tokens can be dropped entirely or picked by several experts at once.

Compute cost

~0.44B active parameters per token. A capacity factor of 2.0 across 32 experts means roughly 2 experts of work per token, so about 0.44B of the 4.22B parameters are exercised on any given token. The exact figure varies per token: expert choice makes no guarantee that a token is picked at all.

Usage

Ares is not part of transformers, so install the ares package first. It provides the Ares model class and the tokenizer, and no trust_remote_code is needed.

pip install git+https://github.com/hazemessamm/ares.git

Only the core dependencies are required for inference; the training and evaluation extras are never imported on the model path.

Fill in masked residues

import torch
from ares import Ares, AresProteinTokenizer

model = Ares.from_pretrained("HazemLab/ares-ec-moe-4b-86k", dtype=torch.bfloat16).eval()
tokenizer = AresProteinTokenizer()

sequence = "MKTAYIAKQRQISFVKSHFSRQ<mask>ERLEKLLQ"
batch = tokenizer(sequence, return_tensors="pt")

with torch.no_grad():
    logits = model(**batch).logits

mask_pos = (batch["input_ids"] == tokenizer.mask_token_id).nonzero()[0, 1]
top = logits[0, mask_pos].topk(5)
for score, token_id in zip(top.values, top.indices):
    print(tokenizer.decode(token_id), float(score))

Extract residue and sequence embeddings

hidden_states[0] holds the final normalized representation.

with torch.no_grad():
    out = model(**batch)

residue = out.hidden_states[0]                       # (batch, length, 1024)
mask = batch["attention_mask"].unsqueeze(-1)
pooled = (residue * mask).sum(1) / mask.sum(1)       # (batch, 1024), mean-pooled

Both the <cls> token and mean pooling over unpadded positions are reasonable sequence representations; the downstream evaluations in the repository use mean pooling.

Notes on loading

  • Weights are stored in float32 (~17 GB). Pass dtype=torch.bfloat16 unless you specifically need float32; every evaluation in the paper was run in bfloat16.
  • AresProteinTokenizer builds its vocabulary in code, so it needs no download and is identical across every Ares checkpoint.
  • This repo also ships tokenizer.json and tokenizer_config.json, which describe the same vocabulary. Nothing in the snippets above reads them.
  • The model accepts an optional sequence_ids argument for block-diagonal attention over packed sequences. Leave it unset for ordinary batched inference.

Training

DataUniRef50 (agemagician/uniref50_09012025), 68,346,946 sequences
Steps86,000 optimizer steps
ObjectiveMLM, masking rate cycled over 0.15 / 0.20 / 0.25 / 0.30
Corruption80% <mask>, 10% random-residue mutation, 10% unchanged
Masking schedulestaged_linear, starting at 15% masking and progressively mixing in the higher rates
OptimizerAdamW, lr 3e-4, betas (0.9, 0.95), eps 1e-8, weight decay 0.01
Schedule5% warmup, gradient clipping at 1.0
Precisionbfloat16 autocast, float32 master weights
Sequence handlingMultiple sequences packed per batch row with block-diagonal attention masking and per-sequence position IDs
HardwareGoogle Cloud TPU via PyTorch/XLA with SPMD sharding, gradient checkpointing enabled

Sequence packing means no compute is spent on padding. Correctness of packed training against unpacked inference is asserted in the repository's tests/test_packing_correctness.py.

Evaluation

This checkpoint has not been run through the ProteinGym benchmark. The evaluated members of the family are listed in Pick the right checkpoint; the harness that produced those numbers is evaluation/proteingym_eval.py and will run against this repo unchanged:

python evaluation/proteingym_eval.py --ckpt HazemLab/ares-ec-moe-4b-86k

Limitations and known issues

  • Encoder only. This is a bidirectional masked LM. It scores and embeds sequences; it does not generate them autoregressively.
  • 1024-token training context. RoPE allows longer inputs to run, but nothing beyond 1024 residues was seen during training and quality past that point is untested.
  • Single-chain amino acid sequences. No structure, no MSA, no multimer or nucleotide input.
  • Weights are float32. Expect a ~17 GB download and load in bfloat16 for inference.
  • UniRef50 inherits the biases of the sequence databases it was built from. Well-studied organisms and protein families are heavily over-represented. Zero-shot variant-effect performance varies sharply by assay type; the per-assay CSVs in the repository make this visible.
  • The expert-choice router is not faithful to the original formulation. Its routing softmax normalizes over tokens rather than over experts, which changes what the router probabilities mean and what gradient the router receives. This is a known defect, and it is the most likely explanation for the gap between the expert-choice and soft-routing checkpoints. Treat this checkpoint as a research artifact for studying that failure mode rather than as a production encoder.
  • Tokens can be dropped. With a capacity factor of 2.0, expert choice offers no guarantee that any particular token is selected by any expert. Dropped tokens pass through the MoE layer with a zero contribution from the feed-forward path.
  • moe_num_slots appears in config.json but is inert for expert-choice routing; it only affects the soft router.
  • Not validated for clinical, diagnostic, or biosafety-relevant decisions. Variant-effect predictions from this model are hypotheses for experimental follow-up, nothing more.

MoE interpretability

Ares ships an analysis pipeline for inspecting what the experts in these checkpoints actually do: per-expert amino-acid and biochemical-property preferences, positional preferences, routing heatmaps, causal expert-knockout importance, and steering interventions. See evaluation/moe_analysis/ and read ANALYSIS_OUTPUTS.md before interpreting any specialization number. It documents every artifact, every metric, and the axis each routing weight normalizes over.

Acknowledgments

We gratefully acknowledge Google's TPU Research Cloud (TRC) program for providing the Cloud TPU resources that made the training of Ares possible. We thank Dr. Ahmed Saleh Mansour for his valuable feedback and careful review of the manuscript.

Citation

@inproceedings{alsamkary2026ares,
  title     = {Ares: Loss-Free Mixture-of-Experts Routing for Bidirectional Protein Encoders},
  author    = {Alsamkary, Hazem},
  booktitle = {ICML 2026 Workshop on Generative AI and Biology (GenBio)},
  year      = {2026},
  note      = {Spotlight},
  url       = {https://openreview.net/forum?id=gq0R7xiPjg}
}

Not the final version; it will be updated when the camera-ready lands.

License

MIT.

Affiliation: Proteinea.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers · fill-mask

Нельзя запустить

Модели нужен код из репозитория; автор пока не в списке доверенных организаций.

Класс архитектуры
Ares
Ревизия весов
8894cb2

0 моделей