Skip to main content

A zero-dependency near-clone of common bmt capabilities

Project description

Biolink model toolkit - lite!

bmt-lite is a zero-dependency near-clone of a subset of bmt. It is backed by a pre-populated cache of input/output pairs for many of the more commonly used bmt methods.

bmt alone occupies ~127 KB on disk, but with all of its dependencies it takes up ~36.2 MB. On the other hand, bmt-lite-1.8.2 is ~295 KB on disk, of which ~254 KB is the cached data. To initialize a Toolkit from bmt takes ~2 seconds, while initializing a Toolkit from bmt-lite takes ~2e-7 seconds. Because all of bmt-lite's behavior is pre-cached, it does not require the internet at run time.

bmt bmt-lite (-1.8.2)
size 127 KB 295 KB
size w/ deps 36.2 MB 295 KB
init time 2 sec 2e-7 sec

* all measurements made on a typical laptop on a random Tuesday afternoon

Note: bmt-lite does not implement all of the functionality of bmt. Feature requests (or pull requests?!) are welcome. In addition, the existing functionality may differ slightly; for example, bmt-lite's element-name/id format conversions are known to differ for some special cases.

Installation

You must install a specific "flavor" of bmt-lite corresponding to the Biolink model version that you want. Versions 1.7.0 - 2.2.5 are currently available.

For example,

pip install bmt-lite-1.8.2

Usage

Use bmt-lite almost exactly like you would use bmt itself: https://github.com/biolink/biolink-model-toolkit#usage

Development

Building

pip install -rrequirements-build.txt
./build.sh

Testing

pip install -rrequirements-test.txt
tox

Publishing

pip install twine
twine upload dist/*

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

bmt-lite-2.2.1-2.2.0.tar.gz (6.7 kB view hashes)

Uploaded Source

Built Distribution

bmt_lite_2.2.1-2.2.0-py3-none-any.whl (91.8 kB view hashes)

Uploaded Python 3

Supported by

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