はじめに
この記事は、むちゃぶりにも応える開発技術があるって?!〜3つのテーマで記事を募集〜 by V-CUBE Advent Calendar 2023 の24日目です。
V-CUBEさんはTencent Cloudの日本代理店で、Tencent Cloudに関わるカレンダーです。
近年、個人でも使えるライブ配信サービスは近年急激に増えてきました。
演者として、顔出しのYouTuberや、アバターを演じるVtuberのようなものがあり賑わっています。しかし、そういったサービスを自身で作成するとなると、どうでしょうか。
②あの有名なWebサービスをTencent Cloud使って作るならどんなアーキテクチャ?
③あの時Tencent Cloudがあったら苦労しなかった?おじさんエンジニアの昔話
お題の観点で、ここでは、TencentCloudがあったら、こんなTuberを作れるのではということを考えることにしました。そう、23年に大暴れしているAI様の登場です。エンジニアのユートピアである、AI様にご活躍していただき、全てがオートメーションで進行してくれるようなAITuberを構築できるのではないでしょうか。
AI Live配信とは
AI Live配信(AITuber/AI VTuber)という言葉を見聞きしたことはありますでしょうか。
AI YouTuberと言い換えれば、想像つきますでしょうか。ここでは、AIによるYouTuber(リアルタイム配信者)のことをいいます。具体的には、配信中に、ユーザーからのコメントを拾い、回答を考え、文字と音声で応えることを、自動で行います。また、配信に使っているアバター画像もAI(生成AI)で作成した仮想のキャラクターを使っています。
イメージ動画
まずは、動作動画を見てください。
日本語でのやりとりにはなりますが、いかがでしょうか。
応答速度がもっさりしている?、マシンスペックを上げたり、最新コメントを取得するポーリング時間を短くすることで、ある程度改善するとは思います。
システム構成図
AI Live配信を実現する上でのシステム構成について、説明します。
順序は、数値1~9の流れに沿って、処理するイメージとなります。
1.配信
映像をOBS経由でストリーミング動画としてライブ配信します。
2.コメント入力
YoutubeLiveを視聴しているユーザがコメント欄にコメントを入力します。
3.コメント取得
定期的に、YouTubeLiveのコメントが更新されていないか確認します。
4.翻訳前コメント文
ユーザからのコメント文を入力します。
5.翻訳後コメント文
多言語対応を想定し、英語など入ってきても日本語に変換します。
6.解析前コメント文
翻訳後コメント文をAIChatbotへの入力文にします。
7.解析後返信文
AIChatbotが考えた返信文を受け取ります。
8.返信文
配信文字を、テキストを自然な人間の声に似た音声に変換します。
9.返信音声
音声データを受け取ります。
➡1.へ戻る
AI Live配信を構築・動作させる上で、Tencent Cloudがあれば、すべての処理が賄えます。
そして、サービスを動かすことで、AIによるライブ配信が始まります。
以降、実現していくのに、有益なサービスについて紹介します。
Tencent Cloud とは
Tencent(テンセント:本社:中国 広東省深圳市)が提供しているパブリッククラウドサービスプロバイダーです。
コンピューティング、ストレージ、データーベース、セキュリティー、CDN、ネットワークの高速化、ゲーム内マルチメディア、セキュリティーサポートなどの製品を提供しています。さらに、Tencent Cloudはライブブロードキャスト・プラットフォームでライブビデオ放送(LVB)機能など様々なソリューションを提供しています。
Tencent Cloud Lighthouse
次世代のOOTBなCloud Virtual Machine製品であり、軽量アプリケーションを低コストで運用できることをウリにしている製品です。OSは、LinuxやWindowsを選択可能なため、他のクラウドサービスと遜色無いです。
今回は、WindowsOSでの対応を想定しています。
AI Chatbot
チャット実装に関するサービスです。
AI Chatbotを実現す上で、公式から参考となるドキュメントがあります。
チャットのWebhook機能を通じてAIサービス機能をTencentCloudChatに統合し、ユーザーがインテリジェントなカスタマーサービス、クリエイティブアシスタンス、作業アシスタントなどの機能を実装できるAIチャットボットを構築する方法
生成AIとの連携するのもよいですよね。
Tencent Machine Translation
文字の翻訳をしてくれるサービスです。
多言語対応を想定し、特定の言語(例えば日本語)に変換してから、AIのChatbot機能へ渡すことで、脳みそを特定言語にチューニングするわけです。そして、返答前に、再度入力言語に変換すれば、質問者と同じ言語で返すことが可能となります。
現在、相互翻訳は、19言語をサポートしています。海外対応、ばっちりですね。
Text to Speech
テキストを擬人化した音声に変換するサービスです。
自然な人間の声に似た生の音声データを作成してくれます。Neural2、Studio、標準、WaveNetがあり、料金が異なる高品質の音声サービスも選択が可能です。
日本語で選べる声色が11種類もあります。当然、海外対応も、ばっちりですね。
その他のテクノロジー
obs-websocket
Python言語で、OBSを外部から制御する obs-websocket(プラグイン)を導入します。これを導入することにより、WebSocketを用いた通信でOBSの様々な制御が行えるようになります。今回、Live配信の画面は、OBSで作成しており、ユーザからの質問や、AI Tuberの応答を、Python言語を使い、メッセージの書き換えをしています。
YouTube Data API
Python言語で、YouTubeLive配信中のコメントを取得するために、YouTube Data APIを使います。
おわりに
いかがでしたでしょうか。
AI Live配信を、構築するイメージを持っていただけたのではないでしょうか。
色々な機能を追加していき、自身でプロデュースしたものが、知らぬ間に、人気になって、一攫千金になるかも!?という妄想で良い夢見れそうですよね。Tencent Cloudには、様々なサービスを保有しているため、ホビー層でも受け入れやすいのではないでしょうか。
本記事が、皆様の刺激に繋がれば幸いです。
よりよいご意見有りましたらお待ちしております。