KDL BLOG

【やってみた】Azure OpenAI+Azure Cognitive Servicesで音声会話ボットを作ろう!~音声入力からテキストを生成する編~

株式会社神戸デジタル・ラボ DataIntelligenceチームの原口です。

今回は今話題の「ChatGPT」とAzure Cognitive Servicesを利用して音声会話ボットを作ってみました!

本記事は連載記事となります。

  • Step1:音声入力からテキストを生成する
  • Step2:得られたテキストから返答を生成する
  • Step3:返答を合成音声でしゃべらせる

今回は音声入力からテキストを生成してみましょう!

はじめに

皆さんは「音声会話アシスタント」、欲しいと思ったことはありませんか?某アニメに出てくるロボットや某ゲームに出てくるアシスタント、某映画に出てくるムニっとした愛くるしいロボット。すべてに共通するのは「音声入力で自然な会話ができる」点です。

今までの音声会話ボットは入力された音声に対して定型文で対応していました。それでも十分でしたが、自然な対話文を自動生成するレベルには達していませんでした。

しかし2023年世界を席巻したChatGPTが登場し事態は大きく急変します。皆さんもご存知の通り、ChatGPTは入力された文章に対して人間と遜色ない返答をしてくれます。

「十分に発達した科学技術は、魔法と見分けがつかない」とはこのことを指すのではと思うほどです。

このように様々な質問に自然な文章で回答してくれるChatGPTが登場した今、夢に描いていた音声会話ボットを作らない手はありません!

今回はAzure OpenAIの「ChatGPT」と「Cognitive Services」をフル活用して、夢を実現します!

アーキテクチャー

今回構築したアーキテクチャーは次のようになります。 20230501095417.png Speech To TextとText To SpeechはAzure Cognitive Servicesで実現しています。会話部分はAzure OpenAIのChatGPTで実現しています。通常のOpenAIでも実現可能ですが、Azure OpenAIを利用することですべてをMicrosoft Azure(以下、Azure) 上で実現でき、さらにはAzureのセキュリティポリシーが適応されるのでより一層の安心感を得ることが出来ます!

OpenAIとAzure OpenAIで迷った場合はAzure OpenAIをお勧めします!

以降Azure OpenAIを利用するので、Azure OpenAIの準備が完了していない場合は

この記事を確認しながら準備してください!

(つづきは、ブログ「神戸のデータ活用塾!KDL Data Blog」へ)

hatena.png