社会保険労務士が顧問先と電話で受けた労務相談の録音を文字にして、要旨・事実・回答・宿題を相談記録の項目に分けて登録する
顧問先の人事担当者と電話で話した労務相談の録音を文字にし、相談の要旨・聞き取った事実・伝えた回答・宿題に分けて相談記録の下書きにします。担当の社労士は下書きを直して確定するだけになり、折り返しの約束が宿題として残ります。
- 生成AI
- Azure OpenAI Service/Claude/Gemini
- AIサービス
- Azure AI
- 対象業界
- 士業
- 対象部門
- 人事/総務
- 対象業務
- 要約/記録・議事録作成
- 主な課題
- 引き継ぎができていない/書類作成に時間がかかる/期限・対応漏れが起きる
- AIで行う処理
- 要約
- 主な効果
- 属人化解消/工数削減/機会損失防止
- 導入難易度
- ★★★☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 顧問先から電話を受け、社労士が手元のメモ帳に書きながら相談に答える
- 電話のあと、すぐに次の電話や手続きの作業に戻る
- 手が空いたときに、メモを見ながら案件管理の相談記録を書く。思い出せないところは録音を聞き返す
- 「確認して折り返す」と言ったものは、自分の手帳かメモに書いておく
- 折り返しの調べものをして、顧問先へ電話かメールで答える
- 担当が休んだ日に同じ顧問先から電話が来ると、ほかの社労士が相談記録を開いて前回の中身を追う
- 人社労士が顧問先からの電話に答える。メモはこれまでどおり取ってよい
- 自動通話が終わると、クラウドPBXが2チャンネルの録音を保管場所に書き出す
- 自動書き出しをきっかけに処理が動き、発信元の番号から顧問先を特定する
- 自動音声認識が、事務所側と顧問先側のチャンネルを分けて文字にする
- 自動生成AIが、要旨・事実・回答・宿題・関係する制度に分けた下書きを作る
- 自動下書きを案件管理の相談記録に「確認待ち」で入れ、担当の社労士に知らせる
- 人担当の社労士が、その日のうちに下書きを読み、直して確定する
- 自動確定した宿題を、期限と担当を付けて事務所の共有のタスク一覧に載せる
- 自動期限の前日に、宿題が終わっていなければ担当に知らせる
各工程の詳しい説明を読む
- 顧問先から電話を受け、社労士が手元のメモ帳に書きながら相談に答える
- 電話のあと、すぐに次の電話や手続きの作業に戻る
- 手が空いたときに、メモを見ながら案件管理の相談記録を書く。思い出せないところは録音を聞き返す
- 「確認して折り返す」と言ったものは、自分の手帳かメモに書いておく
- 折り返しの調べものをして、顧問先へ電話かメールで答える
- 担当が休んだ日に同じ顧問先から電話が来ると、ほかの社労士が相談記録を開いて前回の中身を追う
(a)記録が数日遅れる。 3番目は手が空いたときにやる作業なので、月末や算定基礎届・年度更新の時期には後回しになります。3日後に書く記録は、メモと記憶の範囲でしか書けません。 メモに無かったことは、記録からも消えます。
(b)事実と回答が混ざる。 メモには「Aさん 遅刻3回 注意済み 懲戒? → 就業規則の該当条文確認、弁明の機会」のように、相手が言ったことと自分が言ったことが1行に並びます。記録に書き直すとき、どちらが言ったことかを思い出しながら書くことになります。 混ざったまま書かれた記録は、後で読み返しても、事務所が何と答えたのかが分かりません。
(c)折り返しの約束が漏れる。 4番目の宿題は、社労士個人の手帳にしか残りません。担当が忙しい週に、顧問先から「あの件どうなりましたか」と電話が来て初めて気づきます。 顧問先は待っていたのに、事務所の誰もそれを知らなかったことになります。
(d)担当が休むと前回が追えない。 6番目で開いた記録が3行しか無ければ、代わりの社労士は前回の経緯を顧問先に聞き直すことになります。 顧問先からすると、同じ説明を二度することになります。
- 【人】 社労士が顧問先からの電話に答える。メモはこれまでどおり取ってよい
- 【自動】 通話が終わると、クラウドPBXが2チャンネルの録音を保管場所に書き出す
- 【自動】 書き出しをきっかけに処理が動き、発信元の番号から顧問先を特定する
- 【自動】 音声認識が、事務所側と顧問先側のチャンネルを分けて文字にする
- 【自動】 生成AIが、要旨・事実・回答・宿題・関係する制度に分けた下書きを作る
- 【自動】 下書きを案件管理の相談記録に「確認待ち」で入れ、担当の社労士に知らせる
- 【人】 担当の社労士が、その日のうちに下書きを読み、直して確定する
- 【自動】 確定した宿題を、期限と担当を付けて事務所の共有のタスク一覧に載せる
- 【自動】 期限の前日に、宿題が終わっていなければ担当に知らせる
7番目が、この設計の分かれ目です。 下書きは、社労士が確定するまで記録になりません。AIの下書きをそのまま記録にすると、聞き違いや取り違えが、事務所の公式の回答として残ります。 確定の操作を人に残すのは、記録の重さに見合う確認を省かないためです。
8番目を確定のあとにしているのも同じ理由です。 AIが拾った宿題には、雑談の中の「今度また」まで入ることがあります。社労士が「これは宿題」と確定したものだけを、タスク一覧に載せます。
02今回想定するシステム構成
顧問先からの電話(クラウドPBXで録音) │ 通話の終了時に2チャンネルの音声を書き出し ▼【トリガー】保管場所への録音の保存 Azure Functions ── 発信元の番号から顧問先を特定、フレーズリストを用意 ▼ Azure AI Speech(高速文字起こし) │ チャンネル0(事務所)とチャンネル1(顧問先)を分けて文字にする ▼ Azure OpenAI ── 要旨/事実/回答/宿題/関係する制度に分ける ▼ Azure Functions ── 案件管理の相談記録に「確認待ち」で登録、担当へ通知 ▼ 【担当の社労士が直して確定】 ▼ 共有のタスク一覧(宿題)── 期限の前日に未了を通知
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | Azure AI Speech(高速文字起こし、チャンネルごとの文字起こし、フレーズリスト) | Google Cloud Speech-to-Text、Amazon Transcribe |
| 生成AI | Azure OpenAI(Microsoft Foundry)(構造化出力で相談記録の項目に分ける) | Claude API、Gemini API |
| 連携 | Azure Functions(顧問先の特定、記録の登録、宿題の通知) | Azure Logic Apps |
| 保管 | Azure Blob Storage(録音と文字起こしの控え) | 事務所のファイルサーバー |
| 電話 | クラウドPBX(通話の録音と書き出し) | 各社のPBX |
案件管理とクラウドPBXは、新しく足すものではありません。 足すのは、録音を受け取って文字にし、下書きを入れる中継の処理です。クラウドPBXから録音を書き出す方法は製品ごとに違うため、この部分は利用環境に応じた個別実装になります。 案件管理への登録も、APIのある製品なら直接、無い製品なら取り込み用のファイルを作る形になります。
文字起こしには、Azure AI Speech の高速文字起こしを使います。 音声ファイルを渡すと同期で結果を返す仕組みで、対象は5時間未満・500MB未満の音声です。形式は WAV、MP3、OPUS/OGG、FLAC、WMA、AAC、AMR、WebM などを受け付けます。日本語(ja-JP)は、言語の一覧で高速文字起こしの対応が示されています。
この題材でいちばん効くのは、チャンネルの指定です。 公式の説明では、高速文字起こしは既定ですべてのチャンネルを1つにまとめてから文字にしますが、channels にチャンネルの番号を渡すと、最大2つのチャンネルを別々に文字にできます。返ってくる発話の1つずつに channel が付くので、事務所側の発言か顧問先側の発言かが、AIの推測ではなく録音の構造で決まります。
話者の分離(diarization)を使わないのは、話者の番号が人と結び付かないからです。 話者の分離は1つのチャンネルの中で声を聞き分ける仕組みで、返るのは speaker の0や1という番号です。どちらが社労士かは、結局だれかが決めることになります。 チャンネルで分かれた録音があるなら、そちらを使います。
音声のデータの扱いも、公式に示されています。 高速文字起こしでは、顧客が渡したデータを Microsoft が保持・保存しないとされています。録音と文字起こしの控えは、事務所が用意した保管場所にだけ残ります。
03どうやって実装するのか
処理の起点を決める
クラウドPBXが通話の録音を保管場所に書き出したことを起点にします。 1日分をまとめて夜に処理すると、下書きが翌朝になり、その日のうちに確定するという7番目の手順が崩れます。 通話が終わってから数分で下書きが届くようにします。
対象にするのは、顧問先の番号との通話だけです。保管場所に書き出す前に、PBXの側で事務所の内線どうしの通話と、顧問先以外の番号との通話を外します。外せないPBXなら、Azure Functions の最初の処理で、発信元の番号を顧問先の一覧と突き合わせて外します。
通話が1分未満のものも対象から外します。「担当の方はいらっしゃいますか」「後でかけ直します」だけの電話に記録の下書きを作っても、確認の手間が増えるだけです。 処理が終わった録音には「処理済み」の印を付け、印の無い録音の数が未処理の数になるようにします。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 通話の録音 | 2チャンネルの音声。通話の開始時刻、長さ、内線番号、相手の番号 | クラウドPBX |
| 文字起こし | チャンネルごとの発話、時刻、信頼度 | Azure AI Speech |
| 顧問先の情報 | 顧問先名、担当の社労士、人事担当者の名前、就業規則の版と主な制度 | 案件管理 |
| 直近の相談記録 | その顧問先の過去3か月の確定済みの記録と、未了の宿題 | 案件管理、共有のタスク一覧 |
| 制度の語の一覧 | 事務所で使う制度・手続きの名前(フレーズリストに使う) | 事務所で用意する一覧 |
質を決めるのは、直近の相談記録と未了の宿題です。 「先日の件ですが」で始まる電話は、前回の記録が無いと何の件か分かりません。未了の宿題を渡しておくと、今回の電話でその宿題が片づいたかどうかも拾えます。
顧問先の就業規則の版を渡すのは、回答の根拠を記録に残すためです。 社労士が電話で「御社の規則の第○条で」と言った場合、その規則がどの版だったかは、半年後に規則が改定されると分からなくなります。
データの取得方法を決める
文字起こしは、Azure Functions から高速文字起こしの API を呼ぶだけです。要求の定義に、言語、チャンネル、フレーズリストの3つを入れます。
| 指定するもの | 値 | 何のためか |
|---|---|---|
locales | ja-JP | 言語の判定を省き、認識を安定させる |
channels | [0, 1] | 事務所側と顧問先側を別々に文字にする |
phraseList | 制度の語、顧問先名、人事担当者の名前 | 一般の辞書に無い語を認識させやすくする |
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 発話ごとの文字 | 応答の phrases の text | 下書きの材料 |
| 発話のチャンネル | phrases の channel | 事務所側か顧問先側かの区別 |
| 発話の時刻 | offsetMilliseconds/durationMilliseconds | 下書きの各項目から録音の該当箇所へ戻る |
| 信頼度 | phrases の confidence | 聞き取りの怪しい発話の印 |
フレーズリストは、呼び出しのたびに渡せます。 公式の説明では、フレーズリストはモデルの学習を要さず、認識の直前に渡す仕組みです。顧問先ごとに、その会社の名前、人事担当者の名前、その会社の制度の呼び方を足して渡します。 「みなし残業」を「固定残業代」と呼ぶ会社もあれば、「定額手当」と呼ぶ会社もあります。一覧は大きくしすぎないようにし、公式の目安である2,000語句を超えない範囲に収めます。
顧問先の特定は、PBXの記録の相手の番号を、案件管理の顧問先の電話番号と突き合わせて行います。人事担当者が携帯電話からかけてくる場合に備え、担当者の携帯番号も顧問先の情報に持たせます。
AIへ渡す前に整形する
- 通話の選別 … 顧問先の番号との通話だけを残し、1分未満の通話を外します
- チャンネルの確認 … 録音が2チャンネルであることを確かめます。1チャンネルにまとまっている録音は、PBXの書き出しの設定を直すまで、話者を分けない扱いにします
- チャンネルの割り当て … 事務所側がどちらのチャンネルに入っているかを、PBXの仕様で確かめて固定します
- 顧問先の特定 … 相手の番号から顧問先を決めます。決まらなければ、担当の社労士に「どの顧問先か」を選ばせます
- フレーズリストの用意 … 事務所の制度の語の一覧に、その顧問先の固有の語を足します
- 保留音と転送の区間を外す … 保留中の音楽や、転送の待ち時間の無音を、時刻の区間として外します
3番目を一度確かめておかないと、すべての記録で事実と回答が入れ替わります。 PBXによって、内線側が0番のこともあれば1番のこともあります。導入のときに、社労士が自分の名前を名乗る試しの通話を1本録り、どちらのチャンネルに入ったかを見て決めます。
2番目は、録音の設定の問題です。 1チャンネルにまとまった録音でも文字にはできますが、誰が言ったかが分からない記録は、この構成の目的を果たしません。 話者を分けないことを下書きに明示し、社労士の確認を重くします。
AIに処理させる
させるのは、チャンネルで分かれた文字起こしを、相談記録の5つの項目に分けることです。 回答が正しいかの評価はさせません。
| 項目 | 何を書くか | どちらのチャンネルから |
|---|---|---|
| 相談の要旨 | 何についての相談かを2〜3文で | 両方 |
| 事実 | 顧問先が説明した事情(誰が、いつ、何をした、規則はどうなっている) | 顧問先側だけ |
| 回答 | 社労士が伝えた考え方と、勧めた対応 | 事務所側だけ |
| 宿題 | 事務所が預かったこと、顧問先にお願いしたこと。期限が言われていればその期限 | 両方(誰の宿題かを分ける) |
| 関係する制度 | 会話に出てきた制度・手続きの名前 | 両方 |
事実は顧問先側の発言だけから、回答は事務所側の発言だけから書かせます。 この制約が、第1章で書いた「誰が言ったかを分ける」の実体です。顧問先の担当者が「解雇できますよね」と言った発言を、回答の欄に入れることはできません。
宿題は、誰の宿題かで2つに分けます。 「就業規則を確認して明日お電話します」は事務所の宿題、「では、本人の勤怠の記録を送ってください」は顧問先の宿題です。事務所の宿題だけが、事務所のタスク一覧に載ります。 顧問先の宿題は、届いたかどうかを次の電話で確かめる材料として記録に残します。
| させないこと | 理由 |
|---|---|
| 回答の正誤の評価や補足 | 回答の責任は社労士にある。記録は言ったとおりに残す |
| 言われていない根拠条文の追加 | 社労士が挙げていない条文を書き足すと、事務所の回答が変わる |
| 期限の推定 | 「なるべく早く」を「3日以内」に直さない |
| 個人の評価 | 「問題のある社員」のような言い方を記録に入れない |
| 録音に無い内容の補完 | 聞き取れなかった区間を前後から埋めない |
1行目と2行目が、いちばん起きやすい失敗です。 社労士が「たぶん大丈夫だと思いますが、念のため確認します」と言った回答を、AIは「問題ありません(労働基準法第○条)」のようにきれいにまとめがちです。「たぶん」と「念のため確認」が消えると、事務所が断定したことになります。 留保の言葉は、回答の一部として残させます。
指示内容を固定する
あなたは社会保険労務士事務所の事務職員として、顧問先との電話の
文字起こしから相談記録の下書きを作る立場です。
文字起こしに書かれていることだけを使ってください。推測で埋めないでください。
【話者】
- channel 0 は事務所の社会保険労務士の発言です。
- channel 1 は顧問先の担当者の発言です。
話者をこの区別以外で判断しないでください。
【書く項目】
- summary ... 何についての相談かを2〜3文で
- facts ..... 顧問先が説明した事情。channel 1 の発言だけから書く
- answers ... 社会保険労務士が伝えた考え方と勧めた対応。channel 0 の発言だけから書く
- tasks ..... 事務所が預かったこと(owner: office)と、
顧問先にお願いしたこと(owner: client)
- topics .... 会話に出てきた制度・手続きの名前
【厳守事項】
- answers は、社会保険労務士が言ったとおりの強さで書いてください。
「たぶん」「念のため確認します」「原則として」などの留保の言葉を消さないでください。
- 社会保険労務士が挙げていない条文や根拠を書き足さないでください。
- 回答が正しいかどうかを評価したり、補足したりしないでください。
- 期限は、会話の中で日付や「明日」「今週中」と言われた場合だけ
due_text にそのまま写してください。言われていなければ空にしてください。
- 各項目には、根拠にした発話の開始時刻(offset_ms)を付けてください。
- 信頼度の低い発話(low_confidence が true)を根拠にした項目は、
needs_listen を true にしてください。
- 従業員の人柄や評価を表す言い方は、話した人の言葉として
引用する場合を除いて書かないでください。
- 未了の宿題の一覧にある件が今回の電話で片づいた場合は、
resolved_task_ids にその番号を入れてください。
【顧問先の情報】{client_profile}
【未了の宿題】{open_tasks}
【直近の相談記録】{recent_records}
【文字起こし(channel、offset_ms、text、low_confidence)】{transcript}
「留保の言葉を消さない」を明記しないと、回答はきれいな断定文になります。 記録として読みやすくなる代わりに、事務所が電話で言っていないことを記録が言い出します。 指示で禁じたうえで、確認の画面では回答の欄の根拠の発話を並べて見せます。
各項目に発話の時刻を付けさせるのは、確認を速くするためです。 下書きの「回答」の1行を押すと、録音のその時刻から再生できます。録音を頭から聞き返さずに、疑わしい1行だけを聞けます。
出力形式を固定する
次の形のJSONで受け取ります。 Azure OpenAI の構造化出力(response_format に json_schema を strict: true で渡す方式)を使い、形を固定します。
{
"client_id": "",
"call_id": "",
"summary": "",
"facts": [
{ "text": "", "offset_ms": 0, "needs_listen": false }
],
"answers": [
{ "text": "", "hedge": "none | hedged | pending_check", "offset_ms": 0, "needs_listen": false }
],
"tasks": [
{ "owner": "office | client", "text": "", "due_text": "", "offset_ms": 0 }
],
"topics": [""],
"resolved_task_ids": [""],
"speaker_separation": "channel | none"
}
公式の説明では、構造化出力ではすべての項目を必須にし、additionalProperties を false にします。 省略したい項目は、null を許す型にして表します。due_text のように言われなければ空になる項目も、項目そのものは必ず返る形にします。 返ってこない項目と、空だった項目を区別しなくて済みます。
1つ目の理由は、hedge で回答の強さを残せることです。
hedge | 意味 | 確認の画面での扱い |
|---|---|---|
none | 言い切った回答 | 根拠の発話を並べて見せる |
hedged | 「原則として」「たぶん」などの留保つき | 留保の言葉が残っているかを見る |
pending_check | 「確認して折り返す」 | 対応する事務所の宿題があるかを見る |
pending_check の回答に、対応する事務所の宿題が無ければ、処理の側で警告を出します。 「確認します」と言ったのに宿題に載っていないのは、(c)の折り返しの漏れそのものです。
2つ目は、speaker_separation で記録の確かさを示せることです。 録音が1チャンネルだった通話は none になり、確認の画面に「話者を分けていません」と出します。 事実と回答の区別が確かでない記録を、ほかの記録と同じ顔で残さないためです。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| クラウドPBX | 録音の書き出し | 通話ごとの2チャンネルの音声と、通話の記録 |
| Azure AI Speech | API呼び出し | チャンネルごとの文字起こし |
| Azure OpenAI | API呼び出し | 相談記録の項目への分割 |
| 案件管理 | APIまたは取り込み用のファイル | 相談記録に「確認待ち」で登録 |
| 共有のタスク一覧 | 追記 | 確定した事務所の宿題を、期限と担当付きで載せる |
| 事務所のチャット | 通知 | 下書きが届いたことと、期限前日の未了の宿題 |
案件管理の記録は、「確認待ち」から「確定」へ社労士が変えるまで、ほかの社労士の画面では下書きと分かる表示にします。 確定前の下書きを、代わりの社労士が事実として読まないようにするためです。
顧問先には何も送りません。 下書きを顧問先へのメールの文案に使うことはできますが、送るかどうかと文面は社労士が決めます。
人が確認する
担当の社労士は、通話の当日のうちに下書きを確定します。 記憶が新しいうちなら、下書きを読むだけで正しいかが分かります。
- 回答の欄を先に読む … 自分が言ったとおりの強さで書かれているか。
hedgedとpending_checkの留保が残っているか - 事実の欄を読む … 顧問先が言ったことが、自分の言葉に置き換わっていないか
- 宿題を確定する … AIが拾った宿題のうち、本当に宿題のものだけを残し、期限を入れる
needs_listenの行を聞く … 時刻から再生し、聞き取りの誤りを直す- 確定する … 直した箇所は、直す前の下書きと一緒に残ります
1番目を先にするのは、記録の中でいちばん重いのが回答だからです。 事実の小さな聞き違いより、事務所が言っていない断定が記録に残るほうが、後で困ります。
目標は、360件をならして1件5分です。 5分のうち多くは回答の欄の読み合わせで、needs_listen が多い通話は長くなります。それより多い月は、録音の音質か、フレーズリストの語の足りなさを疑います。
例外に対処する
| 起きること | 対応 |
|---|---|
| 録音が1チャンネル | 文字にはするが speaker_separation を none にし、確認の画面で明示 |
| 相手の番号から顧問先が決まらない | 下書きを作らずに保留し、担当の社労士に顧問先を選ばせる |
| 顧問先側で複数の人が話す | チャンネルでは分けられない。事実の欄は「顧問先」の発言としてまとめる |
| 1回の電話で複数の相談 | 相談ごとに下書きを分ける。分け目は社労士が確認で決める |
| 通話の途中で別の社労士に転送 | 転送の前後で担当が変わる。両方の社労士に確認を回す |
| 音声が5時間以上・500MB以上 | 対象外。電話の相談ではまず起きないが、起きたら分割する |
| 信頼度の低い発話が多い | 下書きの冒頭に「聞き返しが必要」と出し、全体を聞く扱いにする |
| 文字起こしの API が応答しない | 録音を未処理のまま残し、次の回にやり直す |
3行目と4行目が、運用で最も多く出ます。 顧問先の会議室のスピーカーで社長と人事担当が一緒に話す電話は珍しくありません。誰の発言かを細かく分けたいなら、その電話だけは社労士が確認で書き足します。
記録を残す
- 通話の録音(2チャンネル)と、通話の記録(日時、長さ、内線、相手の番号)
- 文字起こしの結果の全文(チャンネル、時刻、信頼度)
- AIが返した下書きと、そのとき渡したフレーズリストと未了の宿題
- 社労士が直した箇所(直す前、直した後、直した人、日時)
- 確定した相談記録と、確定した宿題の完了の日時
pending_checkに宿題が付かなかった件数
4つ目を残すのは、下書きの質を見るためです。 社労士が毎回同じ種類の直しをしているなら、指示の書き方かフレーズリストに直すところがあります。
最後の行は、折り返しの漏れの見張りです。 この数が0でない月は、「確認します」と言ったのに宿題にしなかった通話があります。
04実装レベルの3段階
最小構成では件数がさばけません。 1本ずつ文字にして貼るので、確かめるための段階です。 半自動化で、1件15分が8分程度になります。 下書きはできますが、案件管理への貼り付けと、宿題の書き出しが手で残ります。本格構成で5分になり、この段階が本記事の想定です。 差が大きいのは、顧問先ごとの画面を開いて貼る作業と、宿題を別の一覧に写す作業が、1件ずつの手作業だからです。 段階を飛ばさないでください。 半自動化の下書きを1か月見ると、社労士ごとの直し方の癖と、フレーズリストに足すべき語が分かります。そこを直してから案件管理に直接入れるほうが、確認の時間が短くなります。
05工数削減シミュレーション
導入後 360件 × 5分 ÷ 60 = 30 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 顧問先が100社前後あり、人事担当者からの電話の相談を社会保険労務士が毎日何件も受けている事務所。通話のあとに録音を聞き返したり、手元のメモを思い出したりしながら相談記録を書いていて、記録が数日遅れることがある場合。担当の社労士が休んだときに、ほかの社労士が前回の相談の中身を電話の前に追えない場合。クラウドPBXで通話を録音しており、録音を2チャンネル(事務所側と相手側)で書き出せる場合。
- 顧問先が十数社で、相談の多くがメールで届く事務所。通話の録音について顧問先の了解を得ていない、または得る予定のない事務所。相談記録を残す習慣がなく、記録の項目そのものがまだ決まっていない場合。なお、相談への回答の内容が法令に照らして正しいかの判断は、この構成では代替できません。
07最小構成で試す方法
- 先月の録音から、社労士の了解を得て、相談の電話を5本選ぶ(うち1本は「確認して折り返す」があった電話にする)
- その5本について、実際に書いた相談記録を用意する
- 手元の音声の文字起こしの機能で文字にし、話者ごとに分かれた形で書き出す
- 生成AIの画面に貼り、「事務所側の発言だけから回答を、相手側の発言だけから事実を書き、預かった宿題を分けてください。留保の言葉を消さないでください」と指示する
- 出てきた下書きを、実際の相談記録と突き合わせる
5本は必ずやってください。 中継の処理を組む前に、「話者が分かれていれば、事実と回答を分けて書けるのか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 実際の記録と同じか、それより詳しい下書きが出た | 録音の書き出しと文字起こしの連携に進む |
| 回答が断定に書き換わった | 指示の書き方で直る。構成は有効 |
| 事実と回答が入れ替わった | 録音のチャンネルの割り当てが先。 AIの問題ではない |
3行目が出たら、PBXの書き出しの設定を見直してください。 1チャンネルの録音を話者の分離で分けていると、どちらが社労士かが通話ごとに入れ替わることがあります。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 事実と回答が入れ替わる | チャンネルの割り当てを試しの通話で確かめて固定する |
| 回答が断定に書き換わる | 留保の言葉を消さないと指示し、hedge で強さを残す |
| 言っていない条文が書き足される | 根拠の追加を禁じ、確認の画面で根拠の発話を並べる |
| 「確認します」が宿題に載らない | pending_check に宿題が無ければ警告する |
| 雑談の「今度また」が宿題になる | 宿題は社労士が確定したものだけをタスク一覧に載せる |
| 顧問先の固有の語を聞き違える | 顧問先ごとのフレーズリストを渡す |
| 顧問先が決まらない | 担当者の携帯番号も案件管理に持たせる |
| 1チャンネルの録音が混ざる | speaker_separation を none にし、確認を重くする |
| 下書きを確定せずに溜める | 当日中の確定を決まりにし、未確定の件数を毎朝知らせる |
| 下書きを事実として読まれる | 確定前は「確認待ち」の表示にする |
| 相談記録の書き方が社労士ごとに違う | 項目を事務所で1つに決めてから始める |
上の3行が、この構成の失敗のほとんどです。 どれも「誰が、どの強さで言ったか」が記録で崩れるという同じ問題です。チャンネルで話者を決め、留保の言葉を残すことの2つで、ほぼ防げます。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 顧問先の名前と人事担当者の名前、そして相談の対象になった従業員の勤怠、処分、健康、家庭の事情です。休職や復職の相談では、病名や通院の状況が話されることもあります。
- 秘密を守る義務を前提に設計する … 社会保険労務士法第21条は、開業社会保険労務士と社会保険労務士法人の社員が、正当な理由なく業務に関して知り得た秘密を漏らし、又は盗用してはならないと定めています。録音、文字起こし、下書きの保管場所と、見られる人の範囲を、導入前に決めます
- 録音することを顧問先に伝えておく … 顧問契約か利用の案内に、通話を録音し、記録の作成に音声認識と生成AIを使うことを書きます
- データが残る場所を把握する … 高速文字起こしでは、Microsoft は渡されたデータを保持・保存しないとされています。録音と文字起こしの控えは、事務所が用意した保管場所にだけ置きます
- 確定は社労士が行う … 相談への回答は、社会保険労務士法第2条が業務として定める労務管理などについての相談・指導そのものです。記録にどう残すかも、その社労士が決めます
- 従業員の評価を記録に持ち込まない … 下書きに「問題社員」のような言い方を書かせません。顧問先の担当者の言葉として残す必要があるときは、引用として残します
- 記録の保存期間を決める … 社会保険労務士法第19条は、業務に関する帳簿に事件の名称や依頼を受けた年月日などを記載し、帳簿閉鎖の時から2年間保存することを求めています。相談記録と録音をどこまで残すかは、これを下限に事務所で決めます
誤りが起きた場合のリスクは、事務所が言っていない回答が記録に残ることと、預かった宿題が記録から落ちることの2つです。 前者は留保の言葉を消すと起き、後者は pending_check を見張らないと起きます。どちらも確認の画面と警告で拾える形にしておきます。
10まず何から始めるか
1週目:録音のチャンネルを確かめる
クラウドPBXの録音の書き出しが2チャンネルに対応しているかを確かめ、試しの通話を1本録って、事務所側がどちらのチャンネルに入るかを決めます。 あわせて、顧問先に録音とAIの利用を伝える文面を用意します。
2週目:相談記録の項目を決める
要旨・事実・回答・宿題・関係する制度の5つを、事務所の相談記録の形として決めます。社労士5名で、先月の記録を1件ずつ持ち寄り、この形に書き直してみます。
3週目:5本で試す
録音を5本選び、手元の文字起こしと生成AIで下書きを作らせます。回答が断定に書き換わっていないか、宿題が拾えているかを最優先で見ます。
4週目:録音から下書きまでをつなぐ
Azure Functions で録音の書き出しを受け、高速文字起こしと下書きを作り、担当の社労士にメールで送るところまで作ります。この時点では案件管理に入れず、社労士が下書きを貼って確定します。
2か月目: 顧問先の特定と案件管理への登録を足し、宿題をタスク一覧に載せます。3か月目以降: 期限前の通知と pending_check の警告を足し、1件15分が何分になったかを実測します。通話の当日に記録がそろい、折り返しの漏れが0の月が続いた時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
高速文字起こしの対象が5時間未満・500MB未満の音声で、WAV、MP3、OPUS/OGG、FLAC、WMA、AAC、AMR、WebM などを受け付けること。既定ではすべてのチャンネルを1つにまとめて文字にし、channels で最大2つのチャンネルを別々に文字にできること。話者の分離が1つのチャンネルの中で話者を分けること。応答の phrases に channel、offsetMilliseconds、durationMilliseconds、confidence が入ること。phraseList を指定できること | Microsoft Learn: Use the fast transcription API | 2026-10-08 |
| フレーズリストが認識の前に渡す仕組みでモデルの学習を要さないこと。フレーズリストは2,000語句を超えないことが目安とされていること | Microsoft Learn: Improve recognition accuracy with phrase list | 2026-10-08 |
日本語(ja-JP)が高速文字起こしの対応言語に含まれていること | Microsoft Learn: Language and voice support for the Speech service | 2026-10-08 |
| 高速文字起こしでは、顧客が渡したデータを Microsoft が保持・保存しないとされていること | Microsoft Learn: Data, privacy, and security for speech to text | 2026-10-08 |
response_format に json_schema を strict: true で渡して応答の形を固定できること。すべての項目を必須にし、省略したい項目は null との共用体の型で表すこと。additionalProperties を false にすること | Microsoft Learn: 構造化出力 | 2026-10-08 |
| 社会保険労務士の業務に、労務管理その他の労働に関する事項等について相談に応じ、又は指導することが含まれること(第2条第1項第3号)。業務に関する帳簿に事件の名称、依頼を受けた年月日などを記載し、帳簿閉鎖の時から2年間保存すること(第19条)。正当な理由なく業務に関して知り得た秘密を漏らし、又は盗用してはならないこと(第21条) | e-Gov 法令API: 社会保険労務士法 | 2026-10-08 |
相談への回答の内容と、記録への残し方は、担当の社会保険労務士が決めてください。 本記事は各製品の公式ページと法令の条文で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-1058)についてのご相談はこちらから。
