Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

K-Fold

[Notice] 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 Hugging Face.

Installation

K-Fold requires Python 3.11 or later.

Install from PyPI:

pip install kfold

Or install from source:

git clone https://github.com/SeonghwanSeo/kfold.git
cd kfold
pip install -e .

Inference

Run predictions from a YAML or JSON query file, or a directory of query files for bulk runs:

kfold --input examples/8and.yaml --out-dir predictions/ --seeds 42

By default, K-Fold prepares apo structures with AtlasFold, then runs K-Fold predictions. You can also provide apo structures from experiments or other prediction tools (e.g., AlphaFold2).

Use --kernel {triton,cuequiv,torch} to select the backend for K-Fold complex prediction. Automatic selection prefers Triton, then cuEquivariance, then PyTorch, depending on availability.

For multi-seed inference, use --share-apo-seeds 1 2 3 to generate one apo ensemble per target and reuse it across all inference seeds specified by --seeds. This is particularly useful for relatively rigid apo structures or runs with many inference seeds; see automatic apo generation.

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/ --seeds 42
kfold --stage complex --input examples/ --out-dir predictions/ --seeds 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 (alphabetical order):

  • 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.

Metadata

Release files for kfold 1.0.0b3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kfold 1.0.0b3
File Size Uploaded
kfold-1.0.0b3.tar.gz 367.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kfold 1.0.0b3
File Interpreter ABI Platform
kfold-1.0.0b3-py3-none-any.whl Python 3 none any Details

Total release size: 870.2 kB

Release files / kfold-1.0.0b3.tar.gz

Download URL kfold-1.0.0b3.tar.gz
Size 367.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f70be97bdd6bc7d339c99e2efd8d98a5d7c9d8024d1180484762547e24967466
BLAKE2b-256 checksum
How to use checksums
c846ff832a6e9876d8508e55a999c020ff19a7f8f3b1cb6e45b06d86545efa83
Upload date
Uploaded using Trusted Publishing?
What is 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}

Release files / kfold-1.0.0b3-py3-none-any.whl

Download URL kfold-1.0.0b3-py3-none-any.whl
Size 503.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7ea4d2e80ba1943321643843a0a510527be4dfa4ad0a94c98a366ab454e46b7b
BLAKE2b-256 checksum
How to use checksums
d15d1d919a92810a86a679a577d087c88aa6d1f2eba2d8c9a453b59b0573abf4
Upload date
Uploaded using Trusted Publishing?
What is 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}
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page