Part 3: 生成AI の基礎
Chapter 18: AI の限界と注意点
ハルシネーション、セキュリティ、著作権
18.1 ハルシネーション(もっともらしい嘘)
**ハルシネーション(幻覚)**とは、AI が事実ではない情報を、あたかも正しいかのように自信満々に出力する現象です。LLM の構造上、避けられない問題です。
ハルシネーションが起きやすいケース:
- 存在しないライブラリのメソッド名や引数
- 古い API の仕様(バージョンが上がって変更されたもの)
- 実在しない論文・文献の引用
- 知名度の低い人物・企業の詳細情報
- 最新の出来事・数値データ
ハルシネーション対策:
- 重要な情報は必ず公式ドキュメントで確認する — 特にメソッド名・引数・設定値
- 「確認してください」と依頼する — 「この情報の出典を教えてください」と聞く
- コードは必ず動作確認する — 生成されたコードを盲目的に使わない
- 数値・統計・引用は独自に調査する — AI の出力をそのまま報告書に使わない
18.2 セキュリティリスク
AI を業務で使う際には、情報セキュリティの観点が欠かせません。
情報漏洩リスク
絶対に AI チャットに貼り付けてはいけないもの:
- 顧客の個人情報(氏名・住所・メールアドレス・電話番号)
- 認証情報(パスワード・API キー・アクセストークン)
- 未公開の財務情報・ビジネス戦略
- 社外秘扱いのコードや仕様書
対策:
- 個人情報はダミーデータに置き換えてから質問する(例:
田中太郎→ユーザーA) - 社内のプライベートリポジトリのコードは、コンテキストを説明した上で最小限だけ貼る
- Enterprise プランや社内 LLM を使うと、データが学習に使われない設定が可能
コードインジェクションリスク
AI が生成したコードに意図しない挙動が含まれる可能性があります。
# AI が生成したように見えるが危険なコード例
import subprocess
def process_user_input(user_data):
# AI が「簡単な方法」として提示したが、コマンドインジェクションの脆弱性がある
subprocess.run(f"echo {user_data}", shell=True)生成されたコードは、セキュリティの観点で必ずレビューしてから使用してください。
18.3 著作権・ライセンスの注意点
AI が生成するコードや文章には、著作権に関する複雑な問題が存在します。
コードに関する注意点:
| リスク | 内容 | 対策 |
|---|---|---|
| 学習データの流出 | 特定のライセンスのコードがそのまま出力される可能性 | 生成コードを商用利用する前にライセンス確認 |
| GPL のコンタミ | GPL ライセンスのコードが混入するとプロダクト全体に影響 | 法務・リーガルチェックを行う |
| 特許侵害 | 特定のアルゴリズムに特許がある場合がある | 業界固有の知識でダブルチェック |
文章・画像に関する注意点:
- AI が生成した文章を「自分が書いた」として提出することは、組織のルール次第では問題になる
- 著名な作家・キャラクターのスタイルを模倣させる使い方は、一部で訴訟事例がある
- 最終的な著作権の帰属は各国・各サービスの利用規約によって異なる
現時点(2025年)では法整備が追いついていない部分も多く、重要な意思決定をする前に社内の法務担当や専門家に確認することを推奨します。
18.4 社内ポリシーとガバナンス
AI の利用は個人の判断だけでなく、組織としてのルール整備が不可欠です。
確認すべき社内ポリシーの例:
- 使用が許可されている AI ツールはどれか
- どのデータを AI に入力してよいか
- 生成物の商用利用・公開のルール
- AI 利用の記録・報告義務
ガバナンスの観点で大切なこと:
- 「AI が言ったから」は言い訳にならない。最終責任は人間にある
- AI の使用履歴を業務記録として残す習慣をつける
- チーム内で AI 活用のベストプラクティスを共有する
18.5 AI の出力を検証する習慣
AI の出力を鵜呑みにせず、適切に検証する習慣が重要です。
検証のチェックリスト:
- コードは実際に動いたか?
- エッジケースや異常系は考慮されているか?
- 引用されたライブラリ・メソッドは実在するか?
- セキュリティ上の問題はないか?(SQL インジェクション・XSS など)
- 数値・統計は一次情報で確認したか?
- 社内機密情報が含まれていないか?
AI はあくまで「下書き生成機」です。最終的な品質保証は人間の責任です。AI の出力を適切に使いこなすことが、現代エンジニアに求められるスキルです。