Appearance
B-04: 安全フィルター
| 項目 | 内容 |
|---|---|
| ステータス | ✅ Done |
| 優先度 | P0 |
| 依存 | B-03(ベースプロンプト) |
| 参照 | コーチ設計 - 禁止表現・安全ルール |
ユーザーストーリー
ユーザーとして、危機的な状態にあるときにコーチが適切に対応してほしい。自傷や希死念慮の兆候があるときは、専門機関への橋渡しをしてほしい。
受け入れ条件
- [x] コーチの応答が禁止表現ルールに違反していないことを検証
- [x] 医療・法律の専門助言を避ける
- [ ] 危機シグナル(自傷・希死念慮・極端な絶望)の検出時に危機対応テンプレートで応答
- [ ] ログ・アラートの仕組み
実装内容
LangGraphフローの safety_filter ノード
api/app/services/coach_graph.py の safety_filter() 関数で実装:
- コーチの応答テキストをClaude に渡して安全性を判定
- 判定基準: 医療診断、自傷行為の肯定、個人情報の要求
unsafe判定の場合、安全なフォールバックメッセージに差し替え- 結果は
is_safeフラグとしてワークフロー状態に保持
フォールバックメッセージ
「ごめんね、うまく言葉にできなかった。もう少し教えてもらえるかな?」残タスク
- 危機シグナル検出の専用ノード追加(現状は応答側のみフィルタ)
- False positive率の計測・チューニング
- 検出時のログ出力・アラート通知