オープンソースなVOICEVOX対応Discord読み上げボット「Swiftly読み上げbot」
ご覧いただきありがとうございます。今回は、私の開発運営するディスコードボットの、「Swiftly読み上げbot」を徹底解説します。
Swiftlyの思想
Swiftlyは以下の原則に沿って開発されています。
1. ユーザーにとって不要な機能は導入しない
2. 不要なレスポンスメッセージは排除する
3. ユーザー自身がボットに貢献できるようにする(オープンソース化)
Swiftlyのすごいところ
1. コマンドの名前がわかりやすい!
/joinや/leave、/dictionaryなど、コマンドの名前がわかりやすく、初見でも割と使いやすいように作られています。
2. 夜間でも高速で安定して読み上げられる!
まだSwiftlyはあまり大規模ではないため、夜間でも安定した読み上げが行われます。また、ボットサーバーが夜間でも高速な回線で運用されているため、安定して通信できるようになっています。
3. 完全に無料!!!
開発者が学生であるため、完全に無料で運営されています。辞書もすべて無制限です。
4. オープンソース
このボットはユーザーがボットに貢献できるという点を大事にしています。AGPL3.0ライセンスで完全にオープンソースであり、誰でも貢献できます。もしもコードが書けなかったとしてもAIコードでも大歓迎です!もちろん、サポートサーバーで「こういう機能がほしいです!」という要望を出すことも貢献ですよ!
5. VOICEVOXのほぼすべての声が使える!
VOICEVOXのほぼすべての声が使用可能です!
要望があれば、VOICEVOX以外の声も実装します。
Swiftlyの使い方
VCに参加・退出させる方法
VCに参加して、/joinコマンドを打つ
これだけで読み上げが開始されます。
/leaveコマンドで、退出されます。
辞書機能の使い方
例えば、「Discord」を「でぃすこーど」と読ませたい場合、以下のコマンドを入力するだけで辞書登録されます。
/dictionary key:Discord value:でぃすこーど
削除したい場合は、
/dictionary-remove key:Discord
と入力するだけです。
サーバー辞書一覧を見るには、/dictionary-list
コマンドを送信するだけです。
その他
声の変え方
声は、VOICEVOXのほぼすべての声が使用可能です。
/voiceコマンドを送信し、声を選んだら設定
ボタンを押し、声の番号を入力し、送信するだけです。
読み上げスピードの変え方
読み上げスピードは、1x~2xで選択可能です。
/speed
コマンドを送信し、以下のような画面で設定可能です。
導入する方法
以下のリンクを押し、画面に沿ってボットをサーバーに追加してください。
今後の展望
Swiftlyはまだ成長途中のボットです。これからも以下の方向でアップデートしていく予定です。
-
対応する音声エンジンの拡大
VOICEVOX以外の音声も選べるようにして、もっと幅広い声を楽しめるようにします。 -
運営と開発の透明性
オープンソースを続けつつ、ユーザーからの要望やアイデアを積極的に取り入れて「みんなで作るボット」にしていきます。
これらはあくまで予定で、みんなの意見や要望によって変わっていきます。「こういう機能ほしい!」という声がSwiftlyの未来を作るので、ぜひ気軽にサポートサーバーやGitHubで教えてください!
Discussion