🐈

【AI Agent Hackathon】Smart Play Counselor - 今日、子どもと何して遊ぶ?をAIが解決する

に公開

Smart Play Counselor - 今日、子どもと何して遊ぶ?をAIが解決する

⭐️ 概要

Smart Play Counselor は、「今日、子どもと何して遊ぼう?」という親の悩みを、AIが解決するアプリです。

子どもの年齢・興味・発達段階と、家にあるおもちゃを分析し、その子に最適な遊びプランをAIがリアルタイムで提案します。

🔗 サービスURL: https://smart-play-counselor.web.app
🔗 GitHub: https://github.com/taroogura/smart_play_counselor

デモ動画

https://youtube.com/shorts/Xa7J808Rsfw?feature=share


📖 背景と解決する課題

「今日何して遊ぶ?」という毎日の問い

小学生以下の子どもを持つ親なら、誰もが経験したことがあるはずです。

幼稚園から帰ってきた子どもが「遊ぼう!」と言ってくる。
休日の朝、「今日何するの?」と目をキラキラさせている。

——でも、正直何をすればいいかわからない。

YouTube を見せてしまう罪悪感。毎回同じ遊びのマンネリ。「この遊びって本当にこの子のためになってるのかな?」という漠然とした不安。

これは怠慢ではありません。情報がないだけです。

親が抱える4つの課題

# 課題 具体例
1 遊びのレパートリー不足 毎回ブロックか塗り絵で、子どもが飽きている
2 発達段階とのミスマッチ ネットで見つけた遊びが年齢に合わなかった
3 おもちゃの活用不足 買ったおもちゃの半分は棚の奥で眠っている
4 「ちょうどいい」が見つからない 30分だけ遊びたいのに、準備に1時間かかる遊びしか出てこない

保育士や幼児教育の専門家なら、子どもの様子を見て最適な遊びを即座に提案できます。でも、すべての親がその知識を持っているわけではありません。

「専門家の知見を、すべての家庭に届けたい」 —— これが Smart Play Counselor の出発点です。


💡 ソリューション

Smart Play Counselor は、AIを「家庭のあそびカウンセラー」にするアプリです。

できること

① 子どもの情報を登録(年齢・性別・興味・発達段階)

② おもちゃを登録(手動 / 写真でAI分析 / Amazon検索)

③ 遊び時間を指定(15分 / 30分 / 1時間...)

🤖 AIが「その子 × そのおもちゃ × その時間」に最適な遊びを提案

④ 遊んだ後にフィードバック → 次の提案がさらに良くなる

従来の方法との比較

Google検索 育児アプリ Smart Play Counselor
子どもの個性を考慮 △ 年齢のみ ✅ 年齢・興味・発達段階
手持ちのおもちゃ活用 ✅ 登録おもちゃから提案
時間指定 ✅ 自由に設定可能
発達への効果 △ 自分で判断 △ 一般論 ✅ 個別に分析・可視化
使うたびに最適化 ✅ フィードバックで学習

🎯 主な機能

1. 子どもプロフィール管理

子どもの年齢・性別に加え、6つの発達指標(創造力・論理力・身体能力・言語力・社会性・集中力)と興味の傾向を登録します。

これにより、AIは「この子は創造力が高いけど集中力を伸ばしたい」といった個別の成長ニーズを理解できます。

2. おもちゃのAI分析

おもちゃの登録方法は3つ:

  • 写真を撮る → Gemini Vision がおもちゃを特定し、発達効果を自動分析
  • Amazon で検索 → キーワードから候補を表示、ワンタップで登録
  • 手動登録 → 名前とカテゴリを入力

写真を撮るだけで「このブロックは創造力8/10、論理力7/10、集中力6/10」のように、おもちゃの発達効果がスコア化されます。

3. AIによる遊びプラン提案

登録された情報をもとに、Vertex AI(Gemini 1.5 Pro) が遊びプランを生成します。

提案には以下が含まれます:

  • アクティビティ名 — 子どもがワクワクするタイトル
  • 導入の声かけ — 子どもを遊びに誘うフレーズ
  • ステップバイステップの手順 — すぐに実践できる具体的な指示
  • なぜこの遊びが良いのか — 発達面での根拠
  • 必要な材料 — 準備物リスト

4. 成長記録と可視化

遊びセッションの履歴を記録し、発達指標の推移をグラフで確認できます。カレンダービューで「今月はどれくらい遊んだか」が一目瞭然です。


🏗️ 技術スタック

カテゴリ 技術
フロントエンド Flutter / Dart
状態管理 Provider
ルーティング GoRouter
認証 Firebase Auth(Google / ゲスト)
データベース Cloud Firestore
ストレージ Firebase Storage
サーバーレス Cloud Functions(Node.js)
AI(おもちゃ分析) Gemini API(REST)
AI(遊び提案) Vertex AI(Gemini 1.5 Pro)
UI Material Design 3 / Flutter Animate / FL Chart
ホスティング Firebase Hosting

