Views
No views yet

--no-pyrosetta flag, usable during both installation and runtime, enables the following behavior:sc-rs when available. See sc-rs project: https://github.com/cytokineking/sc-rs. The results of sc-rs are nearly identical to the same calculations performed by PyRosetta.i_pTM. You can optionally rank by ipSAE instead:python bindcraft.py --settings ... --rank-by ipSAEsc-rs shape complementarity), and empirical impact on filter decisions, see the in-depth technical overview:technical_overview/FreeBindCraft_Technical_Overview.mdgit clone https://github.com/cytokineking/FreeBindCraft [install_folder]cd [install_folder]) and run the installation script. A CUDA-compatible Nvidia graphics card is required.--cuda CUDAVERSION: Specify your CUDA version (e.g., '12.4').--pkg_manager MANAGER: Specify 'mamba' or 'conda' (default: 'conda').--no-pyrosetta: Use this flag to install without PyRosetta.--fix-channels: Fix conda channel configuration to resolve dependency conflicts (recommended if experiencing installation issues).bash install_bindcraft.sh --cuda '12.4' --pkg_manager 'conda' --no-pyrosettabash install_bindcraft.sh --cuda '12.4' --pkg_manager 'conda'conda activate BindCraft# cd /path/to/your/bindcraft/folder/--no-pyrosetta flag:python -u ./bindcraft.py --settings './settings_target/your_target.json' --filters './settings_filters/default_filters.json' --advanced './settings_advanced/default_4stage_multimer.json' --no-pyrosettapython -u ./bindcraft.py --settings './settings_target/your_target.json' --filters './settings_filters/default_filters.json' --advanced './settings_advanced/default_4stage_multimer.json'--no-pyrosetta flag at runtime.--settings), filters (--filters), advanced parameters (--advanced), and other operational aspects of BindCraft, please consult the documentation in the original BindCraft repository.--settings in a terminal (TTY) or pass --interactive, an interactive setup wizard guides you through configuration.1python bindcraft.py # auto-detects TTY and enters interactive mode
2# or
3python bindcraft.py --interactivepeptide_filters, peptide_relaxed_filters, no_filters; advanced limited to peptide profilesdefault_filters, relaxed_filters, no_filters; advanced excludes peptide profilesi_pTM (default) or ipSAE--verbose: Enable detailed timing/progress logs for BindCraft internals.--debug-pdbs: Write intermediate PDBs from OpenMM relax (.debug_deconcat.pdb, .debug_pdbfixer.pdb, .debug_post_initial_relax.pdb, .debug_post_faspr.pdb)--no-plots: Disable saving design trajectory plots (overrides advanced settings).--no-animations: Disable saving trajectory animations (overrides advanced settings).--rank-by {i_pTM,ipSAE}: Metric to rank final designs by (default: i_pTM). Use ipSAE to rank by interface predicted Structural Alignment Error instead.1python -u ./bindcraft.py \
2 --settings './settings_target/your_target.json' \
3 --filters './settings_filters/default_filters.json' \
4 --advanced './settings_advanced/default_4stage_multimer.json' \
5 --no-animations --no-plots --verbose --rank-by ipSAEnvidia-smi).sudo apt-get install -y nvidia-container-toolkitsudo nvidia-ctk runtime configure --runtime=docker && sudo systemctl restart dockerdocker run --rm --gpus all nvidia/cuda:12.1.1-cudnn8-runtime-ubuntu22.04 nvidia-smidocker build -t freebindcraft:gpu .docker build --build-arg WITH_PYROSETTA=true -t freebindcraft:pyrosetta .1mkdir -p ~/bindcraft_out
2docker run --gpus all --rm -it \
3 --ulimit nofile=65536:65536 \
4 -v ~/bindcraft_out:/work/out \
5 freebindcraft:gpu \
6 python extras/test_openmm_relax.py example/PDL1.pdb /work/out/relax_test/path/on/host/your_target.pdb/path/on/host/run_outputs1mkdir -p /path/on/host/run_outputs
2docker run --gpus all --rm -it \
3 --ulimit nofile=65536:65536 \
4 -v /path/on/host/run_outputs:/root/software/pdl1 \
5 freebindcraft:gpu \
6 python bindcraft.py \
7 --settings settings_target/PDL1.json \
8 --filters settings_filters/default_filters.json \
9 --advanced settings_advanced/default_4stage_multimer.json \
10 --no-pyrosetta1mkdir -p /path/on/host/run_outputs
2docker run --gpus all --rm -it \
3 --ulimit nofile=65536:65536 \
4 -v /path/on/host/run_outputs:/root/software/pdl1 \
5 -v /path/on/host/my_settings.json:/app/settings_target/my_settings.json:ro \
6 -v /path/on/host/your_target.pdb:/app/example/your_target.pdb:ro \
7 freebindcraft:gpu \
8 python bindcraft.py \
9 --settings /app/settings_target/my_settings.json \
10 --filters settings_filters/default_filters.json \
11 --advanced settings_advanced/default_4stage_multimer.json \
12 --no-pyrosetta1docker run --gpus all --rm -it \
2 --ulimit nofile=65536:65536 \
3 -v /path/on/host/run_outputs:/root/software/pdl1 \
4 -v /path/on/host/my_settings.json:/app/settings_target/my_settings.json:ro \
5 -v /path/on/host/my_filters.json:/app/settings_filters/my_filters.json:ro \
6 -v /path/on/host/my_advanced.json:/app/settings_advanced/my_advanced.json:ro \
7 -v /path/on/host/your_target.pdb:/app/example/your_target.pdb:ro \
8 freebindcraft:gpu \
9 python bindcraft.py \
10 --settings /app/settings_target/my_settings.json \
11 --filters /app/settings_filters/my_filters.json \
12 --advanced /app/settings_advanced/my_advanced.json \
13 --no-pyrosettadesign_path in your target settings (e.g., /root/software/pdl1).--ulimit nofile=65536:65536. The image’s entrypoint also attempts to raise the soft limit inside the container.python docker_cli.pyfreebindcraft:gpu if present, or enter another local image tag such as freebindcraft:pyrosetta)docker run --rm -it --gpus device=<idx> with host paths mounted to identical locations in the container so your paths work unchangedsc-rs — https://github.com/cytokineking/sc-rsextras/ to assist with analysis and testing:extras/analyze_bindcraft_rejections.py: Analyze MPNN rejections across runs and quantify which filters are most responsible; can estimate hypothetical rankings when Rosetta-only filters trigger.extras/bindcraft_rejection_analysis_spec.md: Specification describing the rejection analysis outputs and methodology.extras/BUGFIX_FILE_DESCRIPTORS.md: Notes on file descriptor fixes in high-throughput runs.extras/check_ulimit.sh: Helper script to check system ulimit and suggest adjustments for many-parallel-file workloads.extras/compare_interface_metrics_all.py: Compute interface metrics via PyRosetta (if available), FreeSASA, and Biopython across a folder of PDBs; outputs a combined CSV.extras/compare_pyrosetta_bypass_scores.py: Side-by-side comparison of PyRosetta vs Biopython-only metrics for a folder of PDBs.extras/rescore_accepted_with_rosetta.py: Rescore accepted (Ranked preferred) PDBs from a --no-pyrosetta run using PyRosetta, evaluate whether PyRosetta-driven filters would reject each design, and report failing filters. Supports dynamic filters (default|relaxed|design|custom), parallel workers, and an optional --fast-relax mode to run PyRosetta FastRelax prior to scoring.extras/test_openmm_relax.py: Quick test harness for OpenMM and PyRosetta relax routines.extras/README.md for detailed usage examples and options.1python -u ./bindcraft.py \
2 --settings ./settings_target/your_target.json \
3 --filters ./settings_filters/default_filters.json \
4 --advanced ./settings_advanced/default_4stage_multimer.json \
5 --no-pyrosetta \
6 |& stdbuf -oL -eL grep -v -E 'Failed to read file: .*/dep-[0-9a-fA-F]+\.d([[:space:]]*)?$' \
7 | stdbuf -oL tee -a ./output/your_target.log1python -u ./bindcraft.py \
2 --settings ./settings_target/your_target.json \
3 --filters ./settings_filters/default_filters.json \
4 --advanced ./settings_advanced/default_4stage_multimer.json \
5 --no-pyrosetta \
6 2> >(stdbuf -oL -eL grep -v -E 'Failed to read file: .*/dep-[0-9a-fA-F]+\.d([[:space:]]*)?$' >&2)stdbuf forces line buffering for both stdout and stderr, preventing pipeline buffering delays.[[:space:]] for portability.set -o pipefail.