fmind/cookiecutter-mlops-package
Start building and deploying Python packages and Docker images for MLOps tasks.
何を解決するか
新しい機械学習プロジェクトを始めるたびに、linting、テスト、セキュリティスキャン、CI/CDパイプラインを手動で設定する繰り返しの作業を排除します。このテンプレートを使えば、業界のベストプラクティスに従ったプロダクション準備完了のコードベースを素早く構築できます。
動作方法
Cookiecutterテンプレートであり、標準化されたPythonプロジェクト構造を生成します。開発ライフサイクルを自動化する現代的なツールチェーンを統合しています:
- タスク管理:
miseを使用して、ローカル開発とCIで共通して使用される一連のコマンド(インストール、テスト、ビルド)を定義します。 - Pythonスタック:
uvで高速な依存関係管理、Ruffでlinting/フォーマット、tyで型チェックを実行します。 - セキュリティ:
pip-audit、gitleaks、Trivy、hadolintを統合して、脆弱性やシークレットをスキャンします。 - デプロイ:マルチステージのDockerイメージとGitHub Actionsワークフローを提供し、継続的インテグレーションとデプロイを実現します。
- 実験追跡:SQLiteバックエンドを備えたローカルMLflow設定を含み、モデルの追跡とレジストリをサポートします。
対象ユーザー
Kubernetes、Vertex AI、Databricks、Azure ML、AWS SageMakerなどのプラットフォームに統合可能な、堅牢でスケーラブルなAI/MLパッケージを構築する必要があるMLエンジニアやデータサイエンティスト。
特徴
- 統一された語彙:開発者、Gitフック、CIパイプラインで共通のコマンドセットを使用。
- セキュリティ最優先:依存関係のCVE、シークレット、コンテナイメージの脆弱性を内蔵スキャンで検出。
- 自動化されたCI/CD:GitHub Actionsを事前構成済みで、テスト、GitHub Pagesへのドキュメントリリース、GHCRへのイメージプッシュを自動化。
- 現代的なツール:
uvやRuffといった高性能ツールを活用し、より高速な開発ループを実現。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト