ChatGPTで医療従事者の声を分類する──プロンプトエンジニアリングと感情分析の実践

■ はじめに

日本の医療現場では、慢性的な人手不足や夜勤業務、患者対応のストレスなどから、医療従事者の心身への負担が年々増加しています。
特に近年では、新人離職、バーンアウト(燃え尽き症候群)、メンタル疾患による長期休職といった課題が表面化しており、医療法人・施設運営者の間でも「現場スタッフの声の見える化」が重要なテーマとなりつつあります。

そんな中、生成AI(ChatGPT)を活用して、自由記述コメントから感情傾向や危険兆候を分類・可視化する取り組みが注目を集めています。
本記事では、OpenAIのChatGPT APIをPythonから活用し、医療現場向けの感情分類システムを構築する具体的な方法をご紹介します。
プロンプトエンジニアリングの考え方や実装コード、さらには応用の方向性まで詳しく解説します。


■ 背景:なぜ医療現場にAIによる感情分類が必要なのか

医療現場では、日々の業務に対するフィードバックを集める目的で、スタッフ向けの月次アンケートやストレスチェックが実施されることがあります。
その中でも特に重要なのが、自由記述コメント欄です。

例:

「夜勤が続いていて、眠れずに体調を崩しています。」
「職場の雰囲気が少しずつ良くなってきて嬉しいです。」
「患者さんの対応がつらく、少し気持ちが沈んでいます。」

このような記述には、スタッフの心理的・身体的な状態を示すシグナルが多く含まれています。
しかし、現場マネージャーや人事担当が毎回すべてを目視でチェックするのは非現実的です。
また、本人が素直にストレスや悩みを吐露できているとは限らず、「見えないSOS」が埋もれてしまうケースも少なくありません。

こうした課題に対し、ChatGPTを用いた**AIによる一次スクリーニング(分類と要約)**を導入することで、以下のような効果が期待できます:

  • コメント全体のポジティブ/ネガティブ傾向の把握
  • 危険兆候を含む発言の早期発見
  • 集計レポート化による経営層への定量的フィードバック
  • 無記名のままでも対応すべき声を拾える

■ プロンプト設計:医療向けの感情分類を行うために

生成AIはプロンプト次第で出力の質が大きく変わります。
今回は、以下のような用途特化型プロンプトを設計します:

あなたは医療従事者のメンタルヘルスを支援するAIです。
以下の自由記述コメントを読み取り、内容が「ポジティブ」「ネガティブ」「ニュートラル」のどれに該当するかを判定し、その理由を簡潔に述べてください。

【コメント】夜勤が続いていて体力的に限界です。

出力フォーマット:
感情分類:◯◯
理由:◯◯◯◯

ポイントは以下の3点:

  • 役割を明示(医療現場の支援者として)
  • 出力フォーマットを固定(後処理しやすく)
  • 背景文脈の共有(夜勤・体調不良・患者対応など)

こうすることで、AIはより適切に医療現場の実情に即した出力を行ってくれるようになります。

■ 実装コード(Python + OpenAI Chat API)

以下は、PythonからChatGPT API(GPT-4)を使って実際に分類を実行するコード例です:

import openai

# OpenAI APIキー(環境変数やVaultで管理を推奨)
openai.api_key = "sk-xxxxx"

def classify_medical_comment(comment: str) -> str:
    prompt = f"""
あなたは医療従事者のストレスケアを支援するAIです。
以下の自由記述コメントを「ポジティブ」「ネガティブ」「ニュートラル」のいずれかに分類し、その理由を簡潔に述べてください。

【コメント】{comment}

出力形式:
感情分類:<分類>
理由:<簡潔な理由>
    """
    
    response = openai.ChatCompletion.create(
        model="gpt-4",
        messages=[
            {"role": "system", "content": "あなたは医療福祉領域の感情分析を行う専門家です。"},
            {"role": "user", "content": prompt}
        ],
        temperature=0.2
    )
    
    return response.choices[0].message['content']

# 使用例
example = "夜勤が続いていて体力的に限界です。"
result = classify_medical_comment(example)
print(result)

■ 出力例

感情分類:ネガティブ  
理由:継続的な夜勤による疲労と「限界」という表現から、ストレスが高く心身に負担がかかっている状態と判断されます。

■ 応用:リスク検出フラグの追加

プロンプトをさらに拡張することで、特定のキーワード(例:「限界」「辞めたい」「倒れたい」)が含まれている場合に、**「危険フラグ:あり」**などのラベルを付けることも可能です。

コメント内に「限界」「辞めたい」「もう無理」などの表現が含まれている場合は、
危険フラグ:あり
と出力に含めてください。

このような仕組みを用いれば、無記名アンケートの中から、最も緊急性の高い声を優先的に拾い上げることができます。

■ 効果的なプロンプト改善サイクル(PDCA)

プロンプトは一度作って終わりではなく、現場データとの突き合わせと改善の繰り返しが重要です。以下のようなPDCAサイクルが有効です:

フェーズ内容
Plan医療現場の状況・専門用語・心理状態に合わせてプロンプトを設計
DoAPIを実行し分類結果を出力
Check人事・看護部門とのレビューで出力内容の適否を検証
Act表現や出力条件を微調整し再実行へ

特に医療領域では、「感情の機微」がデリケートなテーマであるため、**文脈をどう共有するか(system prompt含む)**が肝になります。

■ 今後の展望と応用アイデア

今回紹介した感情分類機能は、他にも以下のような形で発展が可能です:

  • 部署別・時系列での傾向可視化(ダッシュボード連携)
  • SlackやTeamsなどの社内チャットにAI聞き役を常駐させる
  • 定期アンケートをPDFやWord形式で自動レポート化
  • LlamaIndex等を活用し、医療マニュアルや手順書とのQA連携

■ まとめ

ChatGPTとプロンプトエンジニアリングは、単なる技術ではなく、医療現場の人間関係と働き方を支える手段としても活用の可能性があります。
誰かがSOSを出した時、それに気づけるかどうかは、ツール設計にかかっていると言っても過言ではありません。

生成AIは、決して万能ではありません。
ですが、問い方(プロンプト)を工夫することで、人を支える精度とスピードを高めることができます。


■ 自社紹介

弊社でも、こうしたプロンプトエンジニアリングの技術を応用し、
企業内のストレス可視化や従業員支援に活用できるAIチャットの設計・実装を進めています。
現在開発中の「スタスクAIチャット(仮)」では、業務ドキュメント連携や匿名相談対応など、
組織のメンタルヘルス支援をより実用的に支える仕組みを目指しています。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です