Metadata-Version: 2.1
Name: apache-submarine
Version: 0.8.0.dev0
Summary: A python SDK for submarine
Home-page: https://github.com/apache/submarine
Maintainer: Apache Submarine Community
Maintainer-email: dev@submarine.apache.org
License: Apache License, Version 2.0
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: pandas
Requires-Dist: sqlalchemy (<2.0.0,>=1.4.0)
Requires-Dist: sqlparse
Requires-Dist: pymysql
Requires-Dist: requests (>=2.26.0)
Requires-Dist: urllib3 (>=1.15.1)
Requires-Dist: certifi (>=14.05.14)
Requires-Dist: python-dateutil (>=2.5.3)
Requires-Dist: pyarrow (>=6.0.1)
Requires-Dist: boto3 (>=1.17.58)
Requires-Dist: click (>=8.1.0)
Requires-Dist: rich
Requires-Dist: dacite
Requires-Dist: pyaml
Provides-Extra: pytorch
Requires-Dist: torch (>=1.5.0) ; extra == 'pytorch'
Requires-Dist: torchvision (>=0.6.0) ; extra == 'pytorch'
Provides-Extra: tf
Requires-Dist: tensorflow (==1.15.5) ; extra == 'tf'
Requires-Dist: numpy (<1.19.0,>=1.16.0) ; extra == 'tf'
Requires-Dist: protobuf (<3.20,>=3.6.1) ; extra == 'tf'
Provides-Extra: tf2
Requires-Dist: tensorflow (<2.10.0,>=2.6.0) ; extra == 'tf2'
Requires-Dist: numpy (>=1.14.5) ; extra == 'tf2'
Requires-Dist: keras (>=2.6.0) ; extra == 'tf2'
Requires-Dist: protobuf (<3.20,>=3.9.2) ; extra == 'tf2'
Requires-Dist: tensorflow-addons (==0.17.0) ; extra == 'tf2'
Requires-Dist: tensorflow-estimator (<2.10.0,>=2.6.0) ; extra == 'tf2'
Requires-Dist: tf-slim (==1.1.0) ; extra == 'tf2'
Requires-Dist: typeguard (<3.0.0) ; extra == 'tf2'
Requires-Dist: scipy (<1.11.0) ; extra == 'tf2'

<!---
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License. See accompanying LICENSE file.
-->

# PySubmarine

PySubmarine is aiming to ease the ML engineer's life by providing a set of libraries.

It includes a high-level out-of-box ML library like deepFM, FM, etc.
low-level library to interact with submarine like creating experiment,
tracking experiment metrics, parameters.

## Package setup

- Install latest version of pysubmarine

```bash
git clone https://github.com/apache/submarine.git
cd submarine/submarine-sdk/pysubmarine
pip install .

# install extras_require
## bash
pip install -e .[tf2,pytorch]
## zsh
pip install -e ".[tf2,pytorch]"
```

- Install package from pypi

```bash
pip install apache-submarine
```

## Easy-to-use model trainers

- [FM](https://github.com/apache/submarine/tree/master/submarine-sdk/pysubmarine/example/tensorflow/fm)
- [DeepFM](https://github.com/apache/submarine/tree/master/submarine-sdk/pysubmarine/example/tensorflow/deepfm)

## Submarine experiment management

Makes it easy to run distributed or non-distributed TensorFlow, PyTorch experiments on Kubernetes.

- [mnist example](https://github.com/apache/submarine/tree/master/submarine-sdk/pysubmarine/example/submarine_experiment_sdk.ipynb)

## Development

See [Python Development](https://github.com/apache/submarine/tree/master/website/docs/userDocs/submarine-sdk/pysubmarine/development.md) in the documentation subproject.
