はじめに

DX開発事業部の小山です!
本記事では、オープンソースとして公開しているViGenAiRというソリューションおよびデプロイ手順についてご紹介します。

ViGenAiR とは

ViGenAiR は、GoogleがGoogle Marketing SolutionsというGitHub上の組織配下に公開したオープンソースのAIソリューションです。
生成AI(Gemini)を利用して、元となる一本の動画広告からAIが自動でシーンを抽出して短く編集したり、横長の動画を縦長の形式に切り抜く等の作業を実施してくれるソリューションとなっています。

前提

Google Cloud

  • 有効なGoogle Cloud組織とプロジェクトが存在すること。
  • 作業を行うアカウントに、以下のIAMロールが付与されていること。
    • Cloud Functions 開発者
    • Project IAM 開発者
    • Service Usage ユーザー
    • Storage オブジェクト ユーザー
    • Vertex AI ユーザー
    • サービス アカウント ユーザー
    • ストレージ管理者
    • 編集者

Google Apps Script

  • Google Apps Script APIが有効になっていること

デプロイ実施

では、早速デプロイしていきましょう。
まずはGitHub上の「ViGenAiR」のプロジェクトにアクセスし、READMEを確認します。

下にスクロールしていくと「Get Started」の部分に、「Run on Google Cloud」という項目があるため、これを押下します。

すると、Cloud Shell上にリポジトリのクローンを作ろうとします。
しばらく待つとクローンが完了してデプロイ準備が完了します。

デプロイ前にlsコマンドを実施して、自分がクローンしたリポジトリのディレクトリ配下にいるか確認。
その後、以下のコマンドでデプロイを開始します。

npm start

いくつか質問されるので、回答していきます(質問文は一部省略しております)

Enter your GCP Project ID : "ViGenAiRをデプロイしたいプロジェクトのID"
Would you like to deploy the `vigenair` service on Cloud Run / Cloud Functions? : Yes
Enter a GCP region for the `vigenair` service to run in : "ViGenAiR用のCloud Run / Cloud Functionsをデプロイしたいリージョン"
Enter a GCS location to store videos in : "ViGenAiR用のCloud Storageをデプロイしたいリージョン"
Would you like to deploy the UI? : Yes
Are you a Google Workspace user and would like to deploy the application for all users in your domain? : Yes
Enter a GCP region to access Vertex AI generative models. Refer to https://cloud.google.com/vertex-ai/generative-ai/docs/learn/locations#available-regions for available regions : "ViGenAiRで使用するVertex AIのリージョン"
You are already authenticated with gcloud when running inside the Cloud Shell and so do not need to run this command. Do you wish to proceed anyway? : Y

これらに答えていけば、認証用のURLが現れます。

URLを開いて、認証を通すと文字列が発行されます。
Cloud Shellのターミナル画面に戻って、コピーした文字列をペーストします。

すると、再度ターミナル上で質問がきます。
他人に認証情報を見せたくないのでここはnを入力します。
(たまにエラーが出ますが、動作自体に影響はありません)

If you decide to proceed anyway, your user credentials may be visible to others with access to this virtual machine. Are you sure you want to authenticate with your personal account? : n

次はclaspの認証が求められるので、先ほどと同様に手続きを進めつつ
該当部分の文字列をコピーして、別タブにペーストします。

認証を進めるとエラー画面が出ます。
手続きを間違えたわけではないので安心してください、正常な挙動です。
この時、URLがlocalhostから始まっていると思われるので、そちらのURLをコピーします。

Cloud Shellのターミナル画面に戻って、先ほどコピーしたURLをペーストします。

するとまた質問がきます。
データ利用についての質問のようなので、Nを選択します。

Would you like to share pseudonymous usage data about this project with the Angular Team at Google under Google's Privacy Policy at https://policies.google.com/privacy. For more details and how to change this setting, see https://angular.io/analytics. : N

8-10分くらい待つとデプロイが完了した旨のメッセージが出ます。
これにてデプロイ完了です!

UIにアクセスする

デプロイが無事完了しました!
ですが、まだ作業自体は残っています。
最後にUIにアクセスして、実際にデプロイできたかどうかを確認していきます。

今回、UIはGoogle Apps Scriptにてホスティングしているため以下のURLからGoogle Apps Scriptの画面に遷移します。
「https://script.google.com/home/my」にアクセスして、自分のプロジェクトに「ViGenAiR」の項目があることを確認します。

「ViGenAiR」を押下し、その先の画面にある「デプロイ」を押下します。

「デプロイを管理」を押下します。

管理画面の中の「ウェブアプリ」の欄にあるURLをコピーします。

ウェブアプリのURLをブラウザにペーストします。
すると、許可していいのか??と問われるので、「REVIEW PERMISSIONS」を押下して許可していきます。

ついにUIを確認できました!
無事にデプロイできていますね。

おわりに

以上でデプロイ作業は完了となります。
ViGenAiRはAIによる動画編集の効率化を提供しています。
当記事をご覧になった方々が、「この記事は参考になった」と思っていただくことがあれば望外の喜びであります。
最後までお読みいただきありがとうございました!