Giter Site home page Giter Site logo

foldcraft's Introduction

FoldCraft

Note: this project is WORK IN PROGRESS.

Implementation of AlphaFold in independent modules. AlphaFold became a sandbox in FoldCraft, and you can play with it as you wish.

Installation

CPU installation

Using conda

conda create -n foldcraft python=3.10
conda install ipykernel   # recommendation
pip install ml-collections==0.1.1
conda install numpy jax absl-py
conda install dm-haiku dm-tree -c conda-forge
conda install tensorflow-cpu -c conda-forge
conda install biopython -c conda-forge

Or you can just (Not ready for now):

conda env create -f environment/environment_cpu.yml

GPU installation

Using NVIDIA A100 as example

conda create -n foldcraft python=3.10
conda install jax absl-py ipykernel dm-haiku dm-tree biopython -c conda-forge
conda install tensorflow-cpu -c conda-forge
pip install ml-collections==0.1.1
pip install --upgrade "jax[cuda11_pip]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html

Or you can just:

conda env create -f environment/environment_gpu.yml

Apple silicon installation (GPU? No, it's still CPU)

Apple GPU might be supported in the future. (wait for jax-metal updates)

conda install ipykernel matplotlib
conda install jax absl-py -c conda-forge
conda install dm-haiku dm-tree -c conda-forge
conda install biopython -c conda-forge
conda install ml-collections -c conda-forge
conda install tensorflow-cpu -c conda-forge
# pip install jax-metal

In this environment, dm-haiku and tensorflow-cpu can bring in a lot of conflicts

conda env create -f environment/environment_m1.yml

Installed package list

  • python=3.10
  • ml-collections==0.1.1 # only pypi
  • absl-py
  • jax
  • dm-haiku
  • dm-tree
  • numpy
  • biopython=1.82
  • tensorflow=2.15.0 # required in alphafold.model.features
  • [?]pandas
  • [?]immutabledict

Run

Step 1: Create empty MSA feature (input feature of alphafold)

python foldcraft/parafold/create_empty_feature.py --fasta_paths input/test.fasta --output_dir output

Step 2: Run FoldCraft

python run_foldcraft.py

Reference

  • Jax installation: link

foldcraft's People

Contributors

zuricho avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.