Zenn AI Agent Hackathon with Google Cloud ハッカソン参加メモ📝
Zenn AI Agent Hackathon with Google Cloud ハッカソン
🗓️ スケジュール
登録および提出期間:2024年12月19日~2025年2月10日(*1)
1次審査期間:2025年2月11日~2025年2月17日
2次審査期間:2025年2月18日~2025年2月24日
受賞者並びに候補者通知:2025年2月25日
受賞者発表並びに最終審査:2025年3月13日
*1: 2月7日(金)までに本ページの申し込みフォームからご参加登録を頂いた上で、2月10日(月)までのプロジェクトの提出をもって、正式なご参加となります。必要情報をご記入の上で、期日までのご登録とご提出をお願いいたします。
🏆 賞のカテゴリー
最優秀賞:賞金50万円
2位:賞金30万円
3位:賞金20万円
Tech Deep Dive 賞:賞金15万円
Moonshot 賞:賞金15万円
Firebase 賞:賞金15万円
Flutter 賞:賞金15万円
Android 賞:賞金15万円
🎟️ 関連イベント
本ハッカソンへの参加者を対象に、下記イベントを開催予定です。
チームメイトをお探しの方向けのチームビルディングや、ハッカソンのプロジェクト開発にもお役立ていただけるハンズオン セッションをご提供します。
イベントへの参加をご希望される方は、ハッカソン申し込みフォームにてご回答ください。
① チームビルディング&ハンズオンイベント(オフライン開催)
日時:2025年1月14日(火) 18:00~21:30
場所:クラスメソッド株式会社 本社 日比谷オフィス
対象:本ハッカソンへの参加登録が完了している個人またはチーム
参加費:無料
② オフィスアワー(オンライン開催)
日時:2025年1月20日(月) 詳細は近日公開
対象:本ハッカソンへの参加登録が完了している個人またはチーム
ハッカソン申し込みフォームから、本イベントへの参加をお申込み頂けます。ご参加の方にはメールにて詳細をご案内いたします。
🏙️ 主催・協賛
主催
Zenn(クラスメソッド株式会社)
協賛
グーグル・クラウド・ジャパン合同会社
👩💻 開発プロジェクト条件
ご提出いただくプロジェクトは、Google Cloud AIプロダクトから1つ以上と、Google Cloud コンピュート プロダクトから1つ以上のプロダクトを使用しているプロジェクトであり、Google Cloud上で実行されることが審査対象の条件となります。
1. Google Cloud のAIプロダクトのうち、少なくとも1つを使用
Vertex AI Studio
Vertex AI Agent Builder
Vertex AI Platform
Vertex AI Notebooks
Gemini API in Vertex AI
AutoML
Natural Language AI
Speech to Text
Text to Speech
Translation AI
Vision AI
Video AI
Document AI
DialogFlow
Contact Center AI
2. Google Cloudコンピュート プロダクトのうち、少なくとも1つを使用
Cloud Functions
App Engine
Cloud Run
Google Kubernetes Engine
Google Compute Engine
3. *オプショナル : Flutter、Firebase、Android を使用する
上記の条件に加えて、Flutter、Firebase、Android を使用されているプロジェクトは、Flutter 賞、Firebase 賞、Android 賞の対象になります。
📄 提出物
- テストと審査用のプロジェクトのコードリポジトリの URL
- プロジェクトについて説明した Zenn の記事
- 文字数は 4000~6000 文字とし、下記 ⅰ~ⅲ を必ず記事中に含めてください。
ⅰ. プロジェクトが対象とするユーザー像と課題、課題へのソリューションと特徴をまとめた説明文
ⅱ. システム アーキテクチャ図の画像
ⅲ. プロジェクトの 3 分以内のデモ動画
※デモ動画は自作の上、YouTube に公開し Zenn 記事に埋め込んでください。
- 文字数は 4000~6000 文字とし、下記 ⅰ~ⅲ を必ず記事中に含めてください。
🔖 賞の説明
最優秀賞
AI Hackathon 全体の頂点に立つ賞です。最も革新的で、社会にインパクトを与える可能性を秘めたプロジェクトに贈られます。技術力、独創性、完成度、プレゼンテーション能力など、あらゆる面から審査し、真のチャンピオンを決定します。
2位
最優秀賞に迫る高い完成度と優れたアイデアを持つプロジェクトに贈られます。
3位
AI 技術を深く理解し、確かな技術力と独創的なアイデアで、審査員を魅了したプロジェクトに贈られます。
Tech Deep Dive 賞
例のない、または既存の概念を覆すような大胆な発想と革新的なアイデアで、未来を切り拓く可能性を秘めたプロジェクトに贈られます。既存の概念にとらわれず、AI の新たな可能性に挑戦した作品が選ばれます。
Moonshot 賞
高度なアーキテクチャ、独創的なアプローチ、そして最先端の技術を駆使して、他に類を見ない革新的なアプリケーションを開発しましょう。
Firebase 賞
Google Firebase を効果的に活用し、優れた機能やユーザー体験を実現したプロジェクトに贈られます。Firebase の持つ可能性を最大限に引き出し、革新的なサービスを開発した作品が選ばれます。
Flutter 賞
Flutter を用いて、美しい UI/UX と高いパフォーマンスを両立させたプロジェクトに贈られます。ユーザー フレンドリーで洗練されたアプリケーションを開発した作品が選ばれます。
Android 賞
Android プラットフォーム上で動作する、革新的で実用的なアプリケーションを開発したプロジェクトに贈られます。Android の特性を最大限に活かし、ユーザーに新しい価値を提供する作品が選ばれます。
📏 審査基準
1. アイデアの質
アイデアの創造性と独創性について評価します。
2. 問題の明確さと解決策の有効性
問題が明確に定義されているか、そして提案されたソリューションがその中心となる問題に効果的に対処し、解決しているかを評価します。
3. アイデアの実現
開発者がアイデアをどの程度実現し、必要なツールを活用し、拡張性があり、運用しやすく、費用対効果の高いソリューションを作成できたかを評価します。
指定されているGCPプロダクトについて調査📝
Google Cloudは、AIおよびコンピューティングに関する多くのプロダクトを提供しています。以下に、各プロダクトの概要を整理して説明します。
Google CloudのAIプロダクト
-
Vertex AI Studio: AIモデルの迅速なプロトタイピングとテストを行うためのツール。ユーザーはサンプルプロンプトをテストし、自分のプロンプトを設計して、アプリケーションのニーズに合わせた基盤モデルをカスタマイズできます。
-
Vertex AI Agent Builder: 組織のデータに基づいた生成AIエージェントやアプリケーションを作成するためのツール。ノーコードでエージェントを構築できるコンソールを提供し、強力なカスタマイズ機能を備えています。
-
Vertex AI Platform: データサイエンティストやエンジニアがMLおよびAIモデルを作成、トレーニング、テスト、監視、調整、デプロイするための統合プラットフォーム。150以上のモデルを利用可能です。
-
Vertex AI Notebooks: データ探索からプロトタイプ、プロダクションまでの全データサイエンスワークフローをサポートするノートブック環境。
-
Gemini API in Vertex AI: マルチモーダルな生成AIモデルで、テキスト、画像、音声などのデータを扱うことができます。
-
AutoML: 技術的なスキルがないユーザーでも高品質な機械学習モデルを作成できる自動機械学習プラットフォーム。画像分類、テキスト分類、言語翻訳などのツールを提供します。
-
Natural Language AI: 自然言語処理を行うためのAPIで、テキストの分析や分類、感情分析などが可能です。
-
Speech to Text: 音声をテキストに変換するサービス。多言語に対応しており、リアルタイムでの音声認識が可能です。
-
Text to Speech: テキストを自然な音声に変換するサービス。多様な音声オプションを提供し、カスタマイズも可能です。
-
Translation AI: 様々な言語間での翻訳を行うAPI。高精度な翻訳を提供します。
-
Vision AI: 画像認識や分析を行うためのAPI。物体検出やラベル付けなどが可能です。
-
Video AI: 動画の分析や処理を行うサービス。動画内のオブジェクトやシーンを認識する機能があります。
-
Document AI: 文書の自動処理を行うためのツール。PDFやスキャンした文書から情報を抽出します。
-
DialogFlow: チャットボットや音声アシスタントを構築するためのプラットフォーム。自然言語理解を活用して、ユーザーとの対話を実現します。
-
Contact Center AI: カスタマーサポートの自動化を支援するAIソリューション。顧客との対話を効率化します。
Google Cloudコンピュートプロダクト
-
Cloud Functions: イベント駆動型のサーバーレスコンピューティングサービス。特定のイベントに応じてコードを実行します。
-
App Engine: アプリケーションを簡単にデプロイできるプラットフォーム。スケーラブルなアプリケーションを構築するための環境を提供します。
-
Cloud Run: コンテナ化されたアプリケーションをサーバーレスで実行するためのサービス。自動的にスケールアップ・ダウンします。
-
Google Kubernetes Engine: Kubernetesを利用したマネージドなコンテナオーケストレーションサービス。コンテナのデプロイと管理を簡素化します。
-
Google Compute Engine: 仮想マシンを提供するIaaSサービス。ユーザーは必要なリソースを柔軟に選択し、スケーラブルな環境を構築できます。
情報整理表
カテゴリ | プロダクト名 | 概要 |
---|---|---|
AIプロダクト | Vertex AI Studio | AIモデルのプロトタイピングとテストを行うツール。 |
Vertex AI Agent Builder | 組織データに基づいた生成AIエージェントを作成するツール。 | |
Vertex AI Platform | MLおよびAIモデルの作成、トレーニング、デプロイを行う統合プラットフォーム。 | |
Vertex AI Notebooks | データサイエンスワークフローをサポートするノートブック環境。 | |
Gemini API in Vertex AI | マルチモーダルな生成AIモデルを扱うAPI。 | |
AutoML | 自動機械学習プラットフォーム。 | |
Natural Language AI | 自然言語処理を行うAPI。 | |
Speech to Text | 音声をテキストに変換するサービス。 | |
Text to Speech | テキストを音声に変換するサービス。 | |
Translation AI | 言語間の翻訳を行うAPI。 | |
Vision AI | 画像認識や分析を行うAPI。 | |
Video AI | 動画の分析や処理を行うサービス。 | |
Document AI | 文書の自動処理を行うツール。 | |
DialogFlow | チャットボットや音声アシスタントを構築するプラットフォーム。 | |
Contact Center AI | カスタマーサポートの自動化を支援するAIソリューション。 | |
コンピュートプロダクト | Cloud Functions | イベント駆動型のサーバーレスコンピューティングサービス。 |
App Engine | アプリケーションを簡単にデプロイできるプラットフォーム。 | |
Cloud Run | コンテナ化されたアプリケーションをサーバーレスで実行するサービス。 | |
Google Kubernetes Engine | マネージドなコンテナオーケストレーションサービス。 | |
Google Compute Engine | 仮想マシンを提供するIaaSサービス。 |
1/14: チームビルディング&ハンズオンイベント(オフライン開催)の参加メモ📝
ハンズオンで作成する生成AI関連の機能
- ソースデータに基づいた回答生成
- マルチターンの質問回答
- ドキュメントの概要を生成
1. ソースデータに基づいた回答生成
- アップロードしたソースデータに基づいた回答を作成するようにする。
- グランディングの実装として、RAGを実装する。
Google Cloud上でのRAG実装について
- Vertex AI Search
- 一番簡単
- RAG Engine
- Vertex AIを利用したRAGが構築できる。
- DIY Search and RAG
- 柔軟性が一番高い選択肢
今回のハンズオンで管理するデータ
- User
- Notebook
- File
- ChatMessage
- Src
- Memo
管理するデータとシステムの構成
- Firebase Auth
- User
- Firebase Cloud Storage
- File
- Firebase Cloud FireStore
- Notebook
- ChatMessage
- Src
- Memo
今回利用するコンピューティングリソース
Cloud Run
コンテンアプリをフルマネージドなプラットフォーム
サーバーレスで、従量課金
使っていない際は、ゼロスケール
Eventarc
- イベント駆動型のアーキテクチャで、利用する。
2. マルチターンの質問回答
過去の質問内容、回答内容を踏まえた質問回答 (マルチターンの質問回答) を生成するには、生成 AI に対して現在の質問に加えて、今までのやり取りも合わせて送る必要があります。
つまり生成 AI は今までのやり取りを記憶しているわけではなく、プログラム側で対応が必要になります。
今回のプログラムでは Firestore に質問と回答の履歴を持つようにし、質問を投げたときに履歴すべてを質問に合わせて送るようにしています。
具体的な処理部分を以下に示します。
- 過去の履歴を取得
- 過去の履歴を含め質問を送信
3. ドキュメントの概要を生成
丸わかり!生成 AI アプリケーション開発パターン
Repository
ハンズオン概要
本ハンズオンでは Google Cloud のマネージドサービスをフル活用し、生成 AI を組み込んだ実際に動作する複数のアプリケーションを構築、デプロイします。このハンズオンだけで生成 AI アプリのトレンドを掴んで頂けるように、最新のユースケースを幅広くカバーします。生成 AI を実際のアプリケーションに組み込む場合のプラクティスについて興味がある方、Google Cloud + 生成 AI でどのようなことができるのかを網羅的に体験したい方におすすめです。
以下が今回のハンズオンで利用する主要なサービスです。
Cloud Run
Dockerfile、ソースコードから 1 コマンドで Cloud Run にデプロイ
プライベートリリース (タグをつけたリリース) などのトラフィック コントロール
複数のサービスを Cloud Run で動かし連携させる
Firebase
認証 (Firebase Authentication)
NoSQL データベース (Firestore)
オブジェクトストレージ (Cloud Storage for Firebase)
Vertex AI
生成 AI の API (Gemini 1.5 Flash)
RAG 機能を司る API 群 (RAG Engine)
今回は以下の 2 つのアプリケーションを構築していくことで、Google Cloud を使った生成 AI のアプリケーション組み込みを学びます。
UI、または UI に関わるフロントエンド機能を提供するアプリケーション (AI organizer)
生成 AI 機能を担当するバックエンドアプリケーション (GenAI backend)