Search Unity

Python Friction

Discussion in 'ML-Agents' started by Claytonious, Apr 20, 2020.

  1. Claytonious

    Claytonious

    Joined:
    Feb 16, 2009
    Posts:
    904
    The dependency on Python causes a lot of friction across build agents and teams of users with varying desktop setups.

    The latest public release of Python that you are encouraged to download from python.org (3.8) doesn't work, apparently, nor does Python 2.x (which many users already have preinstalled for compatibility with various programs). Users really need to get a very specific version and setup a VirtualEnv in order to succeed with this. Unity is already a cross-platform editor and engine - do we need to carry this Python baggage forward forever? Are there plans on the roadmap to make this tool suite completely standalone and embedded as a part of Unity?

    Thanks!
     
    Last edited: Apr 20, 2020
  2. celion_unity

    celion_unity

    Joined:
    Jun 12, 2019
    Posts:
    289
    HI @Claytonious,
    Sorry for the python headaches.

    Python 2.x recently reached "end of life" and is no longer maintained. Additionally, other dependencies like tensorflow are no longer supporting Python 2.

    Regarding python 3.8, until very recently, tensorflow didn't support it, so neither could we. There's a (very lengthy) discussion here with more details. They only started supporting it with the tensorflow 2.2 release candidates. We're currently in the process of testing tf 2.1 and 2.2 to make sure there are no surprises (in the past there have been some problems with conversion to barracuda), and should have support for them (and thus python 3.8) in the next release.

    As for long-term plans, our product manager will reply here shortly with more information.
     
  3. jeffrey_unity538

    jeffrey_unity538

    Unity Technologies

    Joined:
    Feb 15, 2018
    Posts:
    59
    Hi @Claytonious - as Chris mentioned, longer-term we are moving toward offering a cloud-based service in lieu of having to install all the Python training code locally (we will always provide all the training code as part of Github). This not only solves the Python challenges that most developers face but will allow developers to really scale up experimentation and training that is limited today without building the infrastructure.

    Currently, we are looking for preview customers for this. Would you be interested?

    Jeff
     
    Claytonious likes this.
  4. Claytonious

    Claytonious

    Joined:
    Feb 16, 2009
    Posts:
    904
    Yes, very! Hosted instances sounds good since we're realizing here that we might need *many* hours of training.

    Thanks for the replies on this subject - it's much appreciated.
     
  5. jeffrey_unity538

    jeffrey_unity538

    Unity Technologies

    Joined:
    Feb 15, 2018
    Posts:
    59