広告 Python データサイエンス プログラミング

5days GenAI Intensive Course with Google 2025参加レポート

サンダー
サンダー
2025年3月31日(木)から2025年4月4日(金)の5日間、5-day Gen AI Intensive Course with Googleに参加しました。この記事ではその振り返りと課題について紹介します。

この記事は下記の方におすすめ

  • 5days GenAI Intensive Courseに興味がある方
  • Kaggleに参加されている方
  • 生成AIに興味がある方

 

 

 

はじめに(5days Gen AI Intensive Course with Google 2025を受講して)

Googleの5days GenAI Intensive Course 2o25に参加しました。

5days Gen AI Intensive Course with Googleとは?

開催期間:2025年3月31日(木)から2025年4月4日(金)の5日間

概要:このコースは5日間でプロンプトエンジニアリングからMLOpsまで、Generative AIの幅広い分野を網羅的に学べる貴重な機会でした。

サンプルコードがKaggle Notebookで提供され、毎日YouTubeのライブストリームやPodCastが配信されます。

テキストチャットはDiscordを使って行われました。

Kaggleで実践!5日間の生成AI集中講座 day1からday5まで

まずはGoogle 5days Intensive Courseの概要を説明します。

5days GenAI Intensive Courseの内容

  • Day1:プロンプティング
  • Day2:Document Q&A&RAG、エンベディングと類似スコア、エンベディングの分類
  • Day3:Gemini APIによる関数呼び出し、LangGraphを使ったエージェントの構築
  • Day4:4日目 - カスタムモデルの微調整、グーグル検索のグラウンディング
  • Day5:これまでの振り返り、生成AIのMLOps

Kaggleのサンプルコードが1つまたは2つ毎日送信され、そのコードを実行しながら学習を進めていきます。

YouTubeLiveStreamやPodcastが配信され、それぞの話題についての配信がありました。

以下、Day1からDay5まで簡単に説明します。

 

Day 1: 基盤モデルとプロンプトエンジニアリング

WhitePaperと呼ばれるPDFが配布され、そのPDFには大規模言語モデル (LLM) の進化の歴史と、その基盤となるTransformerアーキテクチャなど背景が書かれています。

このWhitePaper PDFとは別にKaggke Notebookのサンプルコードが配布されます。このNotebookを進めていく形となります。

 

Day1のサンプルコードでは、プロンプトエンジニアリングの重要性やその効果的なテクニック、また各種パラメータ(TemperatureやTop-K、Top-P)が生成結果に与える影響についても説明しています。

プロンプトテクニックとしては、ゼロショット(Zero-shot)プロンプティング、フューショット(Few-shot)プロンプティング、Chain of Thoughtプロンプティングなどが紹介されていました。

プロンプティングメモ

  • ゼロショットプロンプティング:事前知識なしでタスクを依頼。
  • フューショットプロンプティング:いくつか例を示してからタスクを依頼。
  • Chain of Thoughtプロンプティング:答えにいたるまでの思考プロセスも一緒に説明するよう依頼。
Day1:プロンプトの作成と活用に焦点を当て、APIの初期設定から、さまざまなプロンプトのテクニック(ゼロショット、フューショット、Chain of Thoughtなど)まで、段階的に解説しています。

Day 2: 埋め込みとベクトルデータベース

Day2では埋め込み (Embeddings) の概念と、テキストデータを数値ベクトルとして表現する方法が紹介されています。

文章をベクトルデータベース化し、テキストデータを類似度の高い情報を抽出しています。類似度を可視化するため、ヒートマップで類似度を表示するなどもサンプルコードに含まれています。

ベクトル化したテキストの類似度をヒートマップで描画

また、Kerasでニュース記事をカテゴリ分類するコードも提供されています。

AG (Retrieval-Augmented Generation) の基本的な考え方に触れ、後の推薦システム構築への基礎を築きました。

Day2のサンプルコード

  • RAGとのドキュメントQ&A
  • エンベディングと類似スコア
  • Kerasでエンベディング分類
Day2:Gemini APIによって生成された埋め込みを利用して、ニュース記事をカテゴリに分類するモデルをKerasで構築する方法を解説

Day 3: 生成AIエージェント

Day3では、生成AIエージェントの概念と、自律的にタスクを実行するAIシステムの構築について紹介されています。

LangGraphなどのツールを用いて、複数のLLMや外部ツールを連携させる方法が紹介されています。

関数呼び出し (Function Calling) の機能を利用することで、LLMが外部APIやデータベースと連携し、より複雑なタスクを実行できることを理解しました。

この辺りから難しくなり、サンプルコードを実行するだけでは理解するのが難しくなってきます。理解度がまだまだなので、Day3は継続して学習予定です。

Day3のサンプルコード

  • Gemini APIによる関数呼び出し
  • LangGraphを使ったエージェント構築
Day3:LangGraphとGemini APIを用いてgraphベースのアプリケーションを構築する方法を解説

Day 4: ドメイン固有LLM

Day4では特定のドメインやタスクに特化したLLMの重要性と、その構築手法について学びました。

ファインチューニングの概念と、既存モデルを特定のデータセットで再学習させることで、性能を向上させる方法や、Google Searchと連携することで、モデルが最新情報に基づいて回答を生成するグラウンディングなどのテクニックが紹介されていました。

今後、AIエージェントが主流になっていくなか、こういった特化型LLM構築は必要性が求めらえると考えているので、特化型LLMはMCPなども学んでいきたいと思います。

Day4のサンプルコード

  • カスタムモデルの微調整
  • Google検索のグランディング
Day4:Gemini APIを用いてカスタムモデルを微調整する方法や、GoogleのGemini APIとGoogle検索を連携させる「grounding(接地)」という技術について解説

Day 5: これまでの振り返り、WhitePaperで生成AIのMLOps紹介

Day5はサンプルコードはなく、これまでの振り返りです。

WhitePaperやYouTubeで、MLOps (Machine Learning Operations) の考え方をGenerative AIの分野に応用し、モデルの開発からデプロイ、運用までのライフサイクル全体を効率化する方法を学びました。
Vertex AIのツール群が、Gen AIアプリケーションの構築と運用をどのように支援するかについて概要を把握しました。

 

5 days GenAI Intensive Course with Googleの課題:キャップストーンプロジェクト

キャップストーンプロジェクトでは、5days GenAI Intensive Course with Googleで学んだことから、自由にシステムを構築して提出するという課題でした。

YouTubeでキャップストーンプロジェクトの解説もしてみました

キャップストーンプロジェクトの課題

キャップストーンプロジェクトのテーマは海外のKaggleユーザーからも人気のある日本のマンガ推薦システムを作りました。

全てのマンガからではなく、自分がお気に入りのマンガの中からユーザーの好みに合ったマンガを提案するシステムを作ってみました

テーマ選定の理由

  • 5日間で得た知識(特に埋め込みとRAG)を実践的に活用したいと考えたため。
  • 大規模なベクトルデータベースを構築する時間的制約を考慮し、ローカルのDataFrameで実現可能な範囲でMVP(Minimum Viable Product)を構築することを目指したため。
  • 日本のマンガを広くしてもらいたいため

活用したGenerative AIの機能と実装

埋め込み (Embedding)
ローカルデータフレーム に格納した漫画のタイトルやあらすじなどのテキスト情報を、Gemini API (または類似のモデル) を用いてベクトル化しました。

マンガの情報はAniList APIから情報を取得し、データフレームに格納しています。

また、ユーザーの好きな漫画やキーワードなどの入力に基づいて、同様に埋め込みベクトルを生成することを計画していました。

(課題までにユーザーの入力から埋め込みベクトル生成まで間に合いませんでした)

類似度計算
自分がお気に入りの漫画のあらすじをベクトル化してコサイン類似度 を算出し、類似度の高い漫画を特定しました。【例】Dragon BallとOne Pieceのあらすじは似ているなど。
scikit-learn などのライブラリの利用しています。

推薦生成 (RAG:
類似度計算で上位となった漫画のタイトル、あらすじ、ジャンル などの情報をプロンプトに含め、Gemini API を通じて推薦文を生成する Retrieval-Augmented Generation (RAG) の構成の実装を想定していました。
Few-shot prompting や JSON出力 などのプロンプト設計も検討したっかったですが、ローカルのデータフレーム構築に時間がかかり、プロンプティングの試行錯誤に時間が取れませんでした。

工夫した点と苦労した点

大規模なデータセットを利用する代わりに、AniList APIから情報収集し、ローカルデータフレームで扱いやすいサイズに調整しました。

その流れで、大規模なベクトルデータベース(ChromaDB、FAISS)の代わりに、pandas のデータフレームと scikit-learn の類似度計算を利用することで、軽量な類似度計算を実行しました。

限られたAPI利用: AniList APIは無料で取得できるので、AniList APIから取得したデータを前処理・補完して利用しました。

キャップストーンプロジェクトで使用した技術スタック

  • メモ

    • Python
    • Pandas、NumPy
    • Gemini API
    • scikit-learn (類似度計算)
    • AniList API

5days GenAI Intensive Course with Google 2025を通して得られた成果と今後の展望

Kaggleのローカル環境 でも、埋め込みと類似度計算、そしてRAG の基本的な流れを実装できました。

しかし、5日間で学ぶには非常に多くの知識が必要で(サンプルコードは少ないですが、求められる知識がたくさんあり、その都度調べていた形でした。

また、英語ということで言語として理解するまでがまだ時間がかかり、とくにYouTubeのLiveStreamやPodCastの情報は効率的に得ることができませんでした。

今後の展望として、より大規模なデータセットの利用やStreamlit や Gradio を用いた簡単なUIの構築を試したいと思います。

 

ココがおすすめ

生成AIのプロンプトテクニックから始まり、テキストエンベディング、RAGやエージェントの構築、特定LLMなどかなり幅広い分野の技術がサンプルコード付きで学べたこと

ココに注意

自分自身が英語が苦手なこともあり、リスニングやテキストチャットに苦労したこと

 

学習効率アップ!情報整理に役立ったNotebookLMの活用術

今回、末尾のSpecial Thanksでも紹介している「こっしー」さんに、Notebook LMを教えていただきました。

NotebookLMの概要

NotebookLMの画面

NotebookLMは、ソースとしてPDFファイルやテキストファイル、音声ファイルのアップロードのほか、Googleドライブとの連携やWebサイトのリンクも追加できます。

ソースに追加された資料の中身を情報源として使います。

また、ソースの引用元も提示してくれるので、どの資料から回答したのかファクトチェックにも役立ちます。

NotebookLMはこんな方におすすめ

  • ライターやコンテンツ制作者: 情報収集や記事構成、下書き作成の効率化に。
  • ビジネスパーソン: 会議の議事録、契約書、市場調査レポートなどの内容把握や分析に。
  • 研究者や学生: 論文や参考文献を大量に読み、レポートを作成する際に。

 

5-days Gen AI Intensive Course with Google2025 まとめ

Kaggle Notebook境下 でも、Generative AIの基本的な機能を組み合わせることで、実用的なMVPを作成できることを実感しました。

また、普段はあまり使うことのないAPIも使い、情報収集からプロンプトテクニックまで様々な技術や知識を学ぶことができました。

NotebookLMという便利ツールを知れたことも大きかったです。

今回の経験を通じて、生成AIの可能性と、今後のさらなる学習への意欲が高まりました。今後、同様の課題に取り組む読者に向けて、スモールスタートの重要性や、既存の技術との組み合わせ の有効性などを共有します。

 

Special Thanks

今回の5days Gen AI Intensive Course with Google参加にあたって開催していただいた方々、マナビDXアラムナイで交流してくださった、こっしーさん、マックさん、steelpipeさん、imacocoさん、NGUSさん、kubotaさん、色々情報共有いただきありがとうございました。

慣れないKaggle、慣れない英語、慣れない生成AIで色々大変でしたが、これから生成AIを学んでいく良いキッカケとなりました。

また機会があればぜひ一緒にKaggleに挑戦しましょう!

 







人気の記事

1

    こんな方におすすめ 直流(DC)と交流(AC)の違いについて知りたい 直流(DC)の交流(AC)について、それぞれ特徴を知りたい   電気の流れる向き・電流・電圧が変わるの ...

【オペアンプ】 反転増幅回路の回路図アイキャッチ 2

    オペアンプの反転増幅回路 オペアンプの反転増幅回路は下図のようになります。 反転増幅回路の入力電圧をVi、出力電圧をVoとすると下記の式で表されます。   オペア ...

アノードコモンとカソードコモン 3

  LEDのアノードとカソードについてとその見分け方 「アノードコモン」と「カソードコモン」について説明する前に、LEDのアノードとカソードについて説明します。   LEDは正しい ...

4

という問題が起きているようですね。 アフィリエイトが発生しないというのは死活問題ですね。   原因はどうやら、アンカーリンク内のtarget="_blank"が関係しているようだと。でも正確 ...

旅行やアルバイト等の 紹介にバリューコマースの『MyLinkBox』が超便利!! 5

  MyLinkBoxで商品紹介できる広告主一覧 MyLinkBoxで商品紹介できる広告主一覧は下記の通りです。 カテゴリー 広告主一覧 モール(物販) Yahoo!ショッピング/楽天市場/ ...

miMind使いかたアイキャッチ 6

      私もよく情報を整理するためにマインドマップを作成しています。 何か思いついたときにメモ代わりとして使用する事もあり、常に携帯しているスマホでマインドマップを作 ...

Web(ウェブ)開発の学習にオススメなUdemyコース3選 7

アメリカのシリコンバレー発のオンライン学習サイトで、日本ではベネッセが運営しています。 私自身もWeb開発やPythonなどのコースを購入しています。プログラミングだけでなく、動画編集や写真撮影など様 ...

ブレッドボード の使い方のアイキャッチ 8

  こんな方におすすめ ブレッドボードの使い方を知りたい ブレッドボードの使い方:ブレッドボードとは?ブレッドボードの仕組みについて   ブレッドボードは電子部品の足を差し込むだけ ...

箇条書きタグ自動追加ツール 9

【このツールの目的】 箇条書きタグ(ulタグもしくはolタグ)を自動で追加するツールです。 listタグも自動で追加します。 【箇条書きの種類選択】 数字無し箇条書き(ul) ・箇条書き 数字有り箇条 ...

LED抵抗計算機 10

LED抵抗自動計算機 下図のように、LED1個をつなぐとき、LEDに流したい電流から抵抗値を求める計算機です。   LED抵抗計算機 ↓電源電圧【例】5(V) ↓LEDの電圧降下【例】2(V ...

-Python, データサイエンス, プログラミング
-, , ,