導入手順
Windows 11に読み上げBotを入れて、最初の読み上げを確認するまでの手順です。上から順番に進めてください。
- 所要時間の目安
- 30〜40分
- 対象
- Windows 11
- 配布版
- α6
Windows 10とLinux、macOSはこの手順の対象外です。Linuxで動かした実績はありますが、手順の案内とサポートはしていません。
AivisSpeechを入れて、声を用意する
文字を音声にするのはAivisSpeechの役目です。まずこちらを動かせるようにします。
AivisSpeechの案内ページからインストールし、起動しておきます。
初期の声「コハク」を追加する
Botが最初に使う声はコハク(ノーマル)です。コハクはAivisSpeechに最初から入っていないため、自分で追加します。
AivisHubのコハク配布ページから音声モデルのファイルをダウンロードし、AivisSpeechへ追加してください。
先に追加しておいてください
コハクを追加せず、ほかの声も選んでいない状態で読み上げると、音声を作れずに失敗します。別の声を使う場合は、その音声モデルをAivisSpeechへ追加したうえで、あとから/set_speakerで選びます。
音声モデルごとに使える範囲(利用条件)が決まっています。AivisHubの配布ページで確認してください。
ことば:話者(わしゃ)とスタイル
話者は声の種類、スタイルは話しかた(ノーマル、うれしい など)です。どちらもAivisSpeech側の呼びかたで、Botは選ばれたものを指定して音声を作ります。
Botは、同じPCで動いているAivisSpeechへ localhost:10101 で話しかけます。AivisSpeech側で設定を変えていなければ、そのままで動きます。
FFmpegを入れる
作った音声をDiscordへ流すために使います。
PowerShellを開いて、次のコマンドを実行します。
winget install --id Gyan.FFmpeg -e終わったらPowerShellを開き直し、入ったかどうかを確認します。
ffmpeg -versionバージョンが表示されれば完了です。「見つかりません」と出る場合は、winget search ffmpegで候補を探してください。PowerShellを開き直していない場合も同じ表示になります。
Pythonを用意する
Bot本体はPythonのプログラムです。動かすためのPythonを1つ用意します。
Python 3.12か3.13を使います。すでにPythonが入っていればそれでも動きますが、ここではBot専用に分けやすい「embeddable package(インストール不要版)」を使う方法を案内します。
ことば:embeddable package
インストールせずに、フォルダへ置くだけで使えるPythonです。Botのフォルダの中に入れておけるので、PCにすでに入っているPythonと混ざらず、消したいときはフォルダごと削除できます。
インストール不要版で用意する(Python 3.13.12の例)
ほかの3.12/3.13を使う場合は、ファイル名をそのバージョンに読み替えてください。
- Python 3.13.12の配布ページから
python-3.13.12-embed-amd64.zip(64-bit)を取得します。 - 作業用のフォルダへ展開します。あとで手順4で、Botのフォルダの中へ移します。
- 展開先の
python313._pthをメモ帳で開き、中身を次のとおりにします。
python313.zip . Lib Lib\site-packages import site
pipを入れる
pip公式のget-pip.pyをブラウザで開き、Ctrl+Sでget-pip.pyという名前で保存します。保存先はpython313._pthと同じフォルダです。
保存したあと、ファイル名の末尾が.py.txtになっていないか確認してください。
python-3.13.12-embed-amd64 ├─ python.exe ├─ python313.dll ├─ python313.zip ├─ python313._pth └─ get-pip.py
このフォルダを開き、何もない場所を右クリックして「ターミナルで開く」を選びます。開いたターミナルで、上から順に実行します。
.\python.exe .\get-pip.py
.\python.exe --version
.\python.exe -m pip --versionPython 3.13.12のように表示されれば完了です。
Botのファイルを置く
配布ZIPを展開して、Botの置き場所を決めます。
ダウンロードしたZIPを、新しいフォルダへ展開します。置き場所の例:
C:\AivisTTSBot
旧版のフォルダへ上書きしないでください
α3・α4・α5を使っていた人は、そのフォルダは残したまま、別の場所へ展開してください。引き継ぎのしかたは旧版からの引き継ぎで説明しています。
インストール不要版のPythonを使う場合は、展開したBotフォルダの中にpythonという名前のフォルダを作り、手順3で用意したPythonフォルダの中身をすべて入れます。
できあがりの形
C:\AivisTTSBot ├─ tts-bot-alpha6.py ← Bot本体 ├─ global_replacement.db ← はじめから入っている辞書 ├─ requirements-base.txt ├─ requirements-security-override.txt └─ python ├─ python.exe ├─ python313._pth ├─ python313.zip ├─ get-pip.py └─ Lib
別の場所へ展開した場合は、以降の説明のC:\AivisTTSBotを実際のフォルダに読み替えてください。
Botに必要な部品を入れる
Bot本体が使う部品(ライブラリ)をまとめて入れます。
手順3で開いたターミナルは使いません
展開したBotフォルダを開き、何もない場所を右クリックして「ターミナルで開く」を選び、新しく開き直してください。
tts-bot-alpha6.py、requirements-base.txt、requirements-security-override.txt、pythonフォルダが同じ場所にあることを確認してから、上から順に実行します。
.\python\python.exe -m pip install --upgrade pip setuptools wheel
.\python\python.exe -m pip install -r requirements-base.txt
.\python\python.exe -m pip install --upgrade --no-deps -r requirements-security-override.txt3行目は、一部の部品を安全な新しい版へ上書きするためのものです。すでに入っているPythonを使う場合は、そのPythonに対して同じ内容を入れてください。
Discordで自分のBotを作る
Discord側に「自分専用のBot」を1つ作り、その合い言葉をBotに渡します。
Discord Developer PortalでApplicationを作り、その中でBotを作ります。
Discord側で必要な設定
- Message Content IntentをONにします。
- Scopesで
botとapplications.commandsを選びます。 - Bot Permissionsで次を選びます。
- チャンネルを表示
- メッセージを送る/メッセージ履歴を読む
- 接続/発言/音声検出を使用
ことば:Message Content Intent
Botが投稿の本文を読み取ってよいかどうかの設定です。ここがOFFだと、投稿があったことは分かっても中身が読めないため、読み上げできません。
合い言葉(トークン)を保存する
Bot本体と同じフォルダにtoken.txtを作り、トークンだけを1行で保存します。前後に説明や引用符、空白を付けないでください。
正しい書きかた
ABCDEFGHIJKLMNOPQRSTUVWXYZ.abcdefg123456.HIJKLMNOPQRSTUVWXYZ
よくある間違い
TOKEN=ABCDEFGHIJKLMNOPQRSTUVWXYZ.abcdefg123456.HIJKLMNOPQRSTUVWXYZ "ABCDEFGHIJKLMNOPQRSTUVWXYZ.abcdefg123456.HIJKLMNOPQRSTUVWXYZ" Bot Token: ABCDEFGHIJKLMNOPQRSTUVWXYZ.abcdefg123456.HIJKLMNOPQRSTUVWXYZ
トークンは誰にも見せないでください
トークンが分かると、他人があなたのBotを自由に操作できます。Webサイト、チャット、スクリーンショット、GitHubなどへ載せないでください。
人に見られたかもしれないときは、Developer Portalでトークンを作り直し、token.txtを新しいものに書き換えてください。
Botを起動する
AivisSpeechが起動していることを確認してから実行します。
Botフォルダを開き、何もない場所を右クリックして「ターミナルで開く」を選び、次を実行します。
.\python\python.exe .\tts-bot-alpha6.pyDiscordへのログインとコマンドの登録が終わると、Bot is ready!と表示されます。初回はbot.dbというファイルが作られます。ここに設定と辞書が保存されます。
Bot is ready!が出ないときはうまく動かないときを確認してください。
Discordで最初の設定をする
読み上げるチャンネルを決めて、実際に声が出るか確かめます。
- 使いたいボイスチャンネルに自分が入ります。
/connectを実行します。Botが同じボイスチャンネルへ入ります。/set_read_channelで、読み上げるテキストチャンネルを選びます。- コハク以外の声を使う場合だけ、
/set_speakerで話者とスタイルを選びます。 - 選んだテキストチャンネルへ短い文章を投稿し、声が出るか確かめます。
終わるときは/disconnectを実行し、ターミナルでCtrl+Cを押してBotを止めます。