🔧 システムアーキテクチャ

┌─────────────────────────────────────────────────┐
│                  Flutter Web App                 │
│  ┌───────────┐ ┌───────────┐ ┌───────────────┐  │
│  │  Login    │ │  Home     │ │  Toy Register │  │
│  │  Screen   │ │  Screen   │ │  Screen       │  │
│  └─────┬─────┘ └─────┬─────┘ └───────┬───────┘  │
│        │              │               │          │
│  ┌─────┴──────────────┴───────────────┴───────┐  │
│  │            Services Layer                   │  │
│  │  AuthService / AIScanService / SearchService│  │
│  └─────────────────────┬───────────────────────┘  │
└────────────────────────┼─────────────────────────┘

          ┌──────────────┼──────────────┐
          ▼              ▼              ▼
   ┌────────────┐ ┌───────────┐ ┌─────────────┐
   │  Firebase   │ │  Gemini   │ │   Cloud     │
   │  Auth /     │ │  API      │ │   Functions │
   │  Firestore / │ │ (Vision)  │ │             │
   │  Storage    │ │           │ │  ┌────────┐ │
   └────────────┘ └───────────┘ │  │Vertex  │ │
                                │  │AI      │ │
                                │  │Gemini  │ │
                                │  │1.5 Pro │ │
                                │  └────────┘ │
                                └─────────────┘

AI処理の流れ

おもちゃ分析(クライアントサイド):

写真/URL → Gemini API(REST) → おもちゃ特定 + 発達スコア算出 → Firestore保存

複数のGeminiモデル(gemini-1.5-flashgemini-1.5-progemini-2.0-flash-exp)にフォールバックする仕組みで、可用性を確保しています。

遊びプラン提案(サーバーサイド):

子どもの情報 + おもちゃリスト + 時間

Cloud Functions

Vertex AI(Gemini 1.5 Pro)にプロンプト送信

構造化された遊びプランをJSON形式で返却

Cloud Functions を経由することで、APIキーをクライアントに露出させず、セキュアな構成を実現しています。


💪 実装におけるこだわり

1. 「写真を撮るだけ」の簡単登録

親は忙しい。おもちゃの名前を調べてカテゴリを選んで...という手間は極力なくしたい。写真を1枚撮るだけで、AIがおもちゃの名前・カテゴリ・発達効果をすべて自動入力します。

2. 子ども一人ひとりに合わせた提案

同じ4歳でも、ブロック好きの子と絵を描くのが好きな子では、最適な遊びが全く違います。6つの発達指標と興味マップを組み合わせることで、「この子だけの遊び」 を提案できます。

3. モデルのフォールバック戦略

Gemini APIは複数のモデルバージョンが存在し、利用可能状況が変わることがあります。そこで、複数モデルに順次リクエストを送るフォールバック機構を実装しました。

final models = [
  'gemini-1.5-flash',
  'gemini-1.5-flash-latest',
  'gemini-1.5-pro',
  'gemini-2.0-flash-exp',
];

for (final model in models) {
  try {
    // REST APIでリクエスト
    final response = await http.post(url, ...);
    if (response.statusCode == 200) return parseResponse(response);
  } catch (e) {
    continue; // 次のモデルへフォールバック
  }
}

4. クロスプラットフォーム対応

Flutter を採用したことで、Web・Android・iOS すべてに対応。Web版はFirebase Hostingですぐに試せ、モバイルアプリとしても配信可能です。


🚀 今後の展望

フェーズ 内容
短期 遊びプランの画像生成(Imagen連携)、音声での遊びガイド
中期 兄弟・友達との複数人遊び対応、季節・天気に応じた提案
長期 保育士・教育者向けダッシュボード、発達相談AIチャット

特に実現したいのは音声ガイド機能です。遊んでいる最中にスマホを見る余裕はないので、「次はブロックを3つ重ねてみよう!」とAIが声で導いてくれれば、親子が遊びに集中できます。


📝 まとめ

Smart Play Counselor は、「子どもとどう遊べばいいかわからない」 という、多くの親が口に出せない悩みに正面から向き合ったアプリです。

子育てに正解はありません。でも、「今日のこの30分が、この子の成長につながっている」 と思えるだけで、親の心は軽くなります。

AIは親の代わりにはなれません。でも、親がもっと自信を持って子どもと向き合える「きっかけ」 を作ることはできます。

ぜひ一度試してみてください。

🔗 https://smart-play-counselor.web.app


この記事は AI Agent Hackathon with Google Cloud への提出記事です。

Discussion