vipr_api.celery.src.utils package¶
Submodules¶
vipr_api.celery.src.utils.config_mapping module¶
Configuration mapping utilities for VIPR Celery tasks.
Provides clean, unified mapping from frontend configuration structure to VIPR Core’s expected format.
- vipr_api.celery.src.utils.config_mapping.prepare_vipr_config(config_dict: dict[str, Any], result_id: str, load_data_override: dict[str, Any] | None = None, extra_vipr_metadata: dict[str, Any] | None = None) dict[str, Any]¶
Prepare VIPR configuration from frontend config structure.
Creates clean nested structure for VIPR Core: - Frontend sends: {inference: {…}, streaming: {…}} - VIPR Core gets: {vipr: {inference: {…}, result_id: …, metadata: …}}
- Parameters:
config_dict – Frontend configuration with ‘inference’ key
result_id – Task ID for result storage
load_data_override – Optional override for load_data section (used by streaming)
extra_vipr_metadata – Optional additional metadata to add to vipr section
- Returns:
Configuration formatted for VIPR Core with nested vipr.inference structure
- Return type:
Examples
Simple inference:
vipr_config = prepare_vipr_config(config_dict, task_id) # → {vipr: {inference: {load_data: ..., load_model: ...}, result_id: ...}}
Streaming with CSV override and metadata:
vipr_config = prepare_vipr_config( config_dict, result_id, load_data_override={'handler': 'csv_spectrareader', ...}, extra_vipr_metadata={'streaming_mode': True, 'consumer_id': '...'} ) # → {vipr: {inference: {load_data: <overridden>, load_model: ...}, result_id: ..., streaming_mode: ...}}