|
Download README.md from OneScience-Group/RFdiffusion: direct link, hf CLI and curl.
- Browser
- Download file 5.33 kB
-
https://huggingface.co/OneScience-Group/RFdiffusion/resolve/main/README.md
- Command line
-
hf download hf://OneScience-Group/RFdiffusion/README.md
-
curl -L -o README.md https://huggingface.co/OneScience-Group/RFdiffusion/resolve/main/README.md
5.33 kB
| license: bsd-3-clause | |
| language: | |
| - en | |
| tags: | |
| - OneScience | |
| - protein backbone generation | |
| - protein design | |
| frameworks: | |
| - PyTorch | |
| <p align="center"> | |
| <strong> | |
| <span style="font-size: 30px;">RFdiffusion</span> | |
| </strong> | |
| </p> | |
| # Model Overview | |
| RFdiffusion is a diffusion-based method for protein backbone generation and design. It can be used for unconditional backbone generation, motif scaffolding, PPI/binder design, and symmetric oligomer sampling. | |
| # Model Description | |
| RFdiffusion is a generative protein design model based on the RoseTTAFold three-track network and an SE(3)-equivariant denoising diffusion process. It can progressively generate protein backbones from random structures while satisfying specified topology or functional constraints. | |
| The current Hugging Face package is designed for download-and-use workflows, local quick validation, and OneCode automated runtime scenarios. Code, configurations, example inputs, and weights are all included in the current directory. | |
| # Use Cases | |
| | Use case | Description | | |
| | :---: | :--- | | |
| | Unconditional backbone generation | Takes contig constraints as input and outputs designed backbone PDB files. | | |
| | Motif scaffolding | Takes a PDB file containing the motif and contig constraints as input, and outputs scaffold design results. | | |
| | PPI/binder design | Takes the target structure, hotspot, and contig parameters as input, and outputs candidate binder designs. | | |
| | Symmetric oligomer sampling | Uses symmetry configuration to generate symmetric structure designs. | | |
| | Hugging Face full-package validation | Uses the package layout `config/ modules/ scripts/ examples/ weight/` directly for preflight checks and inference. | | |
| # Usage | |
| ## 1. Using OneCode | |
| You can try intelligent one-click AI4S programming through the OneCode online environment: | |
| [Try intelligent one-click AI4S programming](https://web-2069360198568017922-iaaj.ksai.scnet.cn:58043/home) | |
| ## 2. Manual Installation and Usage | |
| **Hardware Requirements** | |
| - Running on a GPU or DCU is recommended. | |
| - CPU can be used for connectivity checks, but it is relatively slow. | |
| - DCU users need to install DTK in advance. DTK 25.04.2 or later is recommended, or the OneScience-recommended version that matches the current cluster. | |
| **Software Requirements** | |
| For more information about adaptation details, contact [email protected]. | |
| **Environment Checks** | |
| - NVIDIA GPU: | |
| ```bash | |
| nvidia-smi | |
| ``` | |
| - Hygon DCU: | |
| ```bash | |
| hy-smi | |
| ``` | |
| ## Quick Start | |
| ### 1. Install the Runtime Environment | |
| ```bash | |
| conda create -n onescience311 python=3.11 -y | |
| conda activate onescience311 | |
| pip install onescience[bio] -i http://mirrors.onescience.ai:3141/pypi/simple/ --trusted-host mirrors.onescience.ai | |
| ``` | |
| If the following code cannot find required libraries at runtime, activate CUDA as shown below. | |
| ```bash | |
| source ${ROCM_PATH}/cuda/env.sh | |
| export LD_LIBRARY_PATH="$CONDA_PREFIX/lib:$LD_LIBRARY_PATH" | |
| export LD_LIBRARY_PATH="$CONDA_PREFIX/lib/python3.11/site-packages/fastpt/torch/lib:$LD_LIBRARY_PATH" | |
| ``` | |
| ### 2. Download the Model Package and Install the Environment | |
| ```bash | |
| hf download OneScience-Group/RFdiffusion --local-dir ./RFdiffusion | |
| ``` | |
| ### Training Weights | |
| Training weights are already included in the `weights` folder and can be used directly after downloading the model package. | |
| ### 3. Run Preflight Checks | |
| Check files and real weights: | |
| ```bash | |
| python scripts/preflight.py --strict-weights | |
| ``` | |
| Check local imports after installing dependencies: | |
| ```bash | |
| python scripts/preflight.py --strict-weights --strict-imports | |
| ``` | |
| Validate only the entry point and Hydra configuration without running sampling: | |
| ```bash | |
| RF_DIFFUSION_SMOKE_TEST=1 python scripts/run_inference.py | |
| ``` | |
| ### 4. Run Inference | |
| If execution fails because a `.cache` file is missing, you can create it manually. | |
| Example of unconditional backbone sampling: | |
| ```bash | |
| python scripts/run_inference.py \ | |
| 'contigmap.contigs=[80-80]' \ | |
| diffuser.T=15 \ | |
| inference.final_step=15 \ | |
| inference.num_designs=1 \ | |
| inference.write_trajectory=False \ | |
| inference.output_prefix=outputs/smoke/design | |
| ``` | |
| Example of motif scaffolding: | |
| ```bash | |
| python scripts/run_inference.py \ | |
| inference.input_pdb=examples/input_pdbs/1YCR.pdb \ | |
| 'contigmap.contigs=[10-40/A163-181/10-40]' \ | |
| inference.output_prefix=outputs/motif/design | |
| ``` | |
| Example of symmetric sampling: | |
| ```bash | |
| python scripts/run_inference.py --config-name symmetry \ | |
| diffuser.T=15 \ | |
| inference.final_step=15 \ | |
| inference.output_prefix=outputs/symmetry/c2 | |
| ``` | |
| ### 5. Common Environment Variables | |
| ```bash | |
| export RF_DIFFUSION_MODEL_DIR=weight | |
| export RF_DIFFUSION_INPUT_PDB=examples/input_pdbs/1qys.pdb | |
| export RF_DIFFUSION_OUTPUT_PREFIX=outputs/design | |
| export RF_DIFFUSION_SCHEDULE_DIR=.cache/schedules | |
| ``` | |
| # Official OneScience Information | |
| | Platform | OneScience main repository | Skills repository | | |
| | --- | --- | --- | | |
| | Gitee | https://gitee.com/onescience-ai/onescience | https://gitee.com/onescience-ai/oneskills | | |
| | GitHub | https://github.com/onescience-ai/OneScience | https://github.com/onescience-ai/oneskills | | |
| # Citation and License | |
| RFdiffusion is released under the BSD open-source license (see the [LICENSE](https://github.com/RosettaCommons/RFdiffusion/blob/main/LICENSE) file) and can be used free of charge for both non-profit and commercial purposes. | |