SynthSeg icon indicating copy to clipboard operation
SynthSeg copied to clipboard

Python requirements and versions matching

Open jennykim1016 opened this issue 6 months ago • 7 comments

Hello!

We are trying to run this script on Mac (both M1 / M2 / Apply Silicon -- newest). We have just realized that:

  • Apple Silicon doesn't natively support Python 3.8
  • Conda does not support Python 3.6 but still supports Python 3.8, but the required package versions cannot be met. For instance, conda install -c tensorflow-gpu=2.2.0 or keras=2.3.1. would not work (with conda-forge)[1]. With python 3.8, import statements such as import tensorflow.compat.v2 as tf in /opt/anaconda3/envs/py38/lib/python3.8/site-packages/keras/src/engine/functional.py would not work as it requires lower-version tensorflow and keras, which again Conda doesn't support now.

Given this, what would be the best way to run the SynthSeg script, locally on the Macbook? Is there a plan to support this script in later Python versions (3.10, 3.11) that would be even more compatible with the newer hardware structures in the future?

[1] Log for conda create -n synthseg_38 python=3.8 tensorflow-gpu=2.2.0 keras=2.3.1 nibabel matplotlib -c anaconda -c conda-forge

Channels:

  • anaconda
  • conda-forge
  • defaults Platform: osx-arm64 Collecting package metadata (repodata.json): done Solving environment: failed

PackagesNotFoundError: The following packages are not available from current channels:

  • tensorflow-gpu=2.2.0*
  • keras=2.3.1*

Current channels:

  • https://conda.anaconda.org/anaconda
  • https://conda.anaconda.org/conda-forge
  • defaults

jennykim1016 avatar Aug 11 '24 09:08 jennykim1016