Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LayerX Biz Boost〜Whisper+GPTによる音声文字起こし要約の取り組み〜
Search
yakipudding
April 25, 2023
Programming
1
10k
LayerX Biz Boost〜Whisper+GPTによる音声文字起こし要約の取り組み〜
LLM(GPT, PaLM等) with MLOps LT大会!!! で登壇した内容です
https://mlops.connpass.com/event/279156/
yakipudding
April 25, 2023
Tweet
Share
More Decks by yakipudding
See All by yakipudding
LayerX Biz Boost 〜セキュリティチェックシート一次回答の取り組み〜
yakipudding
1
33k
Other Decks in Programming
See All in Programming
Nitro v3
kazupon
2
280
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
0
270
Module Harmony
petamoriken
1
160
AI 時代だからこそ抑えたい「価値のある」PHP ユニットテストを書く技術 #phpconfuk / phpcon-fukuoka-2025
shogogg
1
420
Temporal Knowledge Graphで作る! 時間変化するナレッジを扱うAI Agentの世界
po3rin
5
1.3k
SidekiqでAIに商品説明を生成させてみた
akinko_0915
0
130
Private APIの呼び出し方
kishikawakatsumi
2
860
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
970
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
280
AIの弱点、やっぱりプログラミングは人間が(も)勉強しよう / YAPC AI and Programming
kishida
9
4k
Blazing Fast UI Development with Compose Hot Reload (droidcon London 2025)
zsmb
0
500
Snowflake リリースに注意を払いたくなる話
masaaya
0
110
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Side Projects
sachag
455
43k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8k
Six Lessons from altMBA
skipperchong
29
4.1k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
RailsConf 2023
tenderlove
30
1.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Transcript
LayerX Biz Boost 〜Whisper+GPTによる音声文字起こし要約の取り組み〜 2023.4.25 LLM(GPT, PaLM等) with MLOps LT大会!!!
白井 仁美(@yakipudding)
Confidential © LayerX Inc. 2 画像を入れてね 自己紹介 白井 仁美 @yakipudding
- LayerX MLエンジニア - 3月に弥生からLayerXに転職 - 法人向けSaaS「バクラクシリーズ」 請求書OCR機能の開発がメイン - LLM活用の取り組みも
What's LayerX Biz Boost?
© LayerX Inc. 4 LLMを活用した業務効率化ツール - 例)お客様へのヒアリング内容の要約自動生成 (セールスチーム向けに提供) What’s LayerX Biz
Boost? ヒアリング 音声ファイル 文字起こし 要約
© LayerX Inc. 5 LLMを活用した業務効率化ツール - 例)お客様へのヒアリング内容の要約自動生成 (セールスチーム向けに提供) What’s LayerX Biz
Boost? ヒアリング 音声ファイル 文字起こし 要約 GPT Whisper
課題&工夫したこと
Whisperが話し手を区別できない問題
© LayerX Inc. 8 実際の音声: セールス: お世話になっております。LayerXの田中と申します。 お客さま: お世話になっております。 Whisperの文字起こし結果: お世話になっております。LayerXの田中と申します。お世話になっております。 ➔
Whisperの文字起こし結果は話し手の区別ができない 1. Whisperは話し手の区別ができない
© LayerX Inc. 9 実際の音声: セールス: バクラクシリーズはAがBでCで・・・とにかくバクラクなんですよ。 お客さま: へー。 セールス: 御社の運用ではどういったところに課題を感じていますでしょうか。 お客さま: んーそうですね。やっぱ紙で回すのがつらいですね。 Whisperの文字起こし結果:
バクラクシリーズはAがBでCで・・・とにかくバクラクなんですよ。へー。御社の運用ではどういったと ころに課題を感じていますでしょうか。んーそうですね。やっぱ紙で回すのがつらいですね。 GPTの要約結果: バクラクシリーズはとにかくバクラクです。紙で回すことに課題を感じています。 ➔ 要約結果にセールスが話した内容は不要 ➔ 文字起こし時点で話し手の区別をし、お客さまの発言を抽出して要約したい 1. Whisperは話し手の区別ができない
© LayerX Inc. 10 話者分離を行うためにpyannote.audioを利用 - 音声から話者判別を行うことができるライブラリ - 1名の話者の発言単位に音声を分割し、分割した音声単位でWhisperで文字起こしを行った 1.
Whisperは話し手の区別ができない お世話になっております。お世話になっております。 A: お世話になっております。 B: お世話になっております。
© LayerX Inc. 11 話者分離後のWhisperの文字起こし結果: SPEAKER1: バクラクシリーズはAがBでCで・・・とにかくバクラクなんですよ。 SPEAKER2: へー。 SPEAKER1:
御社の運用ではどういったところに課題を感じていますでしょうか。 SPEAKER2: んーそうですね。やっぱ紙で回すのがつらいですね。 GPTのプロンプト: これはセールスと顧客の会話です。顧客の回答を要約してください。 GPTの要約結果: 顧客は紙で回すことに課題を感じています。 ➔ GPTがどちらが顧客かを推測して回答してくれる ➔ 要約結果がいい感じになった! 1. Whisperは話し手の区別ができない
GPTの要約結果、なんかちょっと違う問題
© LayerX Inc. 13 実際の音声: セールス: 御社の運用ではどういったところに課題を感じていますでしょうか。 お客さま: んーそうですね。やっぱ紙で回すのがつらいですね。 ・・・(長い会話)・・・ GPTのプロンプト: これはセールスと顧客の会話です。顧客の回答を要約してください。
GPTの要約結果: 課題を感じた内容について話題にあがりました。 ➔ 違う、そうじゃない。みたいな結果が返ってくる ➔ 「要約して」だと要約しすぎて本当に聞きたい中身がないことがある 2. 「要約して」だとうまく要約してくれないことがある
© LayerX Inc. 14 プロンプトを少し工夫することで改善 - 聞きたい項目について具体的に聞く 1. 顧客が使っているシステムは何ですか? 2.
顧客が課題に感じていることは何ですか? 3. 顧客はどうなることを期待していますか? … - 重要な発言を抽出させてから要約する - 価格に関して言及している発言を抽出してください - 要約してください ➔ GPTがいい感じに答えてくれるようになった 2. 「要約して」だとうまく要約してくれないことがある
GPTの文字数制限きつすぎる問題
© LayerX Inc. 16 ヒアリングは長いと1時間にも及ぶこともある ➔ 文字起こしした文字数が長文になる ➔ プロンプトの文字数制限にひっかかる 3.
プロンプトの文字数制限がきつい
© LayerX Inc. 17 結局制限文字数でチャンクわけするしかない。。。 3. プロンプトの文字数制限がきつい … … …
…
© LayerX Inc. 18 複数項目質問をすると回答もチャンクごとに出る 3. プロンプトの文字数制限がきつい … … …
… A,B,Cについて回答して A,B,Cについて回答して A,B,Cについて回答して A,B,Cについて回答して Aは... Bは... Cは... Aは... Bは... Cは... Aは... Bは... Cは... Aは... Bは... Cは...
© LayerX Inc. 19 後処理でまとめたり再要約させたりする 3. プロンプトの文字数制限がきつい … … …
… A,B,Cについて回答して A,B,Cについて回答して A,B,Cについて回答して A,B,Cについて回答して Aは... Bは... Cは... Aは... Bは... Cは... Aは... Bは... Cは... Aは... Bは... Cは... Aは... Bは... Cは...
実際に使ってもらった結果
© LayerX Inc. 21 - 話者分離するためにpyannoteを使うことで、処理時間が長くなってしまった - そもそも音声処理は重たい - ほぼGPU必須(CPUで動かなくはないが何時間もかかる。。)
- 30分の音声ファイルで10分程度かかる - GCP BatchでGPU使うなども工夫したが、これ以上は厳しかった。。 - 忙しいセールスにとって、精度よりも速度のほうが大事だった - 結果的に思ったほど使ってもらえなかった。。 実行時間がかかりすぎる
© LayerX Inc. 22 - 社内用Webサイトに音声ファイルをアップロードしてもらう形にした - Stleamlit + LangChainでシュッと開発
- いったんPoCということで実装が楽なやり方に倒してしまった - 忙しいセールスにとって、わざわざWebサイトにアクセスしてアップロードするのは面倒だった - 結果的に思ったほど使ってもらえなかった。。(その2) 使うまでのハードルが高かった
© LayerX Inc. 23 - 通常のプロダクト開発と同じく、UXが良くないと使ってもらえない - といっても本業の片手間開発だとそこまで時間をかけられず。。。 - やるならちゃんとリソースを投入して開発しないと使ってもらえるものは作れない
やっぱりUXが良くないと使ってもらえない
ということで
© LayerX Inc. 25 CTO松本が初代所長に就任し、LLM Labsチームを立ち上げました https://tech.layerx.co.jp/entry/2023/04/04/110000 LLMの研究・サービスへの導入検証・新規事業探索などに取り組むチームとなっております! 興味ある方は是非応募をお待ちしております!! ※私の所属するバクラク
MLチームとは別の組織になります もちろんバクラクのMLエンジニア/ML Opsエンジニアの方も募集しています!!! https://open.talentio.com/r/1/c/layerx/pages/63504 https://open.talentio.com/r/1/c/layerx/pages/71190 カジュアル面談もやってますのでお気軽に!!! https://jobs.layerx.co.jp/6843b7b523ce45e2921e82a03e902edb LayerXではLLM Labsチームを立ち上げました!!!