CoolFace
Datasetpublic

LiteFold/UniProtKB

UniProtKB Processed The aim of the UniProt Knowledgebase (UniProtKB; https://www.uniprot.org/) is to provide users with a comprehensive, high-quality and freely accessible set of protein sequences annotated with functional information. In this publication, we describe ongoing changes to our production pipeline to limit the sequences available in UniProtKB to high-quality, non-redundant reference proteomes. We continue to manually curate the scientific literature to add the… See the full description on the dataset page: https://huggingface.co/datasets/LiteFold/UniProtKB.

sourceHugging Facecc-by-4.0updated 4mo agoView on Hugging Face
0likes60downloads
Dataset Card

UniProtKB Processed

The aim of the UniProt Knowledgebase (UniProtKB; https://www.uniprot.org/) is to provide users with a comprehensive, high-quality and freely accessible set of protein sequences annotated with functional information. In this publication, we describe ongoing changes to our production pipeline to limit the sequences available in UniProtKB to high-quality, non-redundant reference proteomes. We continue to manually curate the scientific literature to add the latest functional data and use machine learning techniques. We also encourage community curation to ensure key publications are not missed. We provide an update on the automatic annotation methods used by UniProtKB to predict information for unreviewed entries describing unstudied proteins. Finally, updates to the UniProt website are described, including a new tab linking protein to genomic information. In recognition of its value to the scientific community, the UniProt database has been awarded Global Core Biodata Resource status.

Dataset Summary

Source setDescriptionProtein records
sprotSwiss-Prot reviewed canonical proteins574,627
sprot_varsplicSwiss-Prot alternative isoform sequences41,333
tremblTrEMBL unreviewed proteins202,556,314
Total203,172,274

Additional source totals:

MetricValue
Total residues75,747,523,712
Sequence shards205
Protein-entry table shards615
Default index rows830
Sequence shard bytes46,504,287,641
Metadata records bytes74,373,082,266
Protein-entry table bytes18,549,213,567

Default Index Splits

The default Dataset Viewer index is split deterministically by sha256(file_id) % 10: bucket 0 is test, and buckets 1 through 9 are train.

SplitRows
train733
test97

Protein-Entry Splits

The full protein-entry tables use deterministic exact-sequence hash splits. Exact duplicate amino-acid sequences are kept in the same split.

SplitProtein records
train162,548,965
validation20,308,533
test20,314,776

These are exact-sequence splits, not homology-cluster splits. For strict homology-aware model evaluation, create an additional split using UniRef, MMseqs, or another sequence-clustering method.

Loading With datasets

Load the default file/table index:

python
from datasets import load_dataset

index = load_dataset("LiteFold/UniProtKB")
print(index)
print(index["train"][0])

Load Swiss-Prot reviewed protein entries:

python
from datasets import load_dataset

sprot = load_dataset("LiteFold/UniProtKB", "sprot")
train = sprot["train"]
valid = sprot["validation"]
test = sprot["test"]

Load Swiss-Prot alternative isoform entries:

python
from datasets import load_dataset

isoforms = load_dataset("LiteFold/UniProtKB", "sprot_varsplic")

Stream TrEMBL entries:

python
from datasets import load_dataset

rows = load_dataset("LiteFold/UniProtKB", "trembl", split="train", streaming=True)
for row in rows:
    print(row["accession"], row["protein_name"])
    break

Use the default index to discover table shards:

python
from datasets import load_dataset

index = load_dataset("LiteFold/UniProtKB", split="train")
trembl_train_shards = index.filter(
    lambda row: row["role"] == "protein_entry_table_shard"
    and row["source_set"] == "trembl"
    and row["table_split"] == "train"
)
print(trembl_train_shards[0]["path"])

Default Columns

ColumnTypeDescription
file_idstringStable file identifier, currently the repository path.
repo_idstringHugging Face dataset repository id.
source_shastringSource repository commit used to build the index.
dataset_idstringSource dataset id from _MANIFEST.json.
source_setstringsprot, sprot_varsplic, trembl, or empty for repository-level files.
source_slugstringSource file slug used in the original manifests.
source_filestringOriginal source file path.
pathstringPath in this Hugging Face repository.
rolestringFile role such as protein_entry_table_shard, sequence_shard, or metadata_records.
table_splitstringProtein-entry split for table shards.
shard_indexint64Parsed shard index when present, otherwise -1.
size_bytesint64File size in bytes.
compressionstringCompression format when applicable.
records_in_sourceint64Protein records in the source set, otherwise -1.
residues_in_sourceint64Residues in the source set, otherwise -1.
shards_in_sourceint64Number of sequence shards in the source set, otherwise -1.
records_in_table_splitint64Protein records in that source set and split, otherwise -1.
records_totalint64Total protein records across UniProtKB.
residues_totalint64Total residues across UniProtKB.
total_sequence_shardsint64Total sequence shards.
is_sequence_shardboolWhether the row points to a FASTA sequence shard.
is_table_shardboolWhether the row points to a parsed protein-entry table shard.
is_metadata_recordsboolWhether the row points to metadata records.
download_patternstringGlob or exact path that can be used for file downloads.
access_notestringShort note describing how to load the row's data.
split_bucketint64Deterministic bucket used for the default train/test split.

Files

  • —data/*.jsonl.gz: default file/table index for Dataset Viewer.
  • —tables/source_set=*/split=*/*.jsonl.gz: full parsed protein-entry tables.
  • —sequences/*/*.fasta.zst: compressed source sequence shards.
  • —metadata/*.records.jsonl: source metadata records.
  • —_MANIFEST.json: source sequence manifest.
  • —_POSTPROCESS_MANIFEST.json: table-generation manifest.
  • —dataset_summary.json: summary of the default index build.
  • —scripts/prepare_uniprotkb_dataset.py: script used to generate the default index.

License

CC BY 4.0.

Citation

@article{uniprot2025,
  title     = {{UniProt}: the {Universal Protein Knowledgebase} in 2025},
  author    = {{The UniProt Consortium}},
  journal   = {Nucleic Acids Research},
  volume    = {53},
  number    = {D1},
  pages     = {D609--D617},
  year      = {2025},
  publisher = {Oxford University Press},
  doi       = {10.1093/nar/gkae1010}
}