データサイエンスツールがノートパソコンにあるだけでは、その価値はあなたの時間と、結果を説明する能力に限られます。デプロイされたツールであれば、ビジネスパートナーや顧客、同僚があなたを介さずに、その予測や推奨を直接利用できます。
この複数回のシリーズでは、ノートパソコン上のソースコードから、最適化ツールの完全なCI/CDデプロイまでの道のりを解説します。この第1回では、古典的な「自分のコンピュータでは動くのに、あなたのコンピュータでは動かない」という問題を扱います。GitHubからのコードのクローン、Python仮想環境、Dockerとコンテナ化について取り上げ、デプロイする例のツールを紹介します。
例として使うのはCutting Stock Plannerで、これは材料の切断問題を解くツールです。線形計画法と、シンプルなFastAPIベースのUIを使い、必要な材料の本数を最小化する最適な切断計画を作成します。たとえば、8フィートの材料から、いくつかの必要な長さに切り出して椅子を作りたい場合、材料の長さと切断リストを入力し、Create Cut Planをクリックすると、画面に最適な配置が表示されます。
ツールを共有する最も簡単な方法は、GitHubのバージョン管理を通じてコードを配布することです。ユーザーはリポジトリをクローンし、ベースディレクトリに移動して、uvicornコマンドを実行すれば、UIをローカルで起動できます。これは共同開発には有効ですが、デプロイ方法としては大きな欠点があります。デプロイの責任と難しさの大部分はユーザーに降りかかります。ユーザーはGitをインストールし、リポジトリをクローンし、ツールが動くまでに環境を正しく設定しなければなりません。
出典: Towards Data Science · 要約:HeadlinesBriefing