Skip to content

polaris-hub/polaris

Repository files navigation


✨ Polaris Hub | 📚 Client Doc


Latest Release PyPI
Conda
Python Version PyPI - Python Version
License Code license
Downloads PyPI - Downloads
Conda
Citation DOI

Polaris establishes a novel, industry‑certified standard to foster the development of impactful methods in AI-based drug discovery.

This library is a Python client to interact with the Polaris Hub. It allows you to:

  • Download Polaris datasets and benchmarks.
  • Evaluate a custom method against a Polaris benchmark.
  • Create and upload new datasets and benchmarks.

Quick API Tour

import polaris as po

# Load the benchmark from the Hub
benchmark = po.load_benchmark("polaris/hello-world-benchmark")

# Get the train and test data-loaders
train, test = benchmark.get_train_test_split()

# Use the training data to train your model
# Get the input as an array with 'train.inputs' and 'train.targets'  
# Or simply iterate over the train object.
for x, y in train:
    ...

# Work your magic to accurately predict the test set
predictions = [0.0 for x in test]

# Evaluate your predictions
results = benchmark.evaluate(predictions)

# Submit your results
results.upload_to_hub(owner="dummy-user")

Documentation

Please refer to the documentation, which contains tutorials for getting started with polaris and detailed descriptions of the functions provided.

How to cite

Please cite Polaris if you use it in your research. A list of relevant publications:

  • DOI - Preprint, Method Comparison Guidelines.
  • DOI - Nature Correspondence, Call to Action.
  • DOI - Zenodo, Code Repository.

Installation

You can install polaris using conda/mamba/micromamba:

conda install -c conda-forge polaris

You can also use pip:

pip install polaris-lib

Development lifecycle

Setup dev environment

conda env create -n polaris -f env.yml
conda activate polaris

pip install --no-deps -e .
Other installation options
Alternatively, using [uv](https://github.com/astral-sh/uv):
```shell
uv venv -p 3.12 polaris
source .venv/polaris/bin/activate
uv pip compile pyproject.toml -o requirements.txt --all-extras
uv pip install -r requirements.txt 
```   

Tests

You can run tests locally with:

pytest

License

Under the Apache-2.0 license. See LICENSE.