Feature Extraction
Transformers
Safetensors
English
esm
biology
protein
structural-biology
Eval Results (legacy)
Instructions to use ItsnotAilabs/AlphaFold-Embed-8M with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use ItsnotAilabs/AlphaFold-Embed-8M with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("feature-extraction", model="ItsnotAilabs/AlphaFold-Embed-8M")# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModel tokenizer = AutoTokenizer.from_pretrained("ItsnotAilabs/AlphaFold-Embed-8M") model = AutoModel.from_pretrained("ItsnotAilabs/AlphaFold-Embed-8M", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Download benchmark.py from ItsnotAilabs/AlphaFold-Embed-8M: direct link, hf CLI and curl.
- Browser
- Download file 1.12 kB
-
https://huggingface.co/ItsnotAilabs/AlphaFold-Embed-8M/resolve/main/benchmark.py
- Command line
-
hf download hf://ItsnotAilabs/AlphaFold-Embed-8M/benchmark.py
-
curl -L -o benchmark.py https://huggingface.co/ItsnotAilabs/AlphaFold-Embed-8M/resolve/main/benchmark.py
1.12 kB
| import time | |
| import torch | |
| import numpy as np | |
| from inference import AlphaFoldEmbedInference, AlphaFoldEmbedTokenizer | |
| def benchmark(): | |
| model = AlphaFoldEmbedInference() | |
| tokenizer = AlphaFoldEmbedTokenizer() | |
| model.eval() | |
| # Dummy data | |
| seqs = ["".join(np.random.choice(list("ACDEFGHIKLMNPQRSTVWY"), size=150)) for _ in range(100)] | |
| # true plddt | |
| true_plddts = [np.random.uniform(50, 100, size=150) for _ in range(100)] | |
| start_time = time.time() | |
| maes = [] | |
| with torch.no_grad(): | |
| for seq, true_plddt in zip(seqs, true_plddts): | |
| tokens = tokenizer.tokenize(seq) | |
| input_ids = torch.tensor([tokens]) | |
| out = model(input_ids) | |
| pred_plddt = out["plddt"].squeeze(0).numpy() | |
| mae = np.mean(np.abs(pred_plddt - true_plddt)) | |
| maes.append(mae) | |
| end_time = time.time() | |
| throughput = len(seqs) / (end_time - start_time) | |
| avg_mae = np.mean(maes) | |
| print(f"pLDDT MAE: {avg_mae:.4f}") | |
| print(f"Sequence Processing Throughput: {throughput:.2f} seq/s") | |
| if __name__ == "__main__": | |
| benchmark() | |