/ Модель

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

Контекст
1 026 токенов
Параметры
865 млн
Лицензия
MIT
Архитектура
esm · dense
Базовая модель
ProTrek_650M_UniRef50
Библиотека
sentence-transformers
Опубликована
21 июл 2025

ProTrek_650M_UniRef50_protein_encoder

ЭмбеддингиТекст → embedding3 профессии

Sentence Transformers-версия ProTrek для получения эмбеддингов белковых последовательностей, поиска похожих белков и кластеризации.

117скачиваний за 30 дней0лайковвеса обновлены21 июл 2025

Бенчмарки

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

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

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

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

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

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

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

ProTrek_650M_UniRef50_protein_encoder — версия модели ProTrek, подготовленная для работы с библиотекой Sentence Transformers. Она предназначена для получения векторных представлений белковых последовательностей и сравнения их семантической близости, например для поиска, кластеризации и извлечения признаков. Модель использует контрастивное обучение для представления белковых данных; в описанной архитектуре ProTrek также объединяет информацию о последовательностях, структуре белка и тексте.

Модель основана на ESM-архитектуре и содержит около 865,1 млн параметров. Максимальная длина последовательности — 1026 токенов, размерность выходного вектора — 1024, для сравнения используется косинусное сходство. Указаны компоненты esm2_t33_650M_UR50D, foldseek_t30_150M и PubMedBERT; эта версия оформлена как Sentence Transformer для эмбеддингов и задач сходства. Лицензия — MIT. Описание не уточняет, принимает ли именно этот чекпойнт структуру белка или текст как вход наряду с последовательностью.

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

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

Ограничения

Максимальная длина последовательности ограничена 1026 токенами. README описывает мультимодальную архитектуру ProTrek в целом, но не уточняет входные модальности именно этой версии Sentence Transformers.

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

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

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

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

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

Открыть на Hugging Face

ProTrek_650M_UniRef50_protein_encoder

This model is a SentenceTransformer-compatible version of ProTrek_650M_UniRef50_protein_encoder. It has been converted for use with the sentence-transformers library, enabling easy integration into semantic similarity tasks, such as semantic search, clustering, and feature extraction.

Github repo: https://github.com/westlake-repl/ProTrek
Hugging Face repo https://huggingface.co/westlake-repl/ProTrek_650M_UniRef50

Model Details

Model Description

  • Model Type: Sentence Transformer
  • Maximum Sequence Length: 1026 tokens
  • Output Dimensionality: 1024 dimensions
  • Similarity Function: Cosine Similarity

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 1026, 'do_lower_case': False, 'architecture': 'EsmModel'})
  (1): Pooling({'word_embedding_dimension': 1280, 'pooling_mode_cls_token': True, 'pooling_mode_mean_tokens': False, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
  (2): Dense({'in_features': 1280, 'out_features': 1024, 'bias': True, 'activation_function': 'torch.nn.modules.linear.Identity'})
  (3): Normalize()
)

Usage

Direct Usage (Sentence Transformers)

First install the Sentence Transformers library:

pip install -U sentence-transformers

Then you can load this model and run inference.

from sentence_transformers import SentenceTransformer

# Download from the 🤗 Hub
protein_encoder = SentenceTransformer("yosshstd/ProTrek_650M_UniRef50_protein_encoder")
text_encoder = SentenceTransformer("yosshstd/ProTrek_650M_UniRef50_text_encoder")
structure_encoder = SentenceTransformer("yosshstd/ProTrek_650M_UniRef50_structure_encoder")
# Run inference
ProTrek_650M_UniRef50_temperature = 0.0186767578
def sim(a, b): return (a @ b.T / ProTrek_650M_UniRef50_temperature).item()

aa_seq = "MALWMRLLPLLALLALWGPDPAAAFVNQHLCGSHLVEALYLVCGERGFFYTPKTRREAEDLQVGQVELGGGPGAGSLQPLALEGSLQKRGIVEQCCTSICSLYQLENYCN"
text = 'Insulin decreases blood glucose concentration. It increases cell permeability to monosaccharides, amino acids and fatty acids. It accelerates glycolysis, the pentose phosphate cycle, and glycogen synthesis in liver.'
foldseek_seq = 'DVVVVVVVVVVVVCVVPPDDPVPPFDFDFDADVVLVVLLCVLLVPLAFDDDDPDPVVVVVVVVDDDPPDDDPPDPDPDPPVVVVVVVVDDCSVVRRVGIDGSVSSNVRGD'.lower()

seq_emb = protein_encoder.encode([aa_seq], convert_to_tensor=True)
text_emb = text_encoder.encode([text], convert_to_tensor=True)
struc_emb = structure_encoder.encode([foldseek_seq], convert_to_tensor=True)
print("Seq-Text similarity:", sim(seq_emb, text_emb))
print("Seq-Structure similarity:", sim(seq_emb, struc_emb))
print("Text-Structure similarity:", sim(text_emb, struc_emb))

Overview

ProTrek is a multimodal model that integrates protein sequence, protein structure, and text information for better protein understanding. It adopts contrastive learning to learn the representations of protein sequence and structure. During the pre-training phase, we calculate the InfoNCE loss for each two modalities as CLIP does.

Model architecture

Protein sequence encoder: esm2_t33_650M_UR50D

Protein structure encoder: foldseek_t30_150M (identical architecture with esm2 except that the vocabulary only contains 3Di tokens)

Text encoder: BiomedNLP-PubMedBERT-base-uncased-abstract-fulltext

Training Details

Framework Versions

  • Python: 3.11.11
  • Sentence Transformers: 5.0.0
  • Transformers: 4.53.2
  • PyTorch: 2.2.1+cu121
  • Accelerate:
  • Datasets:
  • Tokenizers: 0.21.2

Citation

@article{su2024protrek,
  title={ProTrek: Navigating the Protein Universe through Tri-Modal Contrastive Learning},
  author={Su, Jin and Zhou, Xibin and Zhang, Xuting and Yuan, Fajie},
  journal={bioRxiv},
  pages={2024--05},
  year={2024},
  publisher={Cold Spring Harbor Laboratory}
}

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

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

GPU в ailist

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

Можно запустить

Подбираем GPU…

Класс архитектуры
EsmModel
Ревизия весов
3096441

0 моделей