LoginSignup
2
2
音声認識APIを使ってみよう!

音声認識APIとOpenAIで「面接対策アプリ」をつくる

Posted at

本記事の目的

事業会社に所属するDX推進担当者として、昨今のAI系のソリューションはモーダルによらず幅広くカバーしておきたい。

今回は日本語に対する精度が高い音声認識エンジン「AmiVoice API」が無償トライアルできるということで使い道について考えてみた。AmiVoice APIは日本の企業(株式会社アドバンスト・メディア)が開発しているということで、日本語認識に強みを持っているようだ。

音声認識エンジンの活用アイデアとして、就職活動の面接対策に使うことを考えたので、実現方法について考察してみる。

面接対策向けの活用

私が新卒の学生だったころ、面接対策といえば先輩や身近な大人との模擬面接だった。
大学のキャリアセンターにいる職員を相手に面接の練習をするのは気恥ずかしく、1回行っただけで二度と行かなくなったことを覚えている。

今の技術であれば、実際の人を相手にするよりも前の練習台として、生成AIを活用することは十分に可能そうだ。

有名なメラビアンの法則にも言われているように、面接で相手に与える印象は「話の内容」以上に「話し方」など態度によるところが大きい。音声認識の技術を利用すれば、話し方に関連する以下のような点を、ある程度定量的に評価できそうである。

■ 面接の中で「話し方」に関する評価

  • 話すスピードは適切か
    → 単位時間あたりに話された文字数で定量化

  • フィラー(「えー」などの無意味語)を多用していないか
    → フィラーを除いた(ケバ取り)後の文長との比較で定量化

  • 一般的ではない専門用語を多用していないか
    → 専門用語への対応あり/なしで書き起こしした時の差分で定量化

これに加えて、近年急速に進化が進んでいる生成AIを組み合わせることで、発話内容も踏まえた面接の総合的な評価が可能になる。

アプリの構想

アプリの全体像は以下のようなもの。
Azure OpenAIをAI Searchで検索拡張生成(RAG: Retrieval Augmented Generation)した一般的な構成に加えて、入力した音声をテキストに変換するためのAmiVoice APIと、事前に履歴書などを構造化するためのDocument Intelligenceを導入する。
スクリーンショット 2024-05-12 170119.png

1. 募集要項や履歴書を登録 アプリの利用開始時に、募集要項や履歴書をPDFやWord形式でアップロードすることを想定する。このとき、Azure AI Document Intelligenceを用いてドキュメントをJSON形式に変換しておく。

この後のステップで、Azure OpenAI Service(GPT)に募集要項や履歴書の内容を読み込ませたい。そのための前処理として、いわゆる「非構造化データの構造化」を行うことが目的である。

AI Document Intelligenceではセマンティックチャンキングという考え方があり、意味のまとまり(履歴書であれば「志望動機」や「自身の強み」等のイメージ)の単位で構造化ができる。

スクリーンショット 2024-05-12 170112.png

2. 面接のはじめの質問を表示する
初回の質問文やその後のやりとりは、事前に準備したプロンプトをGPTに渡すことで実行できる。 事前に読み込んでおいた募集要項や履歴書を読み込ませることで、応募者にパーソナライズされたやりとりを行うようにする。

■ 面接のやりとりに使うプロンプトの例

あなたは{応募先}の会社の人事部員です。
事前に与えられた{募集要項}と{履歴書}の内容をもとに、応募者との対話による面接を行ってください。面接相手の回答をもとに質問を複数回繰り返し、自社にとって有益な人材かどうかを判断してください。最後に{フィードバックの形式}にしたがって結果を返してください。
なお面接の評価にあたっては{話し方}の結果も加味し、その評価についてもフィードバックに加えてください。

スクリーンショット 2024-05-12 170101.png

3. 質疑を制限時間内で繰り返す
アプリの利用者は、表示された質問文に対する回答を口頭で話す。 話した内容は、AmiVoice APIを用いてテキストに変換する。 さらに発話テキストに対して関連する情報をRAGで収集し、必要な情報を含めてGPTへのプロンプトの入力とする。

また最後にフィードバックを返すための情報として、やりとりの内容(発話テキスト)に加えて、上で言及した「話し方」に関連する指標(話すスピードなど)も残しておく。

スクリーンショット 2024-05-12 170049.png

4. 面接へのフィードバックを返す
GPTは事前に定義したフィードバックの形式に基づき結果をフィードバックする。 それまでにやりとりした内容や、AmiVoiceで取得した「話し方」に関する指標をインプットとすることで、総合的な評価を行う。

スクリーンショット 2024-05-12 170031.png

おわりに

開発にあたって必要となるコンポーネントは既に揃っており、既存の仕組みを組み合わせるだけで、簡単にサービスが作れそうな実感を持った。久しぶりに少し手を動かして動くものを作ってみたいと思った。

音声会話インターフェイスはスキルを問わず誰でも使いこなしやすく、また両手が塞がっていても問題ないなど、使い勝手が良い。現状で期待できる精度を肌感で確認した上で、今後の導入検討を進めたい。

なお「面接対策アプリ」は案の定、類似サービスが2年前に既にリリースされていた。自分が就職活動をするときにあったら欲しかったサービスなので、応援したい。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2