vipr package¶
Subpackages¶
- vipr.controllers package
- vipr.core package
- vipr.ext package
- vipr.handlers package
- Submodules
- vipr.handlers.data_loader module
- vipr.handlers.in_memory_cache module
- vipr.handlers.loss module
- vipr.handlers.model_loader module
- vipr.handlers.network_architecture module
- vipr.handlers.optimizer module
- vipr.handlers.postprocessor module
- vipr.handlers.predictor module
- vipr.handlers.vipr_log_handler module
- vipr.handlers.vipr_log_handler2 module
- vipr.handlers.vipr_plugin_handler module
- Module contents
- vipr.interfaces package
- vipr.losses package
- vipr.optimizers package
- vipr.plugins package
- Subpackages
- vipr.plugins.api package
- vipr.plugins.celery package
- vipr.plugins.discovery package
- vipr.plugins.huggingface package
- vipr.plugins.inference package
- Subpackages
- Submodules
- vipr.plugins.inference.abstract_step module
- vipr.plugins.inference.base_inference module
- vipr.plugins.inference.controller module
- vipr.plugins.inference.dataset module
- vipr.plugins.inference.inference module
- vipr.plugins.inference.models module
- vipr.plugins.inference.progress_tracker module
- Module contents
- vipr.plugins.normalizers package
- vipr.plugins.performance package
- Module contents
- Subpackages
Submodules¶
vipr.main module¶
- class vipr.main.VIPR(*args, celery_task_ref=None, **kwargs)¶
Bases:
AppVIPR primary application.
- class Meta¶
Bases:
object- PLUGIN_CONFIG_PATH = '/home/sc/Developer/vipr/vipr-core/vipr/config/plugins.yaml'¶
- cache_handler = 'in_memory_cache'¶
- config_file_suffix = '.yml'¶
- config_files = ['/home/sc/Developer/vipr/vipr-core/vipr/config/plugins.yaml']¶
- config_handler = 'yaml'¶
- exit_on_close = False¶
- extensions = ['yaml', 'logging', 'jinja2', 'vipr.ext.strict_registration', 'vipr.ext.dynamic_hooks_filters']¶
- handlers = [<class 'vipr.controllers.base.Base'>, <class 'vipr.controllers.tools.Tools'>, <class 'vipr.controllers.plugins.PluginController'>, <class 'vipr.handlers.in_memory_cache.InMemoryCacheHandler'>]¶
- label = 'vipr'¶
- log_handler = 'vipr_logging'¶
- output_handler = 'jinja2'¶
- plugin_handler = 'vipr_plugin'¶
- plugins = []¶
- template_handler = 'jinja2'¶
- filter: FilterManager¶
- setup()¶
Override setup to load external plugins via entry points after internal plugins.
This ensures that: 1. Cement’s plugin system loads internal plugins first 2. Entry point discovery finds and loads external plugins 3. All plugins are available before the app runs
- class vipr.main.VIPRTest(*args, celery_task_ref=None, **kwargs)¶
Bases:
TestApp,VIPRA sub-class of VIPR that is better suited for testing.
- vipr.main.main()¶
vipr.vipr_paths module¶
- vipr.vipr_paths.resolve_file_path(data_path: str) Path | None¶
Central file path resolution for VIPR framework.
Supports multiple path formats: - Absolute paths: /tmp/file.txt - External plugin resources (MUST use @ prefix): @vipr_reflectometry/exp_data/data.txt - Internal plugins: plugins/normalizers/data.txt
Resolution order: 1. Absolute paths → return if exists 2. Package resources (external plugins with @ prefix) → importlib.resources 3. PROJECT_ROOT relative (internal plugins) → vipr/plugins/…
- Parameters:
data_path – Path string in any supported format
- Returns:
Resolved Path object if file exists, None otherwise
Examples
resolve_file_path(“/tmp/data.txt”) # Absolute path resolve_file_path(“@vipr_reflectometry/exp_data/data.txt”) # External plugin (@ required) resolve_file_path(“plugins/normalizers/data.txt”) # Internal plugin
- vipr.vipr_paths.setup_default_env_vars(working_dir: Path | None = None) None¶
Set default environment variables if not already set. Uses current working directory as base for storage paths.
This allows users to run VIPR without manually setting environment variables. If variables are already set, they will not be overridden.
- Parameters:
working_dir – Base directory for default paths. Defaults to current working directory.
vipr.vipr_runner module¶
- class vipr.vipr_runner.ViprRunner¶
Bases:
objectRuns individual CLI controller commands on a new VIPR instance and encapsulates argv construction plus setup/teardown in context manager.
- run_controller(command: str, subcommand: str, config_path: str | None = None, extra_args: list[str] | None = None, post_args: list[str] | None = None, celery_task_ref: object | None = None)¶
- Parameters:
command – e.g. ‘registry’ or ‘reflectometry’
subcommand – e.g. ‘filters’ or ‘predict’
config_path – Path to YAML config, will be set as “–config”
extra_args – List of flags/args that are inserted _before_ command/subcommand
post_args – List of flags/args that are appended _after_ command/subcommand
celery_task_ref – Celery task instance for progress updates (not serialized to config)
- Returns:
The return value of app.run()
Module contents¶
VIPR Core package initialization.
This module initializes the VIPR package and activates type checking across the entire package.