Skip to main content

No project description provided

Project description

Bonito

PyPI version py39 py310 py311 py312 py313 cu118 cu124

Bonito is an open source research basecaller for Oxford Nanopore reads.

For anything other than basecaller training or method development please use dorado.

$ pip install --upgrade pip
$ pip install ont-bonito
$ bonito basecaller dna_r10.4.1_e8.2_400bps_hac@v5.0.0 /data/reads > basecalls.bam

Bonito supports writing aligned/unaligned {fastq, sam, bam, cram}.

$ bonito basecaller dna_r10.4.1_e8.2_400bps_hac@v5.0.0 --reference reference.mmi /data/reads > basecalls.bam

Bonito will download and cache the basecalling model automatically on first use but all models can be downloaded with -

$ bonito download --models --show  # show all available models
$ bonito download --models         # download all available models

Transformer Models

The bonito.transformer package requires flash-attn.

This must be manually installed as the flash-attn packaging system prevents it from being listed as a normal dependency.

Setting CUDA_HOME to the relevant library directory will help avoid CUDA version mismatches between packages.

Modified Bases

For modified-base calling with ont-supported mods please use dorado For development of modified base calling models please see remora.

Training your own model

For detailed information on the training process, please see the Training Documentation.

Developer Quickstart

$ git clone https://github.com/nanoporetech/bonito.git  # or fork first and clone that
$ cd bonito
$ python3 -m venv venv3
$ source venv3/bin/activate
(venv3) $ pip install --upgrade pip
(venv3) $ pip install -e .[cu118] --extra-index-url https://download.pytorch.org/whl/cu118

The ont-bonito[cu118] and ont-bonito[cu121] optional dependencies can be used, along with the corresponding --extra-index-url, to ensure the PyTorch package matches the local CUDA setup.

Interface

  • bonito view - view a model architecture for a given .toml file and the number of parameters in the network.
  • bonito train - train a bonito model.
  • bonito evaluate - evaluate a model performance.
  • bonito download - download pretrained models and training datasets.
  • bonito basecaller - basecaller (.fast5 -> .bam).

References

Licence and Copyright

(c) 2019 Oxford Nanopore Technologies Ltd.

Bonito is distributed under the terms of the Oxford Nanopore Technologies, Ltd. Public License, v. 1.0. If a copy of the License was not distributed with this file, You can obtain one at http://nanoporetech.com

Research Release

Research releases are provided as technology demonstrators to provide early access to features or stimulate Community development of tools. Support for this software will be minimal and is only provided directly by the developers. Feature requests, improvements, and discussions are welcome and can be implemented by forking and pull requests. However much as we would like to rectify every issue and piece of feedback users may have, the developers may have limited resource for support of this software. Research releases may be unstable and subject to rapid iteration by Oxford Nanopore Technologies.

Citation

@software{bonito,
  title = {Bonito: A PyTorch Basecaller for Oxford Nanopore Reads},
  author = {{Chris Seymour, Oxford Nanopore Technologies Ltd.}},
  year = {2019},
  url = {https://github.com/nanoporetech/bonito},
  note = {Oxford Nanopore Technologies, Ltd. Public License, v. 1.0},
  abstract = {Bonito is an open source research basecaller for Oxford Nanopore reads. It provides a flexible platform for training and developing basecalling models using PyTorch.}
}

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

ont_bonito-0.9.0.tar.gz (56.7 kB view details)

Uploaded Source

File details

Details for the file ont_bonito-0.9.0.tar.gz.

File metadata

  • Download URL: ont_bonito-0.9.0.tar.gz
  • Upload date:
  • Size: 56.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for ont_bonito-0.9.0.tar.gz
Algorithm Hash digest
SHA256 d28cd621963f12460e1592062f024cd3a4b868ebbf5bea33abd738ea463b6ab7
MD5 794d2b44e284acca79d9b3146cad437d
BLAKE2b-256 f37c54fa467d6de3e141d53a28b9d558bcd9958312c6b0b25e434b9056c1e18b

See more details on using hashes here.

Supported by

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