Metadata-Version: 2.4
Name: EASONEASON
Version: 0.1.0
Summary: DCU/ROCm inference optimizations for Pangu-Weather
Author: AI4S competition team
License-Expression: LicenseRef-Proprietary
Project-URL: Homepage, https://github.com/REPLACE_WITH_YOUR_REPOSITORY
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Operating System :: POSIX :: Linux
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: numpy>=1.23
Requires-Dist: h5py>=3.8
Requires-Dist: tqdm>=4.65

# Pangu Weather DCU AI4S

Pangu-Weather inference and training optimizations for the AI4S DCU/ROCm
competition environment.

## Installation

Install the competition runtime first. `torch`, `onescience` and `apex` must
match the provided DCU/ROCm environment, so they are deliberately not declared
as automatic PyPI dependencies.

```bash
pip install EASONEASON
```

The lightweight Python dependencies (`numpy`, `h5py`, `tqdm`) install
automatically. The model checkpoint and ERA5 data are not bundled.

## Running

Run in a directory that contains `conf/config.yaml` and whose relative data
and checkpoint paths match that file:

```bash
pangu-weather-infer
# or
python -m inference
```

The package also installs `pangu-weather-train`.

The default configuration is included in the distribution under
`pangu_weather_dcu/conf/config.yaml`; copy it into the competition workspace
before editing paths. Model weights (`*.pth`) and generated data are excluded
from the release on purpose.

## Publishing a release

1. Replace the package name and homepage in `pyproject.toml` if necessary.
   PyPI names are global: a name already taken cannot be published.
2. Create a new version for every upload (for example, change `0.1.0` to
   `0.1.1`). PyPI does not allow replacing an uploaded file.
3. Build and check the artifacts:

   ```bash
   python -m pip install --upgrade build twine
   python -m build
   python -m twine check dist/*
   ```

4. Test on TestPyPI first, then publish to PyPI using a scoped API token:

   ```bash
   python -m twine upload --repository testpypi dist/*
   python -m twine upload dist/*
   ```

Do not put tokens, checkpoints, or competition datasets in this repository or
the distribution.
