「AI 画伯」を 100 万人に届けた開発者と Google Cloud
佐藤一憲
デベロッパーアドボケイト, Google Cloud
編集部注: この投稿は、開発者のさとさん(@sato_neet)へのインタビューをもとに、Google Cloud デベロッパーアドボケイトの佐藤一憲が執筆したものです。名前が似ていますが、同一人物ではありません。Google Cloud Blog には英語版が掲載されています。
さとさんが開発した AI 画伯。1 日 100 万人が利用。
Firebase、Cloud Run、および Google Colab で開発。さと (@sato_neet) さんが 10 年前に東京の大学を中退したとき、彼はまだ自分がアスペルガー症候群であることを知りませんでした。その後さとさんは看護学校やパン屋さんなどいくつかの道を志したものの、この障害のせいか環境や職場にうまくなじめません。そしていま彼は、全く異なる道を歩み始めました。AI への道です。
さとさんは 2 年前から AI の勉強を始めました。大学でプログラミングの基本は勉強していましたが、Python と JavaScript をより深く学び、AI で何か楽しい作品を作りコミュニティでシェアしたかったのです。彼は TensorFlow と Colaboratory を使いディープラーニングを学びました。
「あまり収入が高くないので、TensorFlow と Colab が無償で使えるのは本当に助かりました。お金をかけずに AI を学べる環境が得られました」(さとさん)
AI 画伯の開発
2020 年 3 月、さとさんは AI 画伯 を公開しました。これは彼がひとりで開発を続けてきたサイトで、顔写真をアップロードするとそれに似た絵画風のポートレートを生成します。このサイトでは、pix2pix をベースとする機械学習モデルを利用して顔写真のスタイル変換を行っています。Pix2pix は cGAN と呼ばれるモデルの一種で、指定された画像を条件としてリアルな画像を生成します(TensorFlow の pix2pix サンプルを使うと実際に試せます)。
AI 画伯では、アップロードされた顔写真を条件として絵画風のポートレートを生成するような pix2pix ベースのモデルを利用しています。
さとさんが AI 画伯を Twitter 上で公開すると、まず日本で人気が出て、すぐにアメリカ、そして世界中からアクセスされるようになりました。いま AI 画伯は毎日 100 万人が世界中からアクセスしています(4月初旬の時点)。また、さとさんは pixel-me という別の面白いサイトも公開しています。これは同じ pix2pix 技術に異なる学習データを与え、8 ビット風のポートレートを生成するようにしたものです。
pixel-me で生成された 8 ビット風のポートレート
10 日間でゼロから 100 万ユーザーまで増加
AI 画伯と pixel-me は、Firebase、Cloud Run、および Colab を利用して開発されました。さとさんは GCPの無償枠を活用することで、ほとんどコストをかけずに 2 つのサービスを構築できました。
さとさんは「無償枠に加えて 300 ドルの無料クレジットも Google Cloud を学ぶ上で役立ちました」と言います。「どこまでが無償でどこからが有償かが分かりやすい設計になっていて、安心して使えました」
AI 画伯は、さとさん一人で、かつほとんどコストをかけずに開発されましたが、サーバレス環境である Cloud Run の自動スケーリング機能により高レベルのスケーラビリティを実現できています。Pix2pix ベースの機械学習モデルをコンテナ化し、Cloud Run 上で動作させているため、サーバ インスタンスの起動や停止を手作業で管理する必要はありません。ユーザ リクエストの増加に応じて個々のインスタンスが数秒で起動します。そのため、事前に設定した予算を守りつつ、急激な負荷上昇時には数 10〜数 100 個のインスタンスが瞬時に立ち上がります。
このスケーラビリティのおかげで、 10 日間のうちにユーザ数がゼロから 100 万人まで増えるという爆発的なアクセス増加に際しても、さとさんがシステム アーキテクチャを変える必要は一切ありませんでした。現在、AI 画伯の Cloud Run バックエンドでは最大で 200 のコンテナが稼働しています。
「Cloud Run や Firebase などのサーバレス環境のスケーラビリティの高さに驚きました。世界中の 100 万人を超える人からアクセスが集中しても、すばやいレスポンスをキープしています」(さとさん)
誰もが使えるスケーラブル AI 環境
AI 画伯の現在の運用コストは、1 日およそ 20 ドルです。しかし、さとさんにはこのサイトをビジネスに変えていく気はありません。
さとさんは次のように説明します。「サイトを拡張してビジネスを立ち上げて……といった方向には興味はありません。自分が面白いと思うコンテンツを開発したいだけなんです。Google Cloud のサーバレス環境を使えば、初期コストやスケーラビリティ、運用基盤のことにあまり悩まずに面白いアイディアを簡単に実装できます。そこが Google Cloud の好きなところです」
「先週は、本当にたくさんの応援とフィードバックを世界中のユーザからもらいました。私の人生でいちばんやりがいを感じられた一週間でした。AI 画伯を応援してくれるすべてのユーザに感謝したいです」
Google Cloud のスケーラブルな AI 環境は、企業のビジネスの拡張性を支えるだけではありません。さとさんの事例にように、個人の創造性や人とつながる能力を拡張する力にもなります。ちょっと試してみたいアイディアや新たに学びたい技術があれば、Google Cloud Platform の無料枠を活用してみてください。毎日が変わるきっかけになるかもしれません。