Share
Embed
DiscordにおけるキャラクターIPを活用したUGCコンテンツ生成サービスの ラピッドプロトタイピング ~国際ハッカソンでの事例研究
DiscordにおけるキャラクターIPを活用したUGCコンテンツ生成サービスの ラピッドプロトタイピング ~国際ハッカソンでの事例研究
情報処理学会コンピュータグラフィックスとビジュアル情報学研究会 (CGVI)
第194回研究発表会
https://www.ipsj.or.jp/kenkyukai/event/cg194.html
論文
https://ipsj.ixsq.nii.ac.jp/ej/index.php?active_action=repository_view_main_item_detail&page_id=13&block_id=8&item_id=235075&item_no=1
related videos
https://www.youtube.com/watch?v=HmbeqC7ZYfg
https://www.youtube.com/watch?v=8VBiSK5lv6s
Akihiko SHIRAI - 白井暁彦
June 29, 2024
Transcript
41 slides
-
はじめに 本研究報告は、オープンソースの画像生成AI「Stable Diffusion」、クラウドプラットフォーム「Google Cloud Platform」(GCP)およびコミュ ニケーションサービスソフトウェア「Discord」を使用してユーザー生成コンテンツ(User Generated Contents; UGC)を生み出すサービスの 開発について、国際ハッカソン
を通じて学生がプロジェクトベースラーニング(Project-Based Learning; PBL)を行った事例研究である。 ハッカソンを通じたPBLの成果に関する論文は数多く存在するが、学習者および主体者である学生による報告は少ない。また、学生がプロ フェッショナルな社会人エンジニアとチームを組み、プロジェクトマネジメントを担当したケースも希少 である。特に、母語を英語としない学 生がプロジェクトマネジメントや発表を担当する場合の負荷や成果、その後のサービス運用を想定した技術的改善点についての報告は非常 に価値が高いと考えられる。 本研究のプロジェクトマネージャーを務めた主著者は、日本在住の大学 1年生であり、VTuberやアニメ、漫画などのコンテンツに触れる情報 メディア系の学生の視点からキャラクターIPコンテンツへの貢献を目指している。特に、表現としての画像生成AIや若者ならではの文化であ るミーム、エモート、スタンプ、キャラクターといったネット文化をUGC化するサービスの設計およびUX/UIを含めた設計をプロジェクトマネー ジャー、発表者として兼務した点が本研究の独自性と魅力である。 本研究の成果は、読者に対して以下のような貢献をもたらす。まず、画像生成AIとクラウドプラットフォームを活用した実践的なUGCサービス の開発事例を示すことで、技術的な応用方法や新たな可能性についての理解を深める。また、学生と社会人エンジニアの協力によるプロ ジェクトマネジメントの成功事例として、教育と実践の融合の重要性を強調し、将来の教育プログラムの参考となる。さらに、非英語圏の学生 による国際的なプロジェクトマネジメントの挑戦と成果についての具体的な知見を提供することで、多様な背景を持つ学生の成長と学習環境 の向上に寄与することを目指している。 最後に、Proof of Concept(PoC)として開発したこのサービスを実際に運用する際の問題点を明確に示し、その解決策や改良の方向 性についても言及することで、今後の実用化に向けた課題解決の手がかりを提供する。 -
関連研究: 教育におけるハッカソンの利点と研究事例 [1] Oyetadeらは、コースレベルの学習⽬標を達成するために授業でのハッカソンを実施し、系統的⽂献 レビューを通じて、PRISMA (Preferred Reporting Items for Systematic
Reviews and Meta-Analyses) の記述基準を⽤いて、教育におけるハッカソンの利点をより深く報告している Oyetade, K., Zuva, T. and Harmse, A.: Educational benefits of hackathon: A systematic literature review, World, Journal on Educational Technology: Current Issues, Vol. 14, No. 6, pp. 1668‒1684 (online), https://doi.org/10.18844/wjet.v14i6.7131 (2022). [2] Miličević は、教育アプローチとしてのハッカソンのコンセプトと、学⽣の知識とスキルの開発におけ るその役割の分析を⾏っている。ブロックチェーン‧ハッカソンを通して、参加者の視点、期待、経験、 全体的な印象を調査し、⻑期的な成果をもたらすハッカソンの可能性に対する参加者の認識と、教育 フォーマットとしてのハッカソンの影響に重点をおいて報告している Milicevic, A., Despotovic-Zrakic, M., Stojanovic, D., Suvajzic, M. and Labus, A.: Academic performance indicators for the hackathon learning approach ‒ The case of the blockchain hackathon, Journal of Innovation Knowledge, Vol. 9, No. 3, p. 100501 (online), DOI:https://doi.org/10.1016/j.jik.2024.100501 (2024). -
画像生成AI時代のUGC・ミームと若者文化 絵文字(emoji)は1999年に株式会社NTTドコモのiモードの開 発で誕生した。開発企画者である栗田穣崇氏が監修し、視覚 的で円滑なコミュニケーションを目指してデザインされた。絵文 字は瞬く間に人気を集め、2009年にUnicodeに組み込まれ、 2012年にはスマートフォンで使用可能となり、世界中に普及し た。 現在ではニューヨーク現代美術館(MoMA)に展示されており、 またカリフォルニア州 Computer
History Museum (CHM、コ ンピュータ歴史博物館:コンピュータの歴史の主要なマイルス トーンに関する展示を行っている) では、シンボル展示として、 グローバルコミュニティの多様性を反映する絵文字の進化が、 情熱的で献身的な人々の歩みとして展示されている -
Stable Diffusion : It’s beautiful but… Image Generative AI will
be more general -
Interface - Discord Discord does not have big stamp (emote)
market We can make new kawaii market! -
Kawaii Culture × Super Deform Stable Diffusion × Discord Stamps
= new kawaii market! -
国際ハッカソンを通したプロトタイピング Builders Weekend 本プロジェクト「SDSD」は、2024年3月 29~31日に東京・渋谷で開催された国際 ハッカソン「Builders Weekend」 (https://www.buildersweekend.co/ )にお いて3日間(48時間)を通して開発された
ハッカソンプロジェクト。 参加チームは18チーム、70名。主要言語 は英語で、世界各国から多様なキャリアを 持つ人々が参加した。 -
Builders Weekend 2024での筆者らのチーム 本報告におけるメンバー構成と 担当パート ・[K]PjM/PdMとアート ・[L]タイポグラフィエンジン Python実装 高等専門学校生 ・[R]
LLMとPython実装 プロンプトエンジニア ・[D]クラウドアーキテクト エンジニア ・[A]クラウド/全体のアーキテクト -
書籍 「画像生成AI Stable Diffusionスタートガイド」 本プロジェクトのチーム は本書籍の編集チームで インターンとして 執筆やQAに参加している ★Timeline 2024年3⽉13⽇完成
2024年3⽉29⽇発刊 2024年3⽉29-31⽇ Builders Weekend -
Discord kawaii emote maker Discord Bot (GCP) Prompt & meme
(long hair girl,smiling) (“Wow!”) ComfyUI&A1111 (GCP) Typography Engine &AICU copyright Remove Background (post process) compose image & text kawaii stamp! Stability AI Platform API -
処理フローとAPIs APIサーバー構築: FastAPIフレームワークを⽤いてPythonでAPIサーバーを構築し、リクエストを受け付ける 英訳処理:受け取ったミーム⽂字列をOpenAI社のGPT-4 APIを⽤いて短い英語のミームに翻訳 タイポグラフィ⽣成: ⽣成された⽇本語および英語の⽂字列をタイポグラフィ‧エンジンを⽤いて画像化する 画像⽣成:画像⽣成サーバー上に構築した画像⽣成APIを呼び出し、スタンプ⽤の画像を⽣成 合成処理: ⽣成された画像と、⽇本語および英語のタイポグラフィを合成し、レスポンスとして出⼒
‧画像⽣成プロセスをAPI化し処理を分離することで、GPUが不要な処理をAPIサーバーに担当 させ、ランニングコストの削減と処理を効果的に分散させ、全体的なシステム効率とスルー プットを向上させている。 -
Stable Diffusion サーバーと GCP を用いた画像生成 ・画像生成APIサーバーを構築するためにGoogle Cloud Platform(GCP)のマーケットプレイスで提供 されている 「Deep
Learning VM」インスタンスを利用。 ・GPUマシンタイプとしてTesla T4を1台搭載し、仮想マシンを構築した。 ・構築された仮想マシン(VM)には、Stable Diffusionを活用するためのオープンソースソフトウェア 「A1111/stable-diffusion-webui」を使用。 ・画像生成モデル「Counterfeit-V3.9」 ・LoRAモデル(Low-Rank Adaptation、追加学習モデル)「White BG SD ver2」を導入した。 ・A1111をAPIモードでシステムを起動し、リクエストを受けると生成された画像を返却する。 (開発ではWebUIを使用してAPIリクエストを探究していく) -
UX維持のため: LoRAを使った最適化 今回の SDSDで画像を生成する際に組み込んだLoRAは、UXを維持するのため、 「ユーザのリクエストから数十秒以内で出力結果を返す」という挑戦を(48時間の開発時間で)行った。 配布されている画像生成モデルを用いて生成した画像を学習させ、 2頭身(chibi)の理想の絵柄のイラスト風画像を生成するように制作した。 ⭐最初の開発プロセスでは(SD1.5ではなく)SDXLモデルである「Animagine XL 3.0」を用いてミニキャラ(chibi)を生成実験し
ている。 ・このモデルは豊かな表情と破綻の無い高品質な画像を生成することが可能だが、 SD1.5モデルと比較して高画質、高解像度であるが、大容量のVRAMが必要。 ・かつ生成速度が数倍遅い。 ソリューションとして Animagine XL 3.0で生成した画像をSD1.5モデルである「AnyLoRA baked VAE fp16」を用いて学習させ、 SD1.5モデル用のLoRAを生成し最適化を試みた。 最終的に AnyLoRA baked VAE fp16モデルと、この独自LoRAを用いて画像を生成している。 -
タイポグラフィエンジン 生成した画像に、タイポグラフィエンジンを用いて任意の文字列を合成する。 タイポグラフィエンジンをPythonの画像処理ライブラリ 「Python Imaging LibraryPillow(PIL)」の Image, ImageDraw, ImageFont を用いて開発。
①ユーザーによって文字列が送信されると、画像生成と平行してタイポグラフィエンジンに文字 列送信。 ②文字列は設定したフォント「Mochiy Pop」でレンダリングされ、白の縁取り装飾が施される。 ③文字列の長さによってレイアウトが変わり、短い文字列なら文字は大きく、長い文字列は画 像に収まるように横幅が調節され、文字が小さく表示される。 また日本語が4文字入力された場合は画像の4隅に表示される。 これによって柔軟な入力を画像化することに成功した。 -
LLMを用いたミームの翻訳 ユーザーによって入力された文字列はLLMを 用いて英語に翻訳され、日本語のバージョン とともに出力される。 これはミーム的な表現に特化しており、「ふー ん」は「HMM…」、「草」は「lol」といった表現に 翻訳される。 Chat GPT3.5 Turbo-0125の
Function Callingを用いて以下のようにオノマトペの翻 訳としてミーム翻訳を実装している。 ⭐プロンプトエンジニア[R]を中心に実装され ており特徴的なコードになっている。 def onomatopee(word: str): json_format = '{"eng": "GASP"}' prompt = f''' 以下の#⽇本語を短いワードで漫画⾵の onomatopeeとして英語に翻訳してください また、以下のjson形式で出⼒してください。 # (sample)⽇本語 "ガーン" # (sample)json出⼒形式 {json_format} # ⽇本語 "{word}" # json出⼒形式 ''' response = client.chat.completions.create( model="gpt-3.5-turbo-0125", response_format={"type": "json_object"}, messages=[ {"role": "system", "content": prompt}, {"role": "user", "content": word} ] ) return response.choices[0].message.content -
My Team “SDSD” project by AICU Inc. Akihiko Kotone Remio
Lucas Typography rendering Pythonist LLM coder CEO R&D Architect Cloud Eng PdM/PjM Stable Diffusion Art Lead D̷ELL Cloud Architect Tech Lead -
エンジニア[D]の視点:本システムの課題と改善点 本システムは、プロトタイプモデルとして稼働させることを目的に構築された。そのため、長期的な運用は想定してお らず、運用フェーズに移行するにあたり、いくつかの問題点が確認された。 ・負荷分散の考慮:現在の構成では、IaaSベースのAPIサーバーと画像生成サーバーを1台ずつ設置している。同時 に複数のリクエストが発生した場合、レスポンスの遅延やシステムの停止が想定される。そのため、APIサーバーと 画像生成サーバーを冗長化する必要がある。 ・スケーラビリティの確保:リクエストが増加した際に対応できるよう、サーバーを冗長化する必要がある。しかし、常 時複数台のインスタンスを起動するとコストが増大するため、リクエスト数に応じた適切なスケーリングが求められ る。今回の構築はIaaSベースであったが、運用を見据える場合、PaaSやSaaSの採用も検討すべきである。 ・死活監視の問題:現在のシステム構成では、サーバーが停止しても検知できない。この問題は、PaaSやSaaSを利
用しても発生しうる課題であり、サービスとしての運用を開始する際に致命的な問題となる。そのため、サーバーの 死活監視サービスを利用し、プロセスの状態を確認し、自動復旧する仕組みを組み込むことで、安定したサービスの 運用を目指すべきである。 今後は、これらの改善点を取り入れることで、堅牢なシステム基盤を構築し、安定したサービスの提供を目指す。 -
レイヤー合成と漫画への応用 最後に、各素材はPythonの画像処理ライブラリPython Imaging LibraryPillow(PIL)によって合成される。アスペクト⽐を維持しながら、指定のサ イズに収まるように Lanczos 法を使ってリサイズする。 【漫画への応⽤も可能】 このプロトタイプでは画像と⽂字のみの合成となるが、 筆者らの過去の事例「Manga
Generator」では 7レイヤーほどの合成を⾏うことで 漫画のコマを⽣成できるため、 応⽤可能性が⾼い実装となっている Manga generator: immersive posing role playing game in manga world (VRIC2013) https://doi.org/10.1145/2466816.2466845 -
おわりに 本研究報告は、国際ハッカソン「Builders Weekend」において48時間という短期間で開発し た、Discord上でキャラクターIPを活⽤したUGCコンテンツ⽣成サービスのプロトタイプについ て詳述した。本プロジェクトの成功は、画像⽣成AI「Stable Diffusion 1.5」と独⾃の追加学習モ デル(LoRA)、そしてタイポグラフィエンジンを組み合わせることで、ユーザーが⼿軽にスタ ンプ⽤画像を⽣成できるシステムを実現した点にある。 本研究を通じて、DiscordというプラットフォームにおいてキャラクターIPを⽤いた新しい形の
コンテンツ⽣成の可能性を⽰した。また、ハッカソンという限られた時間とリソースの中で、 チームの協⼒と迅速な開発がもたらす成果を体験することができた。特に、学⽣と企業の専⾨家 が協⼒して実現したプロジェクトは、教育と実践が融合した成功例として評価されるべきであ る。 今後の展望として、本システムの改良と拡張を進めることで、より多くのキャラクターIPやカス タマイズオプションに対応し、ユーザーがさらに多様なコンテンツを⽣成できるようにするこ とが期待される。また、このプロジェクトを通じて得られた知⾒は、他のプラットフォームや サービスにおいても応⽤可能であり、キャラクターIPを活⽤したUGCコンテンツ⽣成の新たな ⽅向性を⽰すものとなるだろう。 p.s. 「SDSD」第2期開発を予定しています。 ここまでの資料は https://sdsd.aicu.ai