業務効率化
【GAS】Googleドキュメントの文章を任意の文字数で区切るスクリプトと文字起こしデータをキレイにまとめるChatGPTプロンプト
タイトル:チャット型AIを活用した音声データの要約と効率的な取り組み
はじめに
いつもお世話になっております、日曜日コンサルティングの島田です。
今回は久しぶりのブログ投稿となります。最近注目を集めているチャット型AIシステムについて、私たちのコンサルティング業務における活用方法を模索してみました。特に、音声データからの文字起こしにおいて、その要約をAIに任せる取り組みについてご紹介します。
チャット型AIシステムの活用
近年、チャット型AIシステムが急速に普及し、その中でもChatGPTが顕著な進化を遂げています。汎用AIであるため、その活用方法は使い手の発想や力量によって幅広くなります。
そこで、私たちは音声データから文字起こししたテキストをAIに要約させることで、情報の整理や効率化を図ろうと考えました。
音声データの文字起こしとその課題
音声データから文字起こしを行うと、そのままでは冗長でまとまりがなく、読みづらいことが難点です。これを解決するために、AIを活用してテキストを要約し、読みやすくするという取り組みを始めました。
プロンプト(モデルはGPT4.0)
次の仕事を君にお願いします。君の記憶していることは全て忘れてください。
私は経営者です。君は優秀な日本人アシスタントです。次の仕事は、音声データから文字起こししたテキストを提供するので、簡潔にまとめてください。条件や要望を次に挙げます。
#条件や要望
・数字、期限、固有名詞、単位については省略することは許されません。重要な情報である為、まとめるときは、この情報を中心にまとめてください。
・音声データから文字起こししたテキストには、誤字脱字が多発しています。前後の文脈から内容を推察して補完してください。
・冗長な文章は好みません。簡潔にまとめてください。
・相づちは不要な情報です。積極的に省いてください。相づちの代表的な物は「はい」「うん」「えー」「はいはい」「そうですね」などの言葉です。
#音声データから文字起こししたテキスト
{テキスト}
#出力
スクリプト
function splitText() {
// ドキュメントを取得
var doc = DocumentApp.getActiveDocument();
// ドキュメント内の全テキストを取得
var text = doc.getBody().getText();
// 1000文字毎に分割して、それぞれのテキストを新しい段落に挿入する
var splittedText = text.match(/.{1,1000}/g);
for(var i=0; i<splittedText.length; i++) {
var pageBreak = "";
// 1ページ目以外は、前のページと区切る改ページを挿入する
if(i > 0) {
pageBreak = "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n";
}
// 区切りの罫線を挿入する
var border = "----------------------------------------\n";
doc.getBody().appendParagraph(border + "Page " + (i+1) + pageBreak + splittedText[i]);
}
}
// メニューを作成
function onOpen() {
var ui = DocumentApp.getUi();
ui.createMenu('カスタムメニュー')
.addItem('1000文字で分割する', 'splitText')
.addToUi();
}
文字数制限への対策
しかし、チャット型AIシステムではプロンプトとして入力できる文字数に制限があります。このため、文字数を意識しながらコピー作業を行うのは大変です。そこで、Google Apps Script(GAS)を利用して文字数を自動的に分割するプログラムを作成しました。これにより、効率的にAIに要約を依頼できるようになりました。
まとめ
本ブログでは、チャット型AIシステムを活用した音声データの文字起こしとその要約についてご紹介しました。この取り組みにより、より効率的かつ読みやすい情報整理が可能となり、コンサルティング業務における付加価値の向上が期待できます。今後も新たな技術やツールを積極的に取り入れ、さらなる業務改善に努めてまいります。
shimada.keisuke
0