Skip to main content

Optimizers from the nucleobench package.

Project description

NucleoBench

This is the initial repo for an upcoming paper, NucleoBench: A Large-Scale Benchmark of Neural Nucleic Acid Design Algorithms.

This repo is covered by the MIT license.

This repo is intended to be used in a few ways:

  1. Reproducing the results from our paper.
  2. Running the NucleoBench sequence designers on custom problems.
  3. Using our new designer, AdaBeam, on a custom problem.

To do these, you can clone this repo, use the Docker image (for the benchmark), or use the PyPi package for our designers.

Results

Summary of results.

Installation from PyPi

pip install nucleobench

Then you can use it in python:

from nucleobench import optimizations
from nucleobench import optimizations
opt = optimizations.get_optimization('beam_search_unordered')  # Any optimizer name.

Installation & testing from GitHub

# Clone the repo.
git clone https://github.com/move37-labs/nucleobench.git
cd nucleobench

# Create and activate the conda environment.
conda env create -f environment.yml
conda activate nucleobench

# Run all the unittests.
pytest nucleobench/

You can also run the integration tests, which require an internet connection:

pytest docker_entrypoint_test.py

Nucleic acid design benchmark.

Running NucleoBench

See the folder recipes for examples of how to run the designer locally.

Building a Docker image

To help deploy NucleoBench to the cloud, we've created a docker container. To build it yourself, see the top of Dockerfile for instructions. One way of creating a docker file is:

docker build -t nucleobench -f Dockerfile .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nucleobench-0.1.2.tar.gz (108.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nucleobench-0.1.2-py3-none-any.whl (138.6 kB view details)

Uploaded Python 3

File details

Details for the file nucleobench-0.1.2.tar.gz.

File metadata

  • Download URL: nucleobench-0.1.2.tar.gz
  • Upload date:
  • Size: 108.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.15

File hashes

Hashes for nucleobench-0.1.2.tar.gz
Algorithm Hash digest
SHA256 9726d9b7e5aaad6441763686978dc56b62e96194741e8786063d18a0bb5157f1
MD5 5cdce02f52d3013583293523602196ff
BLAKE2b-256 5050babc1eeaf41a7f247c00c7d907bb1d59e2586bda1feddbbf8e594cf48e85

See more details on using hashes here.

File details

Details for the file nucleobench-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: nucleobench-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 138.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.15

File hashes

Hashes for nucleobench-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 751d55a20e76f2419e948058d62c594bea12de903cbce8dc5749c3009ed9df0b
MD5 9bd38c041f5750cf8fc98124b8aca08e
BLAKE2b-256 6fb767a3321b5509b2b1c6cddfc252c9d1b7581e4a459fa0f227fb3adbed4031

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page