Difyの音声出力(TTS: Text‐to-Speech)を試す

Difyの音声出力(TTS: Text‐to-Speech)を試す
  • URLをコピーしました!

こんにちは、スクーティー代表のかけやと申します。

弊社は生成AIを強みとするベトナムオフショア開発・ラボ型開発や、生成AIコンサルティングなどのサービスを提供しており、最近はありがたいことに生成AIと連携したシステム開発のご依頼を数多く頂いています。

Difyのバージョン0.6.14がリリースされました。このリリースではいくつかの新しい機能が追加されていますが、その中でも音声出力(TTS: Text-to-Speech)機能が追加されており、早く試そう試そうと思いつつ、やっと試すことができました!

なのですが、、、あれれ?どうやって使うの・・・・・・?ということで結構はまったので(僕だけでしょうか??)、使い方をご紹介いたします!

目次

準備

Difyのバージョン0.6.14について

Difyのバージョン0.6.14では、以下の機能が新たに追加されました。

  • TTSストリーミング設定:音声の自動出力がサポートされました。
  • Workflowの機能拡張:ワークフローノードにelifが追加され、条件として定数だけでなく変数を指定できるようになりました。
  • いくつかの連携できる外部サービスの追加

環境を作る

今回はMacOSのローカルPC上で動作することを前提とします。

ローカルPC上にDifyを立ち上げる方法は、「DifyでSEO記事作成を試してみる」に詳しく記載していますので、そちらをご覧ください。

また、最新のソースコードに更新しておく必要があります。その方法はこちらのリリースノートの「Upgrade Guide」に記載があるので、そのまま従うだけでできます。docker-compose.yamlがリファクタリングされたため、ソースコードの更新方法がこれまでと変わっています。

しかし今回は、私はその部分を読まずに今までと同じコマンドで更新をしてしまいましたが、Warningはいくつかでたものの、アプリケーションは問題なく動作しました。

​その方法は「ローカル環境上のDifyでGPT-4oを使えるようにする」をご覧ください。

Dify愛が止まらない私は、これまでもいくつかDifyに関する記事を書いています。そちらもぜひご覧いただけると嬉しいです!

音声出力(TTS: Text-to-Speech)を試す

とりあえずいろいろ試す

先程のリリースノートを見ても、実際にどうやってTTSを使用できるのか全然わからない・・・ということで、あれこれ試してみました。

もともとやりたかったのは、Groq(LLMはLlama3.1)を使用して、超高速レスポンス環境で会話をしたかったのですが、結論としては、以下の理由でこれはできませんでした。

  • GroqはTTSに対応していない
    • TTSに対応しているLLMはOpenAIのGPTを始め、Difyで選べるものとしては全部で3つのみ
  • 上記がわかったため、Groqの出力をGPT-4o miniに入力し、GPT-4o miniを音声出力しようと試したが、Workflowでは音声出力ができない。音声出力を設定できるのはChatbotのみ。
    • というか、Groqの出力をGPT-4o miniに入力している時点で、レスポンス速度がGPT-4o miniに律速されるため、Groqの超高速レスポンスでの会話がこの構成ではそもそもできるわけがないということに、後で気づきました。。。
  • 音声出力は自動再生ができるが、音声入力は自動的にされる仕様になっていないため、音声入出力【のみ】での会話ができない。

ChatbotでTTSを試す

ということで、現時点でDifyのTTSを使いたければ、Chatbot一択になるため、Chatbotを作成していきます。

① 空のChatbotを作成する

ということで、現時点でDifyのTTSを使いたければ、Chatbot一択になるため、Chatbotを作成していきます。
  1. トップメニューの「Studio」から左上の「Chatbot」を選択
  2. 「Create from Blank」を選択

そうすると、Chatbot作成画面の初期状態が開きます。


② 「ADD FEATURES」をクリック

② 「ADD FEATURES」をクリック

ここはいわゆる、初期状態では使えない機能を追加できるようにするための設定です。この中で音声入出力を有効にすることができます。


③ 「Text to Speech」をOnにする

「Text to Speech」をOnにすると音声出力(TTS)が使用できるようになります。ちなみに、その下にある「Speech to Text」をOnにすると、音声入力を使用することができるようになります。

「Text to Speech」をOnにすると音声出力(TTS)が使用できるようになります。ちなみに、その下にある「Speech to Text」をOnにすると、音声入力を使用することができるようになります。


④ 「Text to Speech」の「Seetings」をクリック

④ 「Text to Speech」の「Seetings」をクリック

これをクリックすると、TTSの設定をいくつか変更できるようになります。


⑤ 「Auto Play」をOnにする

これがOffの場合、音声出力すること自体はできますが、チャットのメッセージ出力の▶ボタンを押して始めて、出力されたテキストを音声で聞くことができるという動作になります。

これがOffの場合、音声出力すること自体はできますが、チャットのメッセージ出力の▶ボタンを押して始めて、出力されたテキストを音声で聞くことができるという動作になります。

僕は「会話」をしたかったので、いちいち▶ボタンを押さずに、テキストの出力ができたら音声出力も同時にされるようにしたかったため、「Auto Play」をOnにしました。

​​⑥ 右上メニューの「Settings」をクリック

音声出力に対応しているモデルを確認しておきたかったので、右上のSettingsから、モデルの設定画面を開きます。

音声出力に対応しているモデルを確認しておきたかったので、右上のSettingsから、モデルの設定画面を開きます。


⑦ ポップアップ内左メニューの「Model Provider」をクリック

「Model Provider」をクリックすると、Difyで利用できるモデルを提供しているサービス一覧が表示されます。各サービスプロバイダーの欄にラベルが表示されており、その中で「TTS」のラベルがついているものがTTSに対応しています。

「Model Provider」をクリックすると、Difyで利用できるモデルを提供しているサービス一覧が表示されます。各サービスプロバイダーの欄にラベルが表示されており、その中で「TTS」のラベルがついているものがTTSに対応しています。

本記事作成の2024年7月末時点では、GPTと他2つ、合計3つがTTSに対応していました。私はすでにOpenAIのGPTを設定済みだったため、GPTを選択することにしました。

この画面では特に何も設定せず、確認のみになります。


⑧ Chatbotで適当に入力し、音声出力を試す

今回はモデルとして、高速で安価なGPT-4o miniを選択しました。

今回はモデルとして、高速で安価なGPT-4o miniを選択しました。

これで最低限の準備は完了です!早速TTSを試してみましょう。
ウィンドウの右半分がチャットの動作確認用の画面になります。なんでもいいのでとりあえず適当にテキストを入力してみます。

すると、テキストと共に、音声でも回答が出力されました。テキストで入力して、音声で返ってくるという不思議なコミュニケーション!とても自然な日本語で話してくれます!

​ちなみに、④のSettingsで音声出力される言語や声も選択できます。ただし、日本語は一種類の声しか実装されていませんでした。また、英語を選択したとしても、モデルからの出力が日本語の場合は日本語を話してくれました。英語の設定で日本語を話すと、やや訛っているような発音ではありましたが、日本語設定の場合と大して変わりませんでした。

本記事をご覧いただいた方にはこちらの資料がおすすめです!

【目的別】生成AIの使い方がわかる! 生成AI活用事例集カバー画像

【目的別】生成AIの使い方がわかる! 生成AI活用事例集

「生成AIって色々ありすぎてよくわからない・・・」という方向けに、汎用型生成AIであるChatGPT、Claude、Gemini、Perplexityの比較や、画像、音声、動画生成のツールなどを、どの様な場面のときにどのように使用するのが効果的かという点を重点的に、事例をまとめて紹介いたします。これを読めば、生成AIの効果的な使い方がわかります!本資料は、

  • 生成AIとはなに?
  • ChatGPTを使ってみよう
  • 生成AIを業務で活用する
  • 生成AIツールを使いこなす
  • 生成AI利用の注意点

といった内容の構成になっており、ChatGPTや生成AIの基礎から、業務上の実務的な使用方法までをお伝えする資料です。

このような方にオススメ

  • ChatGPTや生成AIの基礎を知りたい方
  • ChatGPTや生成AIの基礎は理解しているが、有効な活用方法を知りたい方
  • 生成AIの効果的な業務活用方法を知りたい方
Difyの音声出力(TTS: Text‐to-Speech)を試す

この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次