This release is a pre-release and may not be stable for production use.
K-Fold
K-Fold is currently in the preview stage and under active development. The first official release is expected around September 20. Preprint will be released soon.
K-Fold predicts biomolecular complex structures and binding-induced conformational changes. Through an apo-to-holo diffusion bridge, K-Fold aims to capture conformational changes in systems such as G protein-coupled receptors (GPCRs).
K-Fold supports proteins, DNA, RNA, small molecules, and chemical modifications without multiple sequence alignments (MSAs). This repository provides pretrained models, inference and training code, and data preprocessing workflows.
Model parameters
K-Fold uses pretrained AtlasLM for protein sequence representations and TriProRep for protein structure representations. The parameters for these models and K-Fold are downloaded automatically on first use from huggingface.
Installation
K-Fold requires Python 3.11 or later.
Install from PyPI:
pip install 'kfold[cuequiv]'
Or install from source:
git clone https://github.com/SeonghwanSeo/kfold.git
cd kfold
pip install '.[cuequiv]'
The cuequiv extra installs cuEquivariance kernels for faster inference on NVIDIA GPUs.
Inference
Run predictions from a YAML or JSON query file, or a directory of query files for bulk run:
kfold --input examples/8and.yaml --out-dir predictions/ --seed 42
By default, K-Fold prepares apo protein structures with AtlasFold, then runs K-Fold prediction. You can also provide apo structures from experiments or other prediction tools (e.g., AlphaFold2).
Use --stage apo to prepare apo structures only, or --stage complex to predict complexes from prepared apos:
kfold --stage apo --input examples/ --out-dir predictions/ --seed 42
kfold --stage complex --input examples/ --out-dir predictions/ --seed 42
See kfold --help, the inference guide, or the Python API guide for details.
Training
See the training guide for data preparation, training commands, and configuration.
Acknowledgements
K-Fold was developed at KAIST as part of the K-Fold initiative supported by the Ministry of Science and ICT (MSIT), Republic of Korea.
Members of Team KAIST are listed below:
- Project management: Hyeongwoo Kim3,†
- K-Fold architecture: Seokhyun Moon3,†, Jun Hyeong Kim3, Shinwoo Kim3, Minha Park3, Jisu Seo3, Mingyeong Shin3, Wonho Zhung3
- Protein structure encoder: Hyosoon Jang1,†, Taewon Kim1,†, Hyunjin Seo1,†
- RNA sequence encoder: Dongki Kim1,†, Jun Hyeong Kim1,†, Jinheon Baek1, Jaehyeong Jo1
- Training data preparation: Yeongnam Bae2,†, Woosung Jeon2,†, Joongwon Lee3,†, Junyup Lee2,†, Yunsu Shin2,†, Eugene Choi2, Jeong Hun Choi2, Hyeongyu Han2, Calvin Samuel2
- Kernel optimization: Youngchan Kim4
- Engineering lead: Seonghwan Seo3,†
- Supervision: Sungsoo Ahn1, Dongsu Han4,1, Sung Ju Hwang1, Ho Min Kim2, Woo Youn Kim3, Gyu Rie Lee2, Byung-Ha Oh2
† Core contributor; 1 KAIST AI; 2 KAIST Biological Sciences; 3 KAIST Chemistry; 4 KAIST Electrical Engineering.
We thank our collaborators at HITS for their contributions to K-Fold.
License
Copyright © 2026 Korea Advanced Institute of Science and Technology (KAIST).
K-Fold source code and model weights are licensed under the Apache License 2.0.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kfold-1.0.0a2.tar.gz.
File metadata
- Download URL: kfold-1.0.0a2.tar.gz
- Upload date:
- Size: 340.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.12 {"installer":{"name":"uv","version":"0.12.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6825729526c4764b5a1f60bfb4b349435cab7a69e71a5fe772eaac3c1de23b06
|
|
| MD5 |
b0cde7157e33cebb374a1d3a8ccf534c
|
|
| BLAKE2b-256 |
2f50671758b788fdbbbd454e061762b9a61762a94987ed39f5ae96868001a7e3
|
File details
Details for the file kfold-1.0.0a2-py3-none-any.whl.
File metadata
- Download URL: kfold-1.0.0a2-py3-none-any.whl
- Upload date:
- Size: 410.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.12.12 {"installer":{"name":"uv","version":"0.12.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4695ef3c6615907a790f322755a5d84ad2a7c569fafc98894a468fcef64ed583
|
|
| MD5 |
d2b1fa4ad6ddac96027bb6d6cd87b0c1
|
|
| BLAKE2b-256 |
ad50bf3485feac00e536d93536fb26048ab9dbf8fd2850cb384fd63604416ecb
|