【授業レポート】システム開発(3年) 第49週目
〜生成AIの安全性・倫理・責任設計:便利さの“裏側”を考える〜
第49週目は、これまで実装・改善してきた生成AI機能を前提に、
安全性・倫理・情報管理・責任の所在について考える授業を行いました。
テーマは、
「AIを使う技術」と同じくらい、“使い方の責任”を設計することが重要。
技術だけでは完結しない、エンジニアとしての姿勢を深める回となりました。
■ 先生の導入:「動くことと、正しいことは違う」
田中先生:「AIが便利に動くことと、それが“安全・公正・適切”であることは別問題です。
今日は“どこにリスクがあるか”を洗い出し、設計でどう対処するかを考えます。」
先生は黒板に次の4つを書きました。
- 誤情報(Hallucination)
- 偏り(Bias)
- 個人情報(Privacy)
- 責任(Accountability)
■ 今日のゴール
- 生成AIのリスクを具体的に説明できる
- 自分たちのシステムに潜むリスクを洗い出す
- 技術的対策と運用的対策を区別できる
- 「責任の所在」を設計に明示する
■ 実習①:リスクの洗い出しワーク
班ごとに、現在実装しているAI機能について、
起こりうる問題をリストアップしました。
例
- 要約が事実と異なる
- 差別的・不適切な表現が出る
- 入力に個人情報が含まれる
- AIの出力をユーザーが誤解する
- 出力が断定的すぎる
生徒A:「“間違える”だけじゃなく、“誤解させる”もリスクなんだ」
■ 実習②:技術的対策を整理する
次に、それぞれのリスクに対して
コードでできる対策を考えました。
技術的対策の例
- 入力長制限
- 禁止ワードフィルタ
- 出力形式を固定(JSONなど)
- AI出力をそのまま保存しない
- ログのアクセス制限
- 「AI生成」ラベル表示
先生:「技術で防げるものは、必ず技術で防ぐ。」
■ 実習③:運用的対策を整理する
コードだけでは防げない部分もあります。
運用的対策の例
- 利用規約の明示
- 利用目的の制限
- 管理者による監視
- 出力ログの定期レビュー
- バグ報告フォーム設置
生徒B:「コード外の設計も必要なんだ」
■ 実習④:責任の所在を明確にする
先生は重要な問いを投げかけました。
「AIが誤った情報を出したとき、誰の責任か?」
生徒たちは議論。
結論として共有された考え:
- AIは責任を取らない
- 最終的な責任は“システム提供者”
- だからこそ、
- 表示方法
- 補助機能としての位置づけ
- 過信させない設計
が重要
生徒C:「“AIのせい”にはできないんだ」
■ 実習⑤:安全設計チェックリスト作成
最後に、クラス共通の
生成AI安全設計チェックリストを作成しました。
チェック項目例
- [ ] 入力制限がある
- [ ] 出力検証がある
- [ ] フォールバックがある
- [ ] AI生成であることを明示している
- [ ] 個人情報を保存しない
- [ ] ログが安全に管理されている
- [ ] 利用目的が明確
■ クラス全体の気づき
- AIの問題は“技術だけ”ではない
- ユーザーに誤解を与えない設計が重要
- 透明性が信頼につながる
- 設計責任はエンジニア側にある
■ 先生のまとめのひとこと
「AIは道具です。
でも、その道具が社会に影響を与える以上、
設計者には責任があります。
今日学んだのは、
“便利さをコントロールする倫理観”です。
これがなければ、
どれだけ高度な技術も危ういものになります。」
■ 宿題(次週に向けて)
- 自分たちのAI機能の リスク対策表(技術/運用) を提出
- システムに追加すべき安全対策を2つ提案
- 「AI利用ポリシー」草案を作成(200〜400字)
■ 来週の予告:最終統合プロジェクト設計
次週は、
これまで学んだ
API連携・非同期設計・生成AI・安全設計
を統合した最終プロジェクト設計に入ります。
第49週目は、
“AIを扱う責任”を学ぶ重要な授業でした。
生徒たちは技術者としてだけでなく、
社会と向き合う設計者としての視点を育て始めています。

