(work in progress)
ML Infrastructure stack and playground for local (for now) machine learning development. Including workflow engine, experiment tracking, model serving (upcoming), and more.
Includes the following components:
poetry install
For local development cluster and how to start refer to kubernetes/README.md.
To test flyte locally using the local development cluster perform the following steps - (inspired by).
Make sure the hosts entry for the fully qualified domain name (FQDN) is set to the storage service (e.g. minio). Pyflyte gets the minio endpoint from the flyteadmin service. In the cluster flyte is configured to use a particular storage service which is forwarded to the client(pyflyte). If the FQDN is not set to the storage service the client will not be able to connect to the storage service.
127.0.0.1 ml-minio.default.svc.cluster.local
Make sure your flyte config is defined - default in ~/.flyte/config
- see flyte docs for more details.
mkdir -p ~/.flyte && \
cat << EOF > ~/.flyte/config
admin:
# grpc endpoint
endpoint: localhost:8089
authType: Pkce
insecure: true
logger:
show-source: true
level: 6
EOF
Make sure that the flyte/flyteadmin service is running and corresponding ports are forwarded (see kubernetes/README.md).
Executes a flyte workflow remotely.
pyflyte run --remote samples/hello_flyte.py my_wf
Test artifact storage:
poetry run python samples/mlflow/artifacts.py --tracking_uri http://localhost:8888/mlflow
Test experiment tracking:
poetry run python samples/mlflow/tracking.py --tracking_uri http://localhost:8888/mlflow