On latest Xarray (>2024.04.0) you can do
import xarray as xr
from xarray.groupers import SeasonGrouper
ds = xr.tutorial.open_dataset("air_temperature")
ds.groupby(time=SeasonGrouper(["JJAS", "ON", "DJF", "MAM"])).mean()
https://docs.xarray.dev/en/latest/user-guide/time-series.html#handling-seasons