Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
プログラミング初心者がAI Tuberを開発してみた
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
rindguitar
August 20, 2026
Programming
5
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
プログラミング初心者がAI Tuberを開発してみた
VR Chat個人開発集会にて発表したスライドです。
初めての発表、スライドです。
rindguitar
August 20, 2026
More Decks by rindguitar
See All by rindguitar
自作して見えた感情モデルの限界
rindguitar
0
5
Other Decks in Programming
See All in Programming
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
380
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.1k
選挙速報を多くのユーザーへ 届ける Live Activities 設計
hamayokokuririn
0
220
SREの越境 / SRE Collaboration
y0hgi
2
290
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
430
JRuby: Past, Present, and Future
headius
0
220
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
330
setup-vp GitLab対応の裏側
naokihaba
0
150
Verilogで学ぶCPU自作入門.pdf
uyuki234
8
4k
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
260
wkhtmltopdfの次どうするか問題2026
willnet
2
1.8k
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
180
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
540
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
sira's awesome portfolio website redesign presentation
elsirapls
0
440
Done Done
chrislema
187
17k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
600
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Language of Interfaces
destraynor
162
27k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
490
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Designing for humans not robots
tammielis
254
26k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Transcript
プログラミング初心者が AITUBERを開発してみた
自己紹介 Rin(rindguitar) 音楽の専門学校を卒業 現在、飲食店でフリーター生活 2024年11月からプログラミン グを始めた GitHub
今日のテーマ 全くのプログラミング初心者が書籍やネットを参 考にAITuberを開発してみました その過程で、学んだことや感じたことを話しま す
今日話すこと AITuberとは何か? どのようなものを開発したのか? どのようなことで躓き、解決したのか? まとめ
AITUBERとは何か? 簡単に言ってしまえば、「AIによるYoutuber」 LLMを用いることで、現実には存在しない架空の キャラクターによって配信などの活動を行うもの AITuberの事務所『AICAST』 元女子高生AI『りんな』
どのようなものを開発したのか? X(旧Twitter)へのポストの生成と投稿 はてなブログへの記事生成と投稿 Youtubeでの配信中の言動 参考書: 阿部由延さん著 『AITuberを作 ってみたら生成AIがよくわかっ 『AITuberを作ってみたらプロ ンプトエンジニアリングがよく
わかった件』
キャラクターのプロフィールを作 る 今回のプロジェクトの根幹にな るので最初は好き嫌いだけでも 決めておく。 どんな生活を送っているのか、 生活環境などの設定も後々必要 になるので考えておく。 もし思いつかない場合はLLM に頼ると楽。
Xのポスト内容を生成 今回はOpenAIのAPIを利用して開発を進めていき ました。 そのためまず、OpenAIのAPIにプロンプトを送 り、出力を受け取るAdapterを作成。
Xのポスト内容を生成 自分で考えたポストの出力例を添えたプロンプト を作成。 理想の内容が生成できるかプログラムでテストす る。
Xへ投稿するプログラムを作成 キャラクターがどんな内容をポストするかテーマ を考えておく。 XのBOTを利用するのに必要なトークンやキーを取 得し、先ほどの生成プログラムを流用しテーマに 沿ったポストを投稿できるプログラムを作成。
ブログ記事の生成 キャラクターの行動範囲を考え、その場所ごとに 関連する単語を複数用意。 その場所と関連単語を基に出来事を生成できるよ うにプログラムを作成。 複数の出来事を一日の出来事としてまとめ、日記 の形にするプログラムを作成。
記事の投稿をするプログラムを作 成 今回ははてなブログを利用したので、必要なアカ ウント関連のキーを取得し、Xのポスト投稿プログ ラムを流用してブログの投稿をするプログラムを 作成。
YOUTUBEでの配信をするための 準備 配信ソフトとしてOBS、音声合成のために VOICEVOX、仮想マイクとしてVB-CABLEを利用。
今回のフローチャート
配信をするためのプログラム作成 配信上でキャラクターが言いそうなことを追加し た設定プロンプトを作成。 性格や口調などはもちろん、繊細な話題など言 わなそうなこともしっかりと設定しないと理想 とはかけ離れた話題まで話してしまいます。 コメントへの返答、コメントが無い場合の話題を 生成するプログラムを作成。
話す内容を配信に利用するための 準備 話す内容とコメントをOBSに送るプログラムを作 成。 話す内容から音声合成するプログラムと、その音 声を再生するプログラムの作成。
各種機能を統合したプログラムを 作成 配信するために今までに作ったプログラムを統合 したプログラムを作成し、実行。 配信が始まった!
どのようなことで躓き、解決した のか? プロンプトの作成が難しかった。 キャラクターの設定など0から考えるのが難しか ったので、LLMに頼ることで解決。 プログラムが増えた際、見やすく管理するしつ つ、上手く動作させることに躓いた。 sys.path.append()を使用し解決。 ただし、使うべきではないと言う記事もあった のでより良い方法を模索する。
まとめ プログラミング楽しい! できあがって自分の思った通りに動くときや、 細かいミスを見つけた時の快感が最高。 ただし途中から利用しはじめたCursorの補助によ って、コーディングが初心者でも楽にできてしま う。 よく理解せず動作している時の不安もあるが、 動作してるから良いかと思ってしまう気持ちが ある。
ACKNOWLEDGEMENTS 開発を始めるきっかけから相談など、全てに関わ っていただいたさめさんに深く感謝を申し上げま す