ラーニングラボに参加して Vertex AI に入門してきました!
今後の学習の足がかりとなる素晴らしいセッションだったので、レポートしたいと思います。
セッション概要
Vertex AI のプロンプト デザイン入門
Vertex AI のプロンプト デザインを使用してソリューションをスマートに構築する方法を学びます。 Google の Gemini AI を搭載した生成 AI について学びながら、Google Cloud スキルバッジの取得を目指して取り組みましょう。セッションは、簡単なプレゼンテーションとラボの実践演習で構成され、指定のラボを 4 つ完了するとスキルバッジが獲得できます。
セッションの構成としては、Vertex AI やプロンプト設計についての説明があった後に、ハンズオン形式で実際に Vertex AI を使ってみるという流れでした。
Vertex AI の概要
はじめに Vertex AI の利用シーンであったり、提供されている基盤モデルについて説明がありました。
ユーザーのスキルレベルに応じて生成AIをカスタマイズする手段が提供されており、実際の業務ではビジネス領域に対してどのようにチューニングしていくかの判断力と技術力が求められそうです。
さまざまなユースケースに応じてファインチューニングされた基盤モデルも多数用意されており、幅広い用途に対して手軽に活用できる点が魅力的ですね。
生成AIモデルのエンタープライズ利用についても、ユーザーの同意なしに入力値が学習に使われないことであったり、安全性設定を使用した出力値のセイフティチェックがあるなどの利点も紹介されていました。
続くLLM(大規模言語モデル)についての説明では、デコーディングの概略とその調整方法などについて解説がありました。
LLM のレスポンス生成の振る舞いを調整するパラメーター値として、Temperature, Top-k, Top-p が紹介され、ハンズオンでは実際にパラメーターを調整することで生成される結果に違いが生まれることも確認できました。
LLM から望ましい結果を得るためのプロンプトを設計するためのテクニックについてもいくつか紹介がありました。
特に例を提示することの重要性が強調されており、例を示すことでより解像度の高い結果に繋がるとのことです。
例を提示する方法としては具体的に、One-shot や Few-shot プロンプティングなどの手法について解説していただきました。他にも、Chain-of-thought や One-shot と Chain-of-thought を組み合わせる手法、Role Prompting なども紹介されていました。
個人的に面白いなと感じたのが、深呼吸して(Take a deep breath)と頭につけると、結果が良くなったという事例です。AI に対してエモーショナルな表現を使って結果が改善されるというのは興味深いですね。
LLM を使う際に意識すると良いポイントも紹介され、特にひとつ目に挙げられている「使う目的」は常に意識したいなと思いました。生成AIも問題解決に使える手段の一つであるということは頭に入れて、適材適所で使っていきたいです。
ハンズオン
講義の後は Google Cloud Skills Boost のラボを題材に、講師の方の説明を受けながらハンズオン形式で Vertex AI の利用方法を学習しました。
一つ目のラボでは、JupyterLab 上で Vertex AI SDK を用いたプロンプトを試すことにより、プロンプト設計について学びました。講義パートで説明のあったプロンプトエンジニアリングの手法を試すことで、その目的であったり有用性についての理解が深まりました。また、Notebook 自体の構成であったりコードサンプルも非常に参考になり、このラボだけでも1日遊べそうな雰囲気でした。
続いてのラボは Vertex AI Studio を使った演習でした。マルチモーダルモデルである Gemini を用いて画像を分析したり、構造化モードでプロンプト設計を行ったりしました。非常に優れたUIのおかげでコンソール上で迷うことなく直感的に操作することができ、サクサクと演習を進めることができたのが印象的でした。また、Vertex AI Studio 上でカスタマイズしたプロンプトから SDK コードを生成できるのも便利だと感じました。コンソール上で直感的な操作を活かして試行錯誤を繰り返した後に、SDK コードへと変換することで、API 呼び出しによるアプリケーションへの埋め込みをスムーズに行えそうだなと思いました。
三つ目のラボでは再び JupyterLab に戻り、SDK for Python を使用して、Gemini を API 経由で呼び出して使う方法についてさらに詳しく学びました。レスポンスをストリーミングで受け取る方法であったり、マルチモーダルを活用した画像や動画とテキストを組み合わせたプロンプトを実行する方法を試すことができました。特に動画から登場人物や撮影地点などの情報を抜き出すことができたのは感動しました。
最後のラボは、シナリオに沿ったタスクをこなしていくことで、一連のラボで身につけた知識を活用するというものでした。
感想
改めて、GC のサービスは直感的ですぐに使い始められることが魅力的だと実感しました。
今まで触った GC のサービスはどれも使いやすかったのですが、Vertex AI も例に漏れず認知的負荷が軽く操作に慣れるまでの時間が短くて済むと感じました。今回のラーニングラボ参加をはじめの一歩として Vertex AI を自在に使うことができるように、学習を進めていきたいと思います。