【要約】YouCam APIだけで作るAIヘアスタイルアドバイザー [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
ユーザーは新しい髪型を試したいが、自分に似合うか判断できないという課題を抱えている。開発者は、AIによる推薦にLLMを利用する際に生じる以下の技術的ペインポイントを解決する必要があった。
- ・LLMの推論による応答時間の増大(レイテンシの悪化)。
- ・同じ入力に対して推薦結果が揺れる再現性の欠如。
- ・YouCam APIに加え、LLMのAPIコストも発生する運用負荷。
- ・単純なパイプラインに対してLLMを導入することによるオーバーキル状態。
// Approach
開発者は、LLMの課題を回避するため、決定論的に動作するルールベースの推薦システムを採用した。具体的には、以下のステップでシステムを構築している。
- ・YouCam APIの3種(顔分析、ヘアスタイルVTO、ヘアカラーVTO)を統合。
- ・顔型ごとに「推奨キーワード」と「回避キーワード」を定義したルールエンジンを実装。
- ・テンプレート名とキーワードを照合し、スコアリングによって上位3件を推薦。
- ・File APIによる2段階のアップロードと、非同期タスクのポーリング処理を実装。
// Result
開発者は、顔写真のアップロードから推薦・試着までを自動化するWebアプリを実現した。この設計により、以下の成果を得ている。
- ・LLMを排除したことで、高速かつ低コストな推薦プロセスを確立。
- ・顔型に基づいた「おすすめ」と「避けるべき」スタイルを、スコアリングにより制御。
- ・FastAPIを用いた、シンプルかつ拡張可能なバックエンド構成の構築。
- ・YouCam APIの非同期ワークフローを体系化した実装パターンの提示。
Senior Engineer Insight
> LLMのオーバーキルを避け、レイテンシとコストを優先した設計は極めて実戦的だ。決定論的なロジックは、大規模運用における予測可能性とコスト管理において大きな利点となる。ただし、顔分析の角度依存性は実運用上の大きなリスクだ。ユーザーの撮影ミスを前提としたフォールバック設計や、UI側での撮影ガイドの徹底が、プロダクトの品質を左右する。現場では、入力データの品質に対する堅牢性をいかに担保するかが鍵となる。