チーム30
CodeFlow
本当に欲しいものを形にというテーマに対して、SNSが発展し、メッセージでのやり取りが増加する中でコミュニケーションの取りにくさに不満を感じていました。現在のチャットアプリは文字や絵文字のみで相手の感情を推測することが困難であるという課題に気づきました。また、SNSでの誤解や炎上、業務でのマルハラなどの社会問題の背景も同じものであると考えました。 そこで感情を可視化し、文字に感情を乗せることで問題解決を目指しました。 これにより、文章だけでは伝わりにくかった内容も伝わるようになり、コミュニケーションの改善を見込めるようになります。 さらに、この技術を応用して、録音した内容の感情分析を行うことで、学生は面接練習や発表練習に活用することが出来ます。 また、企業は顧客とのやり取りを詳細に見返すことができ、何の話が顧客に受けたのかや不評だったのかを確認することが出来ます。
チャットアプリ、録音からの議事録作成アプリを作成しました。 チャット機能では音声入力をもとにAIが解析し、文字起こしと感情分析を行った上でメッセージに反映させます。 また、手動での色やフォントの大きさの調整もできます。 議事録作成では、アップロードした音声ファイルを解析し、区切りながら文字起こし、感情分析を行います。 その際に、感情のグラフを作成することでどのタイミングで好評だったのかを確認できます。 感情のグラフは話者識別を用いることで話している人ごとのグラフ生成が可能になっています。
- ログイン
- チャットを行うuserを選択
- 手入力や音声入力でチャット送信
- 議事録選択、ファイルをアップロード
- 分析結果と議事録生成
既存のAPIやライブラリを活用し、今までに存在しなかった文字に感情を載せるということを目標に取り組みました。 また、APIを作成する過程で必要になったパラメータをグラフ化することでより直観的に感情という目に見えないものを可視化することに挑戦しました。
現時点では、文字起こしと感情分析が一つになったAPIがほとんどない上(日本語未対応や法人向けAPI)、全ての機能をローカルで実装するにはライブラリのバージョンの依存関係やメモリの関係上困難でした。 そこで、文字起こしを外部のAPIに、感情分析を自身で実装し、それらを組み合わせることで実現しました。 また、実装においては、役割を明確に分けるために、全てをPythonのAPIで実装するのではなく、データベースなどのWebアプリの部分はNestJSで、音声解析はPythonで行いました。
React,Vite,CSS,TypeScript
TypeScript,NodeJS,NestJS,PostgreSQL
Python,,librosa,transformers,PyTorch,AssemblyAIAPI,matplotlib