Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2024/12/05 AITuber本著者によるAIキャラクター入門 - AITuberの基礎...
Search
Sald ra
December 05, 2024
Technology
2
890
2024/12/05 AITuber本著者によるAIキャラクター入門 - AITuberの基礎からソフトウェア設計、失敗談まで
2024/12/05 にStudyCoさんにて行われた「AITuber本著者によるAIキャラクター入門」の資料
https://studyco.connpass.com/event/337404/
Sald ra
December 05, 2024
Tweet
Share
More Decks by Sald ra
See All by Sald ra
2023/07/26 - AITuberコミュニティの 開放性と閉鎖性
sr2mg4
1
73
AIキャラについての諸考察
sr2mg4
1
360
2023 AIAD忘年会LT 資料
sr2mg4
0
1.1k
2023/09/23 「AIキャラクターの言動に深みを持たせる」
sr2mg4
2
1.1k
AIキャラクター開発の側面から見る 新機能実装・検証の高速化の必要性
sr2mg4
1
930
ローカルAITuber勢の現在地と未来
sr2mg4
0
500
Other Decks in Technology
See All in Technology
Logik: A Free and Open-source FPGA Toolchain
omasanori
0
240
[Oracle TechNight#94] Oracle AI World 2025 Oracle Database関連フィードバック
oracle4engineer
PRO
0
190
Data & AIの未来とLakeHouse
ishikawa_satoru
0
600
LLM APIを2年間本番運用して苦労した話
ivry_presentationmaterials
14
10k
The Twin Mandate of Observability
charity
1
860
kotlin-lsp の開発開始に触発されて、Emacs で Kotlin 開発に挑戦した記録 / kotlin‑lsp as a Catalyst: My Journey to Kotlin Development in Emacs
nabeo
2
380
戦えるAIエージェントの作り方
iwiwi
24
12k
[JDDStudy #10] 社内Agent勉強会の取り組み紹介
yp_genzitsu
1
100
技術の総合格闘技!?AIインフラの現在と未来。
ebiken
PRO
0
190
AWS IAM Identity Centerによる権限設定をグラフ構造で可視化+グラフRAGへの挑戦
ykimi
2
460
SREのキャリアから経営に近づく - Enterprise Risk Managementを基に -
shonansurvivors
1
760
コード1ミリもわからないけど Claude CodeでFigjamプラグインを作った話
abokadotyann
1
120
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Testing 201, or: Great Expectations
jmmastey
46
7.7k
Docker and Python
trallard
46
3.6k
Code Review Best Practice
trishagee
72
19k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
116
20k
What's in a price? How to price your products and services
michaelherold
246
12k
Practical Orchestrator
shlominoach
190
11k
Building Applications with DynamoDB
mza
96
6.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
960
The Cult of Friendly URLs
andyhume
79
6.7k
Transcript
AIキャラクター入門 AITuberの基礎からソフトウェア設計、失敗談まで
自己紹介
AITuberとは
AITuberとは AITuberとは「ネット活動を行うAIキャラ」です • イメージ的には「AI」x「VTuber」に近い • 2023年初頭のOpenAIのAPI出現以降に活発になったジャンル
みた方が早い
基本的な技術 色々なことはできるとして、最低要件から考えてみる 最低要件は「YouTubeと紐づけてコメントに反応し、発話する」になるはず • コメントつなぎこみ • LLMつなぎこみ • 音声合成・再生 •
OBS連携 ここまでを簡易的に実装できるのがAITuberプロンプト本
どう実装してるか 見てみよう
AITuber本でのアーキテクチャ
AITuber本でのアーキテクチャ • エントリー・ポイントがAITuberSystem ◦ コメント取得から発話までが1ターン ◦ 逐次処理 • 発話内容作成がtalker •
VoiceMakerでt2sのwavに変換 • play_soundで仮想マイク再生 • OBSで発話内容を表示
AITuber本でのアーキテクチャ • usecase ◦ talker • interface ◦ voice_maker •
Frameworks & Drivers ◦ OBSAdapter ◦ play_sound ◦ OpenAIAdapter ◦ YouTubeCommentAdapter
どこが問題だろう?
問題点 • interfaceとFrameworks & Driversがごっちゃ • OpenAIの責務をきちんと分けよう ◦ 音声合成とChatを同じクラスで行わない ◦
OpenAI APIでできることが多いのが悪い • AITuberSystemが神クラスになってる ◦ outputはusecaseに紐づいているべきでは ◦ Commentが必要なのはtalkerであり、Systemではない とはいえガッツリ層を分ける必要があるかは疑問 非同期処理にするかは要考慮
どうするのが正解なんだろう • 結論から言うと「試行錯誤するしかない」 • 先ほどのものを変更してみた ◦ outputをまとめて、各usecaseに対応 ◦ OpenAIのAdapter分離 ◦
実際のつなぎこみはClientに任せる • ありえる未来を追加要件にしてみる ◦ singerというusecaseを追加 ▪ こいつはCommentに非依存 設計をしたい人にとってはAITuberは絶好の教材かも
とはいえどこかで 妥協は必要
AITuberの壁の話
AITuberの壁 • 第一の壁「そもそもどうやって作れば良いかわからない」 ◦ 割と解決に向かっている • 第二の壁「単純なQAだけだとつまらない」 ◦ アイデアをどうにかして出し続けるしかない。いつか話すが省略 •
第三の壁「普通に運用コスト高い」 ◦ 一番やばい壁! 第三の壁について話します
なぜ僕は個人で AITuberを作らなくなったか
運用・メンテコストの増大
個人開発末期状態(2023/06) • 疎結合にはなってる ◦ 各サービスの起動コスト上昇 • Unityにしたことでの開発工数上昇 ◦ URPなんもわからん •
独自路線すぎた合成音声 ◦ SBV2なかったからVITS+RVC • GPU負荷高すぎ • ローカルはプロンプト効かない • context-sizeが8kなかった(解決済) 参考:AITuberさくら構築図。2024にllm-jp-3に換装だけした
大事なこと • 「気軽に配信を始められる」は絶対に担保しておくこと • デファクトスタンダードに乗っておけ!絶対後悔する(オーパーツは作れる) ◦ 気軽にやるならVOICEVOX。今だったらAivisSpeechもにじボイスもある ◦ 「プロンプトさえ変えれば同じモデルで色々なことができる」は偉大 ▪
なるべくPromptingで解決しておけ、ローカルは浪漫だか茨の道 ▪ PromptingでできることはAITuberプロンプト本に書いたはず • 自分の力量をきちんと把握しておくこと ◦ LLMでなんでもできるようになった、ただし時間は有限である ◦ その拘りは他の工数を削ってでもやりたいことかは常に考える ▪ (UnityのURPまで僕はやるべきだっただろうか...)
以上!