Metadata-Version: 2.1
Name: labml-remote
Version: 0.0.1
Summary: Run python code on remote servers
Home-page: https://github.com/lab-ml/remote
Author: Varuna Jayasiri
Author-email: vpjayasiri@gmail.com
License: UNKNOWN
Project-URL: Documentation, https://lab-ml.com/
Description: Run Python on a remote computer
        ===============================
        
        .. code-block:: console
        
            pip install labml_remote
            cd [PATH TO YOUR PROJECT FOLDER]
            labml_remote --init
            # Give it SSH credentials
            labml_remote python [PATH TO YOU PYTHON CODE] [ARGUMENTS TO YOUR PYTHON CODE]
        
        ``labml_remote --init`` asks for your SSH credentials and creates two files ``.remote/configs.yaml``
        and ``.remote/exclude.txt``.
        ``.remote/configs.yaml`` keeps the remote configurations for the project.
        Here's a sample ``.remote/configs.yaml``:
        
        .. code-block:: yaml
        
            hostname: ec2-18-219-46-175.us-east-2.compute.amazonaws.com
            name: labml_samples
            private_key: .remote/private_key
            username: ubuntu
        
        ``.remote/exclude.txt`` is like ``.gitignore`` - it specifies the files and folders that you dont need
        to sync up with the remote server. The excludes generated by ``labml_remote --init`` excludes
        things like ``.git``, ``.remote``, ``logs`` and ``__pycache__``.
        You should edit this if you have things that you don't want to be synced with your remote computer.
        
        ``labml_remote python ...`` will run your code in the remote computer.
        It does a bunch of things and you should be able to see the progress in the console.
        It sets up *miniconda* if it's not already installed and create a new environment for the project.
        Then it creates a folder by the name of the project inside home folder and syncs up the contents
        of your local folder. It syncs using *rsync* so subsequent sysncs should only need to send the changes.
        Then it installs packages from ``requirements.txt`` or from *pipenv* if a ``Pipfile`` is found.
        Then it runs your python file. It will use *pipenv* if a ``Pipfile`` is present.
        The outputs of your program will be streamed to the console.
        
        Hope this helps!
Keywords: machine learning
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Mathematics
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/x-rst
