Google I/O 2024: 新しい体験を提供するI/Oクロスワードの開発秘話
2024年のGoogle I/Oイベントでは、新しい製品やツールが発表されました。その中には、AIを活用して驚くべき新しい体験を構築することを奨励する「Gemini API開発コンペティション」が含まれています。
I/Oクロスワードの魅力
I/Oクロスワードは、伝統的なクロスワードパズルに新たなひねりを加えたもので、Googleの製品発表に関する知識を試す楽しい方法です。特に、Flutter、Firebase、そしてGemini APIの力を実感できる体験です。
プレイ方法
- ステップ1: チームを選び、マスコットを選択します。それぞれのチームがボード上に色を持ち、全員が集計スコアに貢献します。
- ステップ2: 使用するボードの場所を選び、単語の解決を開始します。
- ステップ3: 単語に行き詰った場合、「ヒント」ボタンをクリックし、最大10のイエス・ノー質問をして答えを導き出します。
- ステップ4: スコアをリーダーボードに提出し、Google開発者プログラムのプロフィールにバッジを集め、クロスワードの腕前を世界に披露します。
技術的な裏側
Gemini: ブランド安全で、トピカルなコンテンツ
I/Oクロスワードの単語やヒントは、今年のI/Oで話題になったすべての内容から作成されています。特に、Gemini Advancedを使用して、YouTubeのGoogle I/O基調講演の映像を3時間分レビューし、テーマに関連する単語とヒントを生成しました。
Gemini API: 経験を構築する
Gemini APIを通じて、開発者は同じGeminiモデルを使ってアプリケーションに内蔵することができます。ユーザーのエンゲージメントを増やし、ゲームを中断させずに楽しめるよう、「ヒント」機能を追加しました。この機能は、ユーザーが質問をした際に、Firebase Genkitを使用して、Yes/Noの回答を提供するGemini 1.5 Flashモデルに情報を送信します。
FlutterとDart: インタラクティブなユーザーインターフェース
I/OクロスワードのUIはFlutterを使用して構築されています。その柔軟性と性能から、ダイナミックでインタラクティブなゲームを作るために最適な選択でした。
特に、FlutterのInteractiveViewerウィジェットを利用して、クロスワードボードをレンダリングし、スムーズなナビゲーションを実現しました。
Firebase: ゲーム体験のホスティングとセキュリティ
Firebaseは、跨ぐプラットフォームでのバックエンド機能を提供する数多くのツールを提供します。アプリケーションはFirebase Hostingでホスティングされ、全てのデータはFirestoreに保存されています。Firestoreはリアルタイムに動作し、ユーザーがパズルを解く際にライブ更新を行います。
Dart FrogとCloud Run: フロントエンドとバックエンド間のコード共有
バックエンドはDartで構築され、API呼び出しやデータベースとのやり取りを管理します。Cloud Runはオートスケーリングを提供し、スムーズな体験を保証します。
不正を防ぐため、Dart Frogバックエンドを使用しています。この構成により、Firestoreを読み取ることはできますが、変更を加えられるのはDart Frogバックエンドのみです。
さあ、あなたも体験してみよう
I/Oクロスワードを実際に体験してみてください。技術者向けには、オープンソースのコードが公開されています。
また、開発者コンペティションに参加する際の参考にしていただければと願っています。新しい体験を創り出すための第一歩として、Developer Learning Pathwayを通じて、開発の過程を学ぶことができます。
是非、I/Oクロスワードの楽しさを体感してみてください!