Skip to content

Improving infra for basic image fitting - #12

Merged
EiffL merged 5 commits into
mainfrom
level0_setup
Feb 8, 2026
Merged

Improving infra for basic image fitting#12
EiffL merged 5 commits into
mainfrom
level0_setup

Conversation

@EiffL

@EiffL EiffL commented Feb 8, 2026

Copy link
Copy Markdown
Member

This pull request introduces a major redesign of the inference configuration and documentation to support three inference methods: NUTS/MCMC, MAP, and Variational Inference (VI). The changes unify the configuration structure, update the documentation throughout to reflect method-agnostic inference, and introduce method-aware diagnostics and output handling. The default and example configurations are updated for clarity and to match external references. This makes the inference pipeline more flexible and easier to use for different workflows.

Inference engine and configuration redesign:

  • Added support for three inference methods (NUTS/MCMC, MAP, VI) in InferenceConfig, with method-specific config blocks (nuts_config, map_config, vi_config) and unified handling of outputs via ArviZ InferenceData (shine/config.py, shine/inference.py). [1] [2] [3]
  • Updated Level 0 config and example configs to use the new method: map and method-specific config blocks, matching external ngmix references and clarifying parameter choices (configs/validation/level0_base.yaml, [1] [2].

Documentation updates for method-agnostic inference:

  • Revised all documentation to describe the three inference methods, their configuration, and outputs, including architecture, API, CLI, configuration, validation, and walkthrough docs (docs/architecture.md, [1]; docs/api/inference.md, [2]; docs/api/config.md, [3]; docs/configuration.md, [4] [5]; docs/getting-started.md, [6] [7]; docs/validation/level0.md, [8] [9] [10] [11] [12]; docs/validation/index.md, [13]; docs/validation/batched.md, [14]; docs/api/validation/cli.md, [15]; docs/api/validation/extraction.md, [16].

Method-aware diagnostics and output handling:

  • Extraction and convergence diagnostics are now method-aware, adapting output and checks based on the inference method used (docs/api/validation/extraction.md, [1]; docs/validation/level0.md, [2] [3] [4].

Improved clarity and external consistency:

  • Updated Level 0 and example configs to match external references (e.g., ngmix), clarified differences, and improved explanatory comments (configs/validation/level0_base.yaml, configs/validation/level0_base.yamlL1-R37).

Refactoring and cleanup:

  • Refactored config class structure, improved type hints, and ensured all methods and config blocks have appropriate defaults and validation (shine/config.py, [1] [2].

These changes make the codebase and documentation more flexible, consistent, and easier to use for a variety of inference workflows.

@claude

claude Bot commented Feb 8, 2026

Copy link
Copy Markdown

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

@EiffL
EiffL merged commit 154f213 into main Feb 8, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant