Skip to content

{{cookiecutter.project_name}}

{% if cookiecutter.platform == 'gcp' -%} AI Singapore's Kapitan Hull EPTG GCP Run:ai Banner

{% elif cookiecutter.platform == 'onprem' -%} AI Singapore's Kapitan Hull EPTG Onprem Run:ai Banner

{% endif -%}

{{cookiecutter.description}}

A project generated using AI Singpaore's Kapitan Hull, an end-to-end ML project template.

This template that is also accompanied with an end-to-end guide was generated and customised using the following cookiecutter template:

https://github.com/aisingapore/kapitan-hull

This mkdocs site is for serving the contents of the end-to-end guide in a more readable manner, as opposed to plain Markdown views. The contents of this guide have been customised according to the inputs provided upon generation of this repository through the usage of the cookiecutter CLI, following instructions detailed here.

Inputs provided to cookiecutter for the generation of this template:

  • project_name: {{cookiecutter.project_name}}
  • description: {{cookiecutter.description}}
  • repo_name: {{cookiecutter.repo_name}}
  • src_package_name: {{cookiecutter.src_package_name}}
  • src_package_name_short: {{cookiecutter.src_package_name_short}}
  • platform: {{cookiecutter.platform}}
  • orchestrator: {{cookiecutter.orchestrator}}
  • proj_name: {{cookiecutter.proj_name}}
  • registry_project_path: {{cookiecutter.registry_project_path}}
  • problem_template: {{cookiecutter.problem_template}}
  • author_name: {{cookiecutter.author_name}}

Overview For User Guide

  1. Prerequisites
  2. Preface
  3. MLOps Components & Platform
  4. Developer Workspace
  5. Virtual Environment
  6. Data Storage & Versioning
  7. Job Orchestration
  8. Deployment
  9. Batch Inferencing
  10. Continuous Integration & Deployment
  11. Documentation

Directory Tree

{{cookiecutter.repo_name}}
├── aisg-context        <- Folders containing files and assets relevant
│   │                      for works within the context of AISG's
│   │                      development environments.
│   └── guide-site      <- Files relevant for spinning up the `mkdocs`
│   │                      site to view the end-to-end guide.
{% if cookiecutter.orchestrator == 'runai' -%}
│   └── runai           <- RunAI YAML scripts.
{% elif cookiecutter.orchestrator == 'polyaxon' -%}
{% elif cookiecutter.orchestrator == 'noorch' -%}
{% endif -%}
├── conf                <- Configuration files associated with the
│                          various pipelines as well as for logging.
├── data                <- Folder to contain any data for the various
│                          pipelines. Ignored by Git except its
│                          `.gitkeep` file.
├── docker              <- Dockerfiles associated with the various
│                          stages of the pipeline.
├── docs                <- A default Sphinx project; see sphinx-doc.org
│                          for details.
├── models              <- Directory for trained and serialised models.
├── notebooks           <- Jupyter notebooks. Suggested naming
│                          convention would be number (for ordering),
│                          the creator's initials, and a short `-`
│                          delimited description, e.g.
│                          `1.0-jqp-initial-data-exploration`.
├── src                 <- Directory containing the source code and
|   |                       packages for the project repository.
│   ├── {{cookiecutter.src_package_name}}
│   │   ^- Package containing modules for all pipelines except
│   │      deployment of API server.
│   ├── {{cookiecutter.src_package_name}}_fastapi
│   │   ^- Package for deploying the predictive models within a FastAPI
│   │      server.
│   └── tests           <- Directory containing tests for the
│                          repository's packages.
├── .dockerignore       <- File for specifying files or directories
│                          to be ignored by Docker contexts.
├── .gitignore          <- File for specifying files or directories
│                          to be ignored by Git.
├── .gitlab-ci.yml      <- AML file for configuring GitLab CI/CD
│                          pipelines.
├── .pylintrc           <- Configurations for `pylint`.
├── {{cookiecutter.repo_name}}-conda-env.yaml
│   ^- The `conda` environment file for reproducing
│      the project's development environment.
└── README.md           <- The top-level README containing the basic
                           guide for using the repository.