Spring Boot と FastAPI を連携したフルスタック需要予測AIシステムを構築。MLモデルのAPI化、予測履歴管理を含むエンドツーエンドのシステム設計を実装。
主要な画面と構成の概要。詳細は GitHub の README をご参照ください。
小売・EC 領域における需要予測をテーマにした、フルスタック AI システムです。
日付・性別・年齢・商品カテゴリ・単価を入力すると、学習済みモデルが需要数量を推論し、結果を UI に表示するとともに PostgreSQL に履歴として保存します。
単なるモデル検証ではなく、React フロントエンド、Spring Boot API Gateway、FastAPI ML Service を REST で接続したマイクロサービス構成として設計・実装しました。
ML モデルの API 化、履歴管理、入力バリデーションを含め、業務システムに AI 機能を組み込むことを意識した個人開発です。
要件整理、システム構成設計、API 設計、フロントエンド・バックエンド・ML サービスの実装、PostgreSQL 永続化、Docker Compose による開発環境構築までを一貫して担当。
加えて、README、API 仕様、アーキテクチャ図、AWS デプロイ方針などのドキュメント整備も実施しました。
Spring Boot と FastAPI を分離し、業務ロジックと ML 推論の責務を明確化しました。
ML モデルを API として切り出すことで、将来的なモデルの差し替えや再学習に対応しやすい構成にしています。
予測結果を PostgreSQL に保存し、検索・ページネーション付きで履歴を閲覧できるようにしました。
Spring Data JPA による履歴保存と Pageable ベースのページネーションを実装し、単なる推論 API にとどまらない業務システムらしい設計を意識しました。
入力バリデーションをフロントエンドとバックエンドの両方に配置し、UX と API 契約の堅牢性を両立しました。
Frontend → API Gateway → ML Service → PostgreSQL のデータフローを明確に分離
camelCase / snake_case の変換をフロントエンドと API 契約の間で吸収
Spring Data JPA による履歴保存と Pageable ベースのページネーションを実装
ML 成果物をローカル管理から S3 管理へ拡張できる構成を設計
Docker Compose により複数サービスを一括起動できる開発環境を構築
詳細な API 仕様、データフロー、起動方法、AWS デプロイ方針については、GitHub の README に整理しています。 実装全体を確認したい場合は、リポジトリをご参照ください。