「郷土料理合成研究所〜郷LABO〜」とは
地方をもっと楽しむをテーマに、日常生活の「食」に注目したアプリケーションです。
日頃あまり触れることのない各地方の郷土料理を美味しく・楽しく調理できるようなレシピを提案します。
チーム名
九州縦断隊
メンバーと各担当範囲
川上
EM,リードエンジニア
機械学習を主に担当
森田
バックエンド担当
サポートでフロントエンドとバックエンドの繋ぎこみ
長谷川
機械学習,フロント(ロジック実装)担当
園
フロント(View実装)担当
湯舟
PM,アプリデザイン,プレゼン,AppStoreConnect担当
技術仕様
構成図
使用言語と動作環境
フロントエンド
バックエンド
利用しているライブラリ・ミドルウェアとその利用目的
- チームで Angular 開発経験が共通していたため、Ionicを採用
- Serverless Framework を利用することで、AWSサービスを一元的に管理
利用しているサービスとその利用目的
利用しているサービス
- ChatGPT - OpenAI
- Stable Diffusion — Stability AI
- AITalk
- AWS AppSync
- Amazon DynamoDB
- Amazon API Gateway
- AWS Lambda
- Amazon Location Service
- Amazon S3
利用している生成AIサービスとその利用目的
- ChatGPT - OpenAI
- Stable Diffusion — Stability AI
- AITalk
技術的に工夫した点・苦労した点
工夫した点
- AWSリソースの管理をServerlessFrameworkを用いてIaC化
- 究極の多様性を持つ地方 x 食における面白さをこだわり抜いた.
- フロントは全員で作業するため,GitHub,Dockerなどコード・バージョン管理を徹底した.
- 最新のプロンプトエンジニアリング手法を活用し,生成形AIのパフォーマンスを向上させた.
- LLMによる文章出力安定化を,プログラミング手法によって解決した.
- 地方 x 楽しい食体験を実現させるための体験構築にこだわった.(実際に作ってみた.美味しかった)
- 複数の大規模モデルをストレスの少ない形で扱った.
- ライブラリの使用を減らして、調べるコストを削減したこと
- 郷土料理をOpenAI から取得する際、全く関係ないテキストを送ってくることがあったため、その場合は弾いて再リクエストを送るようにした
- AI生成ロジックが複雑なので、どうしてもユーザーを待たせてしまうところを、Loading画面を作成しプログレスバーやTapEventで対策した
苦労した点
- サーバレスなのでデバッグとテストに苦労した
- Web画面で使える機能とスマホで使える機能が異なり、それに気づくのに時間がかかった
- Stable diffusion API のリクエスト上限に来てしまったので課金をせざるをえなかった
最終プレゼン資料
https://drive.google.com/file/d/1b7k9VSbAPJU9qDFLTYT5b5yYL-am3CWs/view?usp=drive_link