napistu_torch.utils.optional

Utilities for handling optional dependencies in Napistu-Torch.

Decorators

require_bionty

Decorator ensuring bionty is available before calling func.

require_gradio_client

Decorator ensuring gradio_client is available before calling func.

require_lightning

Decorator ensuring pytorch_lightning is available before calling func.

require_modelgenerator

Decorator ensuring modelgenerator is available before calling func.

require_scdataloader

Decorator ensuring scdataloader is available before calling func.

require_scgpt

Decorator ensuring scgpt is available before calling func.

require_scprint

Decorator ensuring scprint is available before calling func.

require_seaborn

Decorator ensuring seaborn is available before calling func.

require_torchtext

Decorator ensuring torchtext is available before calling func.

Public Functions

import_bionty:

Import and return bionty, raising an informative error if missing.

import_gradio_client:

Import and return gradio_client, raising an informative error if missing.

import_lightning:

Import and return pytorch_lightning, raising an informative error if missing.

import_modelgenerator:

Import and return modelgenerator, raising an informative error if missing.

import_scdataloader:

Import and return scdataloader, raising an informative error if missing.

import_scgpt:

Import and return scgpt, raising an informative error if missing.

import_scprint:

Import and return scprint, raising an informative error if missing.

import_seaborn

Import and return seaborn, raising an informative error if missing.

import_torchtext:

Import and return torchtext, raising an informative error if missing.

Functions

import_bionty()

Import and return bionty, raising an informative error if missing.

import_gradio_client()

Import and return gradio_client, raising an informative error if missing.

import_lightning()

Import and return pytorch_lightning, raising an informative error if missing.

import_modelgenerator()

Import and return modelgenerator, raising an informative error if missing.

import_scdataloader()

Import and return scdataloader, raising an informative error if missing.

import_scgpt()

Import and return scgpt, raising an informative error if missing.

import_scprint()

Import and return scprint, raising an informative error if missing.

import_seaborn()

Import and return seaborn, raising an informative error if missing.

import_torchtext()

Import and return torchtext, raising an informative error if missing.

require_bionty(func)

Decorator ensuring bionty is available before calling func.

require_gradio_client(func)

Decorator ensuring gradio_client is available before calling func.

require_lightning(func)

Decorator ensuring pytorch_lightning is available before calling func.

require_modelgenerator(func)

Decorator ensuring modelgenerator is available before calling func.

require_scdataloader(func)

Decorator ensuring scdataloader is available before calling func.

require_scgpt(func)

Decorator ensuring scgpt is available before calling func.

require_scprint(func)

Decorator ensuring scprint is available before calling func.

require_seaborn(func)

Decorator ensuring seaborn is available before calling func.

require_torchtext(func)

Decorator ensuring torchtext is available before calling func.

napistu_torch.utils.optional.import_bionty()

Import and return bionty, raising an informative error if missing.

napistu_torch.utils.optional.import_gradio_client()

Import and return gradio_client, raising an informative error if missing.

napistu_torch.utils.optional.import_lightning()

Import and return pytorch_lightning, raising an informative error if missing.

napistu_torch.utils.optional.import_modelgenerator()

Import and return modelgenerator, raising an informative error if missing.

napistu_torch.utils.optional.import_scdataloader()

Import and return scdataloader, raising an informative error if missing.

napistu_torch.utils.optional.import_scgpt()

Import and return scgpt, raising an informative error if missing.

napistu_torch.utils.optional.import_scprint()

Import and return scprint, raising an informative error if missing.

napistu_torch.utils.optional.import_seaborn()

Import and return seaborn, raising an informative error if missing.

napistu_torch.utils.optional.import_torchtext()

Import and return torchtext, raising an informative error if missing.

napistu_torch.utils.optional.require_bionty(func: _F) _F

Decorator ensuring bionty is available before calling func.

Use this decorator for scPRINT functions that require bionty/lamin.

Examples

>>> @require_bionty
>>> def populate_lamin_db():
...     # Uses bionty
...     pass
napistu_torch.utils.optional.require_gradio_client(func: _F) _F

Decorator ensuring gradio_client is available before calling func.

Use this decorator for functions that require gradio_client.

Examples

>>> @require_gradio_client
>>> def connect_to_space(space_id):
...     from gradio_client import Client
...     return Client(space_id)
napistu_torch.utils.optional.require_lightning(func: _F) _F

Decorator ensuring pytorch_lightning is available before calling func.

napistu_torch.utils.optional.require_modelgenerator(func: _F) _F

Decorator ensuring modelgenerator is available before calling func.

Use this decorator for AIDOCell and scFoundation-specific functions.

Examples

>>> @require_modelgenerator
>>> def load_aidocell_model(model_class):
...     # Uses modelgenerator
...     pass
napistu_torch.utils.optional.require_scdataloader(func: _F) _F

Decorator ensuring scdataloader is available before calling func.

Use this decorator for scPRINT functions that require scdataloader.

Examples

>>> @require_scdataloader
>>> def populate_lamin_db():
...     # Uses scdataloader.utils.populate_my_ontology
...     pass
napistu_torch.utils.optional.require_scgpt(func: _F) _F

Decorator ensuring scgpt is available before calling func.

Use this decorator for scGPT-specific functions.

Examples

>>> @require_scgpt
>>> def load_scgpt_model(model_dir):
...     # Uses scgpt
...     pass
napistu_torch.utils.optional.require_scprint(func: _F) _F

Decorator ensuring scprint is available before calling func.

Use this decorator for scPRINT-specific functions.

Examples

>>> @require_scprint
>>> def load_scprint_model(checkpoint_path):
...     # Uses scprint
...     pass
napistu_torch.utils.optional.require_seaborn(func: _F) _F

Decorator ensuring seaborn is available before calling func.

napistu_torch.utils.optional.require_torchtext(func: _F) _F

Decorator ensuring torchtext is available before calling func.

Use this decorator for scGPT functions that require torchtext.

Examples

>>> @require_torchtext
>>> def load_scgpt(model_dir):
...     # Uses torchtext.vocab.Vocab
...     pass