訪問介護のヘルパーが訪問先を出たあとに話した音声を文字にして、サービス内容・様子・申し送りを介護記録の項目に分けて登録する
訪問介護のヘルパーが、利用者宅を出たあとにスマートフォンへ1分ほど話します。その音声を Azure AI Speech で文字にし、提供したサービス・利用者の様子・申し送りを介護記録の項目に分け、訪問介護計画と照らしてから登録します。
- 生成AI
- Azure OpenAI Service/Claude/Gemini
- AIサービス
- Azure AI
- 対象業界
- 介護/医療
- 対象部門
- 総務
- 対象業務
- データ入力・転記/記録・議事録作成
- 主な課題
- 人手が足りない/入力作業が多い/引き継ぎができていない
- AIで行う処理
- 抽出
- 主な効果
- 入力漏れ削減/対応スピード向上/工数削減
- 導入難易度
- ★★★☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- ヘルパーが訪問を終え、利用者宅で紙のサービス提供記録にチェックと記述を書く
- 気になったことがあれば、移動中に事務所へ電話するか、メッセージを送る
- 週に1〜2回、記録を事務所に持ち込む
- 事務の担当が、紙を見ながら介護記録のシステムへ1件ずつ打ち込む
- 字が読めない、チェックが抜けている記録は、ヘルパーに電話で確かめる
- サービス提供責任者が、電話やメッセージで聞いた申し送りを、該当する利用者の記録に書き足す
- 月末に、記録と予定を突き合わせ、計画にあるサービスの記録漏れを探す
- 人ヘルパーが利用者宅を出たあと、スマートフォンのアプリでその日の訪問を選ぶ
- 人決まった順(したこと、様子、申し送り)で1分ほど話す
- 自動音声が保存され、中継の処理が Azure AI Speech の高速文字起こしに送る。その利用者のための語句の一覧も一緒に渡す
- 自動Azure OpenAI が文字起こしから、提供したサービス・様子・申し送りを項目ごとにJSONで取り出す
- 自動取り出したサービスを訪問介護計画と照らし、`done` / `not_mentioned` / `refused` / `unplanned` を付ける
- 自動結果をアプリに返す。`not_mentioned` があれば、その場で聞き返す
- 人ヘルパーが画面で確かめ、直してから確定する
- 自動確定した記録を介護記録のシステムへ登録する。申し送りは次の担当とサービス提供責任者に知らせる
- 人サービス提供責任者が、`refused` / `unplanned` と、体調に関わる申し送りを確かめる
各工程の詳しい説明を読む
- ヘルパーが訪問を終え、利用者宅で紙のサービス提供記録にチェックと記述を書く
- 気になったことがあれば、移動中に事務所へ電話するか、メッセージを送る
- 週に1〜2回、記録を事務所に持ち込む
- 事務の担当が、紙を見ながら介護記録のシステムへ1件ずつ打ち込む
- 字が読めない、チェックが抜けている記録は、ヘルパーに電話で確かめる
- サービス提供責任者が、電話やメッセージで聞いた申し送りを、該当する利用者の記録に書き足す
- 月末に、記録と予定を突き合わせ、計画にあるサービスの記録漏れを探す
(a)同じ内容を2回書いている。 ヘルパーが紙に書き、事務所がそれを打ち直します。1件の記録に、2人分の時間がかかっています。 打ち直しの待ちで、記録がシステムに入るのは訪問の数日後です。
(b)申し送りが記録に残らない。 「今日は食事を半分残した」「玄関の段差でふらついた」は、電話で伝わって終わります。聞いた人が書き足さなければ、次に入るヘルパーは知りません。 書き足されても、どの訪問の話かが曖昧になります。
(c)記録漏れが月末まで見つからない。 計画に排泄介助があるのにチェックが無い記録は、月末の突き合わせで初めて見つかります。その時点でヘルパーに聞いても、3週間前の訪問は覚えていません。
(d)自由記述が痩せる。 利用者宅で、利用者の前で書く時間は長く取れません。「特変なし」は、変わったことが無かったのではなく、書く時間が無かったことの表れであることが多いのです。
- 【人】 ヘルパーが利用者宅を出たあと、スマートフォンのアプリでその日の訪問を選ぶ
- 【人】 決まった順(したこと、様子、申し送り)で1分ほど話す
- 【自動】 音声が保存され、中継の処理が Azure AI Speech の高速文字起こしに送る。その利用者のための語句の一覧も一緒に渡す
- 【自動】 Azure OpenAI が文字起こしから、提供したサービス・様子・申し送りを項目ごとにJSONで取り出す
- 【自動】 取り出したサービスを訪問介護計画と照らし、
done/not_mentioned/refused/unplannedを付ける - 【自動】 結果をアプリに返す。
not_mentionedがあれば、その場で聞き返す - 【人】 ヘルパーが画面で確かめ、直してから確定する
- 【自動】 確定した記録を介護記録のシステムへ登録する。申し送りは次の担当とサービス提供責任者に知らせる
- 【人】 サービス提供責任者が、
refused/unplannedと、体調に関わる申し送りを確かめる
6番目が、この設計の分かれ目です。 計画にあって話に出てこなかったサービスは、ヘルパーがまだ訪問の記憶を持っているうちに聞き返します。 月末の突き合わせでは、もう答えられません。
7番目で確定するのはヘルパー本人です。 記録は、そのサービスを提供した人の記録です。AIが取り出した値を、本人が見て直したものだけを登録します。
02今回想定するシステム構成
ヘルパーのスマートフォン(訪問を選んで話す) │ 音声ファイル+訪問ID ▼【トリガー】音声の保存 Azure Functions(中継の処理) ├──▶ 訪問の予定と訪問介護計画を引く ├──▶ その利用者の語句の一覧を作る ▼ Azure AI Speech(高速文字起こし+フレーズリスト) │ 文字起こしと、文ごとの信頼度 ▼ Azure OpenAI(Microsoft Foundry) ── 構造化出力 │ サービス/様子/申し送り ▼ Azure Functions ── 訪問介護計画との照合(done / not_mentioned / refused / unplanned) ▼ アプリへ返す ──【ヘルパーが確認・確定】 ▼ 介護記録のシステムへ登録 + 申し送りの通知
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | 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(音声と文字起こしの控え) | 社内のファイルサーバー |
| 記録 | 既存の介護記録と請求のシステム | ― |
介護記録のシステムは、新しく足すものではありません。 足すのはスマートフォンのアプリ、中継の処理、音声認識と生成AIです。最初の準備は、訪問介護計画のサービス項目を、事業所のサービス項目の一覧にそろえることです。 計画が自由記述で書かれていると、照合ができません。
文字起こしには、Azure AI Speech の高速文字起こしを使います。 音声ファイルを渡すと同期で結果を返す仕組みで、実時間より速く返るとされています。5時間未満・500MB未満の音声が対象で、WAV、MP3、OPUS/OGG、AAC、WebM などを受け付けます。訪問のあとの1分ほどの音声には十分です。日本語(ja-JP)は高速文字起こしの対応言語に入っています。
リアルタイムの文字起こしにしないのは、話す場所を選ばせたいからです。 ヘルパーは車の中や、人のいない場所で話します。録音してから送る形なら、電波の弱い場所でも録音だけは済ませられます。
03どうやって実装するのか
処理の起点を決める
アプリで音声が保存されたことを起点にします。 ヘルパーは話す前に、アプリの画面でその日の予定から訪問を1件選びます。音声には必ず訪問IDが付いた状態で保存されます。 訪問を選ばずに録音を始めることはできないようにします。
保存された音声は、アプリから中継の処理へ送られます。電波が届かないときはスマートフォンの中にとどめ、つながった時点でまとめて送ります。 送った音声には受付の番号を返し、アプリに「送信済み」と出します。
訪問の終了から2時間たっても音声が届かない訪問は、ヘルパーに通知します。 話し忘れは、記録漏れの最大の原因です。翌日に気づいても、前日の訪問の様子は思い出せません。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 音声 | ヘルパーが訪問後に話した1分前後の音声 | スマートフォンのアプリ |
| 訪問の予定 | 訪問ID、利用者ID、担当ヘルパー、予定の開始・終了時刻、サービス種別 | 訪問の予定表 |
| 訪問介護計画 | その利用者の計画にあるサービス項目と、訪問ごとの内容 | 介護記録のシステム |
| サービス項目の一覧 | 事業所で使う項目名と、言い方のゆれ(「トイレ介助」→排泄介助など) | 事業所で用意する一覧 |
| 利用者ごとの語句 | 家族の呼び方、通っている事業所の名前、よく出る食べ物や薬の呼び方 | サービス提供責任者が登録 |
質を決めるのは、下の2つです。 サービス項目の一覧に言い方のゆれが無ければ、「お風呂の手伝い」が入浴介助のどれ(全身浴か部分浴か)に当たるかが決まりません。決まらないものは決まらないとして返させ、ヘルパーに選んでもらいます。
利用者ごとの語句は、音声認識の聞き違いを減らすために使います。 家族の名前やデイサービスの名前は、一般の辞書には載っていません。
データの取得方法を決める
文字起こしは、高速文字起こしのAPIに音声とその定義を送ります。
| 指定するもの | 値 | 理由 |
|---|---|---|
locales | ["ja-JP"] | 言語を指定すると精度が上がり、待ち時間が短くなるとされている |
phraseList | サービス項目の一覧+その利用者の語句 | 項目名と固有名詞の聞き違いを減らす。API バージョン 2025-10-15 以降で使える |
diarization | 使わない | 話すのはヘルパー1人。利用者宅の中で録音しない |
| 返ってくる値 | combinedPhrases の全文、phrases の文ごとの confidence と時刻 | 信頼度の低い文を画面で目立たせる |
フレーズリストは、認識を始める直前に渡す語句の一覧で、モデルの学習は要りません。 公式の案内では2,000語句を超えないようにし、長いほど品質と待ち時間に影響するとされています。事業所の全利用者の語句をまとめて渡さず、その訪問の利用者の語句だけを渡します。 他の利用者の家族の名前が候補に入ると、取り違えの元になります。
送る定義は、たとえば次のような形です(語句は一部)。
POST https://{リソース名}.cognitiveservices.azure.com/speechtotext/transcriptions:transcribe?api-version=2025-10-15
audio = 訪問IDを名前にした音声ファイル
definition = {
"locales": ["ja-JP"],
"phraseList": { "phrases": ["排泄介助", "部分浴", "清拭", "口腔ケア",
"見守り的援助", "ひまわりデイ", "<長女の呼び名>"] }
}
語句の一覧には、項目名だけでなく、その事業所で使う略し方も入れます。 「見守り的援助」を「見守り」と略すヘルパーが多いなら、両方を入れます。
訪問の予定と訪問介護計画は、介護記録のシステムから訪問IDで引きます。APIが無いシステムなら、毎朝その日の予定と計画を書き出したファイルを中継の処理が読む形でも足ります。
AIへ渡す前に整形する
- 音声の長さを確かめる … 10秒未満は録音の失敗として、アプリで録り直しを促します。3分を超えるものは話しすぎとして、そのまま処理しつつ印を付けます
- 形式をそろえる … アプリが録る形式(AAC など)のまま送れます。変換はしません
- 語句の一覧を作る … サービス項目の一覧と、その利用者の語句を合わせます
- 文字起こしの後で、信頼度の低い文に印を付ける …
confidenceが事業所で決めたしきい値を下回る文を、画面で色を変えて見せます - 利用者の氏名を置き換える … 文字起こしに利用者や家族の氏名が出てきたら、
<利用者><家族1>に置き換えてから生成AIへ渡します - 計画の項目を並べる … その訪問で計画されているサービス項目を、照合用の一覧として用意します
5番目は、話し方の決まりとあわせて効かせます。 ヘルパーには「利用者の名前は言わない」と決めてありますが、家族の呼び方などは自然に出ます。生成AIに渡すのは、記録の項目を取り出すのに要る範囲だけです。
AIに処理させる
させるのは、文字起こしから記録の項目を取り出し、それぞれに根拠の文を付けることだけです。
| 取り出すもの | やり方 | 判断できないときの扱い |
|---|---|---|
| 提供したサービス | 話に出たサービスを、サービス項目の一覧の名前に当てる | 一覧のどれか決まらなければ candidates に候補を並べる |
| 断られた・できなかったサービス | 「今日は入浴を断られた」などを、項目と理由に分ける | 理由が話に無ければ reason: null |
| 利用者の様子 | 食事の量、体調、気分、睡眠、皮膚の様子などを、話された言葉のまま書く | 話に無い項目は書かない |
| 申し送り | 次の担当やサービス提供責任者に伝えることを、1件ずつ分ける | 宛先が分からなければ to: "unspecified" |
| 体調に関わる言及 | 転倒、発熱、痛み、食欲の低下などに触れた文に印を付ける | 印を付けるだけ。重さは判断しない |
計画との照合は、AIにさせません。 AIが返すのは「話に出たサービス」と「断られたサービス」だけです。計画にあって話に出なかったものを not_mentioned にするのは、中継の処理の機械的な比較です。 AIに計画を渡して照合までさせると、計画にあるものを「実施した」と補ってしまいます。
| させないこと | 理由 |
|---|---|
| 計画にあるサービスを、話に無くても実施済みにする | 記録漏れを見つけたいのに、漏れが消える |
| 様子の評価(「状態は安定」など) | 評価はサービス提供責任者と医療職の仕事 |
| 体調の変化の重さの判断 | 受診の要否は医療職とケアマネジャーが決める |
| 時刻や利用者の特定 | 予定とアプリの選択から決める。声から取らない |
| 言葉の言い換え | 「半分残した」を「食欲不振」に書き換えない |
最後の行は、記録の信頼に関わります。 「半分残した」と「食欲不振」では、読む人の受け取り方がまったく違います。介護記録は、見たまま聞いたままを残すのが原則です。
指示内容を固定する
あなたは訪問介護事業所で、ヘルパーが訪問のあとに話した内容から
介護記録の項目を取り出す立場です。
文字起こしに書かれていることだけを使ってください。推測で補わないでください。
【取り出す項目】
1. services_done … 提供したサービス。下の「サービス項目の一覧」の名前で書く
2. services_refused … 断られた・できなかったサービスと、その理由
3. observations … 利用者の様子(食事、水分、体調、気分、睡眠、皮膚、排泄など)
4. handover … 次の担当やサービス提供責任者への申し送り。1件ずつ分ける
5. health_flags … 転倒、発熱、痛み、息苦しさ、食欲や水分の低下などに触れた文
【厳守事項】
- 話に出てこないサービスを、提供したことにしないでください。
- サービス項目の一覧のどれに当たるか決められないときは、候補をすべて
candidates に並べ、service を null にしてください。
- 様子は、話された言葉のまま書いてください。
「半分残した」を「食欲不振」のように言い換えないでください。
- 状態の評価(安定、悪化など)や、受診が必要かどうかを書かないでください。
- 各項目に、根拠にした文字起こしの文を evidence としてそのまま写してください。
- <利用者> <家族1> などは置き換えた記号です。中身を推測しないでください。
- 時刻と利用者は書かないでください。別に決まっています。
- 信頼度が低いと印の付いた文から取り出した項目には、low_confidence を true にしてください。
【サービス項目の一覧】{service_master}
【文字起こし】{transcript}
「話に出てこないサービスを、提供したことにしない」を最初に置くのが要です。 生成AIは、訪問介護らしい流れを知っています。排泄介助と食事介助が話に出れば、口腔ケアも当然したものとして足すことがあります。計画を渡さないのも、同じ理由です。
「言い換えない」も明記します。 記録の文体に整えようとすると、話し言葉を専門用語に置き換えます。置き換えた瞬間に、ヘルパーが見たものではなく、AIの解釈が記録になります。
出力形式を固定する
Azure OpenAI の構造化出力で、次の形のJSONを受け取ります。 構造化出力では、すべての項目を必須にし、省略したいものは null との共用体型で表します。オブジェクトには additionalProperties: false を付けます。
{
"visit_id": "V-20261007-0412",
"services_done": [
{ "service": "排泄介助", "candidates": [], "evidence": "", "low_confidence": false }
],
"services_refused": [
{ "service": "入浴介助(部分浴)", "reason": null, "evidence": "" }
],
"observations": [
{ "category": "meal", "text": "", "evidence": "" }
],
"handover": [
{ "to": "next_helper | coordinator | unspecified", "text": "", "evidence": "" }
],
"health_flags": [
{ "text": "", "evidence": "" }
]
}
1つ目の理由は、計画との照合を機械で行えることです。 services_done と services_refused の service は、サービス項目の一覧の名前で返ります。中継の処理はこれを計画の項目と並べ、次のように区分します。
| 区分 | 条件 | 扱い |
|---|---|---|
done | 計画にあり、services_done にある | そのまま登録 |
refused | 計画にあり、services_refused にある | 理由を確かめてから登録。サービス提供責任者へ |
not_mentioned | 計画にあるが、どちらにも無い | その場でヘルパーに聞き返す |
unplanned | 計画に無いが、services_done にある | サービス提供責任者へ。計画の見直しの材料 |
たとえば、計画が「排泄介助・食事介助・口腔ケア」の訪問で、ヘルパーが「トイレの介助と昼食の介助をしました。お昼は半分残されました。玄関の段差で少しふらつかれたので、次の方は手を添えてください」と話したとします。取り出されるのは、排泄介助と食事介助が services_done、「半分残された」が observations、手を添える件が handover、ふらつきが health_flags です。 口腔ケアはどこにも無いので、照合で not_mentioned になり、アプリが「口腔ケアは実施しましたか」と聞き返します。
2つ目は、health_flags を記録と別に流せることです。 体調に触れた文は、記録の登録を待たずにサービス提供責任者へ知らせます。重さを判断するのは人ですが、知らせるのは早いほどよいからです。
3つ目は、evidence で確認が速くなることです。 ヘルパーは、取り出された項目と、その根拠になった自分の言葉を並べて見られます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| スマートフォンのアプリ | 中継の処理のAPI | 音声と訪問IDを受け、照合結果を返す |
| 訪問の予定表・介護記録のシステム | API、または毎朝の書き出しファイル | 予定と計画を引く。確定した記録を登録する |
| Azure AI Speech | 高速文字起こしのAPI | 文字起こしと文ごとの信頼度を返す |
| Azure OpenAI | Chat Completions API(構造化出力) | 記録の項目を返す |
| 事務所への通知 | メッセージ | health_flags、refused、unplanned を知らせる |
介護記録のシステムへの登録は、ヘルパーが確定したものだけです。 確定前のものは中継の処理の側に置き、システムには入れません。登録できない形式のシステムなら、確定した記録を取り込み用のファイルに書き出し、事務所が1日1回取り込みます。 それでも打ち直しは無くなります。
人が確認する
- ヘルパーが画面で確かめる … 取り出された項目と根拠の文を見て、直してから確定します。
not_mentionedには「実施した」「実施しなかった(理由)」のどちらかを選びます - 信頼度の低い文を確かめる … 色の変わった文は、聞き違いの可能性があります。特に食事の量や薬の名前は、目で確かめます
- サービス提供責任者が
refusedとunplannedを見る … 断られたサービスが続く利用者、計画外のサービスが続く利用者を見つけます health_flagsを受けて判断する … ケアマネジャーや医療職に伝えるかを決めます。伝えるかどうかを決めるのは人です
1番目の確定は、訪問のあと30分以内を目安にします。 次の訪問先に着く前に済ませる想定です。確定されないまま夕方になった記録は、事務所から声をかけます。
目標は、1,500件をならして1件3分です。 ヘルパーが話して確かめるのに2分、事務所とサービス提供責任者の確認がならして1分という想定です。
例外に対処する
| 起きること | 対応 |
|---|---|
| 音声が10秒未満 | 録音の失敗として、アプリで録り直しを促す |
| 電波が届かない | スマートフォンに保存し、つながった時点で送る |
| 高速文字起こしが429や5xxを返す | 間隔を延ばしながら再試行する。公式は最大5回、2・4・8・16・32秒の間隔を推奨 |
| 400・401など | 再試行しない。設定の誤りとして管理者へ |
| 信頼度の低い文が多い | 画面で目立たせ、ヘルパーに話し直しを選べるようにする |
| サービス項目の一覧に当たらない | candidates を画面に出し、ヘルパーに選んでもらう |
| 利用者の名前を言ってしまった | 置き換えて処理し、音声の控えの保存期間を短くする |
| 訪問の終了から2時間、音声が届かない | ヘルパーに通知する |
| 1回の訪問で2回話した | 同じ訪問IDの2本目を追記として扱い、両方の文字起こしを合わせて取り出し直す |
再試行の考え方は、公式の案内に合わせます。 高速文字起こしには利用の上限があり、同時に多く送ると429が返ります。夕方に音声がまとまって届く時間帯に起きやすいので、受付の番号だけ先に返し、処理は順に回します。
記録を残す
- 音声の控え(保存期間を短く決め、記録の確定後に消す運用も検討する)
- 文字起こしの全文と、文ごとの信頼度
- 生成AIが返したJSONと、照合の結果
- ヘルパーが直した差分 … どの項目を、どう直したか
- 確定した日時と、介護記録のシステムへ登録した日時
health_flagsを知らせた日時と、サービス提供責任者の対応
記録そのものの保存は、介護記録のシステムの側で行います。 運営基準では、提供した具体的なサービスの内容等の記録を、その完結の日から2年間保存することとされています。この構成の控えは、それとは別に、誤りを追うために持つものです。
ヘルパーが直した差分は、語句の一覧を直す材料です。 同じ言葉の聞き違いが続くなら、その利用者の語句に足します。
04実装レベルの3段階
最小構成では件数がさばけません。 録音を手で移すので、1,500件には使えません。確かめるための段階です。 半自動化で、1件8分が5分程度になります。 ヘルパーが紙に書く時間は無くなりますが、事務所が結果を見て打ち込む作業と、抜けの確認の電話が残ります。本格構成で3分になり、この段階が本記事の想定です。 差が大きいのは、計画との照合をその場で行うと、月末の突き合わせと確認の電話が要らなくなるからです。 段階を飛ばさないでください。 半自動化で1か月回すと、サービス項目の一覧のゆれと、聞き違いの多い利用者が先に分かります。そこを直してから照合を入れるほうが、not_mentioned の空振りが減ります。
05工数削減シミュレーション
導入後 1,500件 × 3分 ÷ 60 = 75 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 登録ヘルパーが1日に何件も利用者宅を回り、訪問のたびに紙のサービス提供記録を書いたうえで、事務所でサービス提供責任者が介護記録のシステムへ打ち直している訪問介護事業所。ヘルパーが業務用のスマートフォンを持っている場合。申し送りが口頭や電話で済まされ、記録に残らないことが問題になっている場合。訪問介護計画の内容をデータで持っている場合。
- 月の訪問が数十件で、手書きと転記で足りる事業所。ヘルパーにスマートフォンを持たせられない、または訪問の合間に静かに話せる場所が無い地域。介護記録のシステムがすでにチェック式の入力に対応していて、打ち直しが発生していない場合。なお、利用者の状態の変化をどう評価し、ケアマネジャーや医療職に何を伝えるかの判断はこの構成では行いません。
07最小構成で試す方法
- ヘルパー3名に協力してもらい、1週間、訪問のあとにスマートフォンの録音機能で話してもらう(利用者の名前は言わない)
- 録音を、手元の文字起こしの機能で文字にする
- 社内で利用を認められた生成AIの画面に、文字起こしとサービス項目の一覧を貼り、第7章のプロンプトで項目を取り出させる
- 同じ訪問の紙の記録と並べ、話に無いサービスを足していないか、言い換えていないかを最初に見る
- 紙の記録より情報が多かった訪問を数える
5番目を必ず数えてください。 紙に「特変なし」と書いた訪問で、声の記録には「玄関でふらついた」が入っていたなら、この構成の価値は時間の削減より先にそこにあります。
| 出てきた内容 | 判断 |
|---|---|
| 紙の記録と同じか、より多くが取れた | アプリと中継の処理を作る段階に進む |
| 話に無いサービスが足された | 指示の書き方で直る。構成は有効 |
| 聞き違いで項目が取れない | 語句の一覧が先。 家族やデイの名前を足して試し直す |
3行目が出ることは珍しくありません。 一般の文字起こしは、地域の地名や家族の呼び方に弱いからです。本番ではフレーズリストでその利用者の語句を渡せるので、試しの段階の聞き違いをそのまま判断材料にしないでください。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 話に無いサービスが実施済みになる | 計画をAIに渡さない。 照合は機械で行う |
| 話し言葉が専門用語に言い換えられる | 言い換えを禁じ、evidence で原文を並べる |
| 家族やデイの名前を聞き違える | その利用者の語句をフレーズリストで渡す |
| 全利用者の語句を渡して取り違える | 訪問ごとに、その利用者の語句だけを渡す |
| 利用者の名前を声で言ってしまう | 訪問は画面で選ぶ。話し方の決まりを周知し、置き換えで守る |
| 話し忘れで記録が無い | 訪問の終了から2時間で通知する |
| 夕方に429が続く | 受付だけ先に返し、間隔を延ばして再試行する |
| 「お風呂の手伝い」がどの項目か決まらない | 一覧に言い方のゆれを足し、決まらないものは候補で返す |
| 計画が自由記述で照合できない | 計画の項目を一覧にそろえるのを先に終える |
| ヘルパーが確定しないまま溜める | 夕方に未確定の件数を事務所が見る |
| 外で話して周りに聞かれる | 車の中や人のいない場所で話す決まりにする |
上の2行が、この構成の失敗のほとんどです。 どちらも、記録がヘルパーの見たものからずれる失敗です。記録漏れが消え、AIの解釈が記録になれば、記録を取る意味がなくなります。
下の2行も、運用に乗るかを分けます。 確定が溜まれば打ち直しの待ちと同じことになり、外で話して聞かれれば利用者の信頼を失います。仕組みより先に、話す場所と確定の時間を決めてください。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 利用者の心身の状態、食事や排泄の様子、家族の状況、そして病歴や服薬に触れる言葉です。要配慮個人情報に当たるものを含みます。
- 声で利用者を特定させない … 利用者は画面で選んだ訪問から決め、名前を話させません。出てしまった名前は、生成AIに渡す前に置き換えます
- 音声の控えを長く持たない … 記録の確定後、誤りを追うのに要る期間だけ残します。記録そのものは介護記録のシステムにあります
- 利用者と家族に説明する … 訪問のあとに音声で記録を作ること、録音は利用者宅の中では行わないことを、契約の際に説明しておきます
- 体調の判断をAIに任せない …
health_flagsは印を付けるだけです。受診や連絡の要否は、サービス提供責任者と医療職が決めます - 記録の確定は本人が行う … AIの取り出した値を、ヘルパーが確かめずに登録する設計にしません。記録は、そのサービスを提供した人の記録です
- スマートフォンの紛失に備える … 送信済みの音声は端末から消し、アプリには端末の認証をかけます
誤りが起きた場合のリスクは、実施していないサービスを記録することと、伝えるべき様子を落とすことの2つです。 前者は請求の根拠を誤らせ、後者は利用者の安全に関わります。どちらも、計画を渡さないことと言い換えを禁じることで、設計の段階で防ぎます。
10まず何から始めるか
1週目:サービス項目の一覧をそろえる
事業所で使うサービス項目の名前を一覧にし、ヘルパーが口にする言い方のゆれを集めます。訪問介護計画の項目が、この一覧の名前で書かれているかを確かめます。
2週目:3名で試す
ヘルパー3名に1週間、訪問のあとに録音してもらい、生成AIの画面で項目を取り出します。紙の記録と並べ、話に無いサービスを足していないかを最優先で見ます。 紙より情報が多かった訪問も数えます。
3週目:話し方の決まりを作る
したこと、様子、申し送りの順に話す。利用者の名前は言わない。車の中など人のいない場所で話す。 この3つを1枚にまとめ、ヘルパー全員に配ります。利用者と家族への説明の文面もあわせて作ります。
4週目:アプリと文字起こしをつなぐ
録音して訪問IDと一緒に送るアプリと、高速文字起こしまでを作ります。この時点では照合を入れず、文字起こしの信頼度と聞き違いの多い語句を見ます。
2か月目: 生成AIでの取り出しと計画との照合を足し、not_mentioned の件数を利用者ごとに数えます。3か月目以降: 介護記録のシステムへの登録と申し送りの通知を足し、1件8分が何分になったかを実測します。利用者ごとの語句の一覧が育ち、事務所での打ち直しが無くなった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
高速文字起こしが同期のAPIで実時間より速く結果を返すこと。音声が5時間未満・500MB未満であること。WAV、MP3、OPUS/OGG、AAC、WebM などに対応すること。locales を指定すると精度と待ち時間が改善すること。phraseList が API バージョン 2025-10-15 以降で使えること。結果に combinedPhrases と、文ごとの confidence を含む phrases が返ること。429や5xxで最大5回、2・4・8・16・32秒の間隔で再試行し、400・401などは再試行しないよう案内されていること | Microsoft Learn: Use the fast transcription API | 2026-10-07 |
| フレーズリストが認識の直前に渡す語句の一覧で、モデルの学習が要らないこと。高速文字起こしで使え、バッチ文字起こしでは使えないこと。2,000語句を超えないようにし、長いほど品質と待ち時間に影響すること | Microsoft Learn: Improve recognition accuracy with phrase list | 2026-10-07 |
| 日本語(ja-JP)が音声認識の高速文字起こしに対応していること。カスタムの語句としてフレーズリストが挙げられていること | Microsoft Learn: Language and voice support for the Speech service | 2026-10-07 |
構造化出力でモデルが指定したJSONスキーマに従うこと。すべての項目を必須にし、省略したいものは null との共用体型で表すこと。additionalProperties: false が必要なこと | Microsoft Learn: Azure OpenAI で構造化出力を使用する方法 | 2026-10-07 |
| 指定訪問介護事業者が、提供した具体的なサービスの内容等を記録すること(第19条第2項)。その記録を完結の日から2年間保存すること(第39条第2項) | e-Gov法令検索(法令API): 指定居宅サービス等の事業の人員、設備及び運営に関する基準 | 2026-10-07 |
記録の保存期間は、自治体の条例で別に定められていることがあります。所在地の自治体の定めを確かめてください。 本記事は公開仕様で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0695)についてのご相談はこちらから。
