生成AIとプロンプトエンジニアリング

識別AI vs 生成AI・プロンプト技法・主要モデル・RLHF
識別AIと生成AI
🔰 初心者

最近「生成AI」という言葉をよく聞きますが、従来のAIと何が違うんですか?

🎓 上級者

AIには大きく識別AI(Discriminative AI)生成AI(Generative AI)の2種類がある。識別AIは「分類・判定」が仕事で、生成AIは「新しいコンテンツを作り出す」のが仕事だよ。

識別AI vs 生成AI 識別AI(Discriminative AI) データを入力 → 分類・判定を出力 画像 AI 「猫」 例: 画像分類、スパム判定、感情分析 既存のカテゴリに「振り分ける」 → 新しいものは作らない 生成AI(Generative AI) 指示を入力 → 新しいコンテンツを生成 プロンプト AI 文章・画像 コード… 例: ChatGPT、Stable Diffusion、GitHub Copilot 学習データのパターンから「新しいもの」を作る → 創造的なコンテンツを生み出す 識別AIは「既存データを分類」、生成AIは「新しいデータを創造」するという根本的な違い

識別AI(Discriminative)

入力データがどのカテゴリに属するかを判定
  • 画像分類(猫 or 犬)
  • スパムメール判定
  • 感情分析(ポジティブ or ネガティブ)
  • 異常検知
  • 出力はラベル・確率

生成AI(Generative)

学習パターンに基づき新しいコンテンツを生成
  • 文章生成(ChatGPT)
  • 画像生成(Stable Diffusion、DALL-E)
  • コード生成(GitHub Copilot)
  • 音楽・動画生成
  • 出力はテキスト・画像・コードなど
💬 プロンプトとプロンプトエンジニアリング
🔰 初心者

ChatGPTに質問を入力しますよね。あの入力のことを「プロンプト」と呼ぶんですか?

🎓 上級者

その通り。プロンプト(Prompt)は生成AIに与える指示文・入力文のこと。そして、望んだ出力を得るためにプロンプトを工夫する技術がプロンプトエンジニアリングだよ。

プロンプトエンジニアリング(Prompt Engineering)

生成AIから望ましい出力を引き出すために、プロンプト(入力文)を設計・最適化する技術

モデルのパラメータを変更せずに、指示の仕方だけで出力の品質を大幅に向上させられる。
ファインチューニングが不要なため、コストが低く手軽に試せるのがメリット。

🛠️ プロンプトのテクニック
🔰 初心者

プロンプトを工夫するって、具体的にどんなテクニックがあるんですか?

🎓 上級者

代表的なのはZero-shotFew-shotChain of Thought(CoT)の3つだよ。例を見せるかどうか、思考過程を示すかどうかで使い分けるんだ。

プロンプトテクニックの比較 Zero-shot(ゼロショット) 例を示さず、指示だけ与える プロンプト: 「以下の文の感情を判定して ください。"この映画は最高!"」 出力: ポジティブ ✓ 最もシンプル ✓ 例が不要 △ 複雑なタスクでは精度が低い Few-shot(フューショット) 数個の例を一緒に与える プロンプト: 例1: "楽しかった" → ポジティブ 例2: "つまらない" → ネガティブ 例3: "普通だった" → 中立 では: "この映画は最高!" → ? 出力: ポジティブ ✓ 例でタスクの形式を明示 ✓ Zero-shotより精度が高い Chain of Thought(CoT) 思考過程を段階的に示させる プロンプト: 「りんごが3個、みかんが5個。 合わせて何個ですか? ステップバイステップで 考えてください。」 出力: 1. りんご=3個 2. みかん=5個 → 3+5=8個 ✓ 推論・算数に特に有効 ✓ 間違いが減り精度が大幅向上
テクニック方法特徴適したタスク
Zero-shot例なし、指示のみ最もシンプル。追加データ不要単純な分類・翻訳
One-shot1個の例を提示出力形式を1例で明示形式指定が必要なタスク
Few-shot数個の例を提示パターンを学習させる。精度向上分類・抽出・変換
Chain of Thought(CoT)「段階的に考えて」と指示推論過程を明示させて精度向上推論・算数・論理問題
Zero-shot / One-shot / Few-shot とは?

これらは「プロンプトに含める例の数」を表す用語:

Zero-shot:例を0個 → 指示文だけでタスクを実行
One-shot:例を1個 → 1つの例で出力形式を示す
Few-shot:例を数個 → 複数の例でパターンを示す

GPT-3の登場で注目された。モデルのパラメータを更新(ファインチューニング)せずに、プロンプトだけでタスクを実行できることをIn-context Learning(文脈内学習)と呼ぶ。

🤖 主要な文章生成AI
🔰 初心者

ChatGPT以外にも文章生成AIはあるんですか?

🎓 上級者

各社が競うように開発しているよ。OpenAIのChatGPT、GoogleのGemini(旧Bard)、MetaのLLaMAが三大勢力だね。

主要な文章生成AIの系譜 OpenAI GPT-3 2020 ChatGPT 2022 (GPT-3.5) ChatGPT Plus GPT-4搭載(有料版) GPT-4 2023 マルチモーダル対応 Google PaLM 2 2023 大規模LLM Bard PaLM 2搭載のチャットAI 名称変更 Gemini 2024〜 Bardの後継 Geminiモデル PaLM 2の後継LLM Meta LLaMA 2023 オープンソース LLaMA 2 2023 商用利用可 OpenAI・Google・Metaの三社が大規模言語モデルの開発をリード

ChatGPT / ChatGPT Plus(OpenAI)

GPTベースの対話特化AI。RLHFで安全で有用な回答を生成

ChatGPT(無料版):GPT-3.5ベース。2022年11月公開、2ヶ月で1億ユーザー突破。

ChatGPT Plus(有料版):GPT-4を搭載。テキストだけでなく画像入力にも対応(マルチモーダル)。プラグイン機能や高度な推論能力を提供。

Bard → Gemini(Google)

GoogleのAIチャットサービス。PaLM 2 → Geminiモデルへ進化

PaLM 2:Googleが2023年に発表した大規模言語モデル。多言語対応と推論能力に優れる。

Bard:PaLM 2を搭載したGoogleのチャットAI。ChatGPTの対抗サービスとして2023年公開。

Gemini:2024年にBardを名称変更。同名の新モデル「Geminiモデル」(PaLM 2の後継)を搭載。テキスト・画像・音声・動画のマルチモーダルにネイティブ対応。

LLaMA / LLaMA 2(Meta)

Metaが公開したオープンソースの大規模言語モデル

LLaMA(Large Language Model Meta AI, 2023年):研究者向けに公開。比較的小さいモデルサイズでも高い性能を実現。

LLaMA 2(2023年):商用利用も可能なオープンソースモデルとして公開。7B〜70Bパラメータの複数サイズを提供。

意義:オープンソースにより、企業や研究者が自由にカスタマイズ・ファインチューニングできる。大手独占ではなくAIの民主化に貢献。

🎯 RLHF — 人間のフィードバックによる強化学習
🔰 初心者

ChatGPTがあんなに自然に回答できるのは、RLHFのおかげなんですよね。もう少し詳しく知りたいです。

🎓 上級者

RLHFは3つのステップから成るよ。特に重要なのが報酬モデルポリシーの最適化だ。

RLHF の3ステップ Step 1: 教師あり微調整(SFT) 事前学習済みGPT ↓ 人間が書いた理想的な回答で 教師あり学習(微調整) SFTモデル (基本的な対話能力を獲得) 人間のデモンストレーターが プロンプトへの「模範回答」を作成 → それを教師データとして学習 Step 2: 報酬モデルの学習 SFTモデルが同じ質問に対して 複数の回答を生成 ↓ 人間がランク付け 「回答A > 回答C > 回答B」 報酬モデル(Reward Model) (回答の良し悪しをスコア化) 人間の好みのランキングから 「良い回答 = 高スコア」を学習 → 人間の代わりに評価する 「自動採点モデル」 Step 3: ポリシーの最適化 (PPOによる強化学習) SFTモデルが回答を生成 ↓ 報酬モデルがスコアを出す ↓ スコアを報酬として 強化学習(PPO)で更新 最終モデル(ポリシー) = ChatGPT 「報酬が高い回答を 生成するように」方策を改善 → 有用で安全な回答へ ポリシー=「どの状態でどう回答するか」の戦略。強化学習の用語
報酬モデル(Reward Model)とポリシー(Policy)

報酬モデル:人間のランキングデータから学習した「回答の良し悪しを自動採点するモデル」。
人間がすべての回答を毎回評価するのは不可能なため、人間の好みを代行するモデルを作る。

ポリシー(方策):強化学習の用語で「どの状態でどの行動を取るか」の戦略。
RLHFでは「どのプロンプトに対してどう回答するか」がポリシーにあたる。
報酬モデルのスコアを報酬としてPPO(Proximal Policy Optimization)でポリシーを更新し、より良い回答を生成する方策を獲得する。

📋 主要モデル比較
モデル / サービス開発元ベースモデル特徴
ChatGPTOpenAIGPT-3.5RLHF対話AI。2ヶ月で1億ユーザー
ChatGPT PlusOpenAIGPT-4有料版。マルチモーダル・プラグイン対応
BardGooglePaLM 2Googleの対話AI。→ Geminiに名称変更
GeminiGoogleGeminiモデルBardの後継。マルチモーダルにネイティブ対応
PaLM 2Google多言語・推論に強い大規模LLM
LLaMAMeta研究向けオープンソースLLM
LLaMA 2Meta商用利用可能なオープンソースLLM
⚠️ ハルシネーション(Hallucination)
🔰 初心者

生成AIが嘘をつくことがあるって聞いたんですが、本当ですか?

🎓 上級者

「嘘をつく」というより、事実に反する情報をもっともらしく生成してしまう現象だね。これをハルシネーション(幻覚)と呼ぶんだ。生成AIの最大の課題の一つだよ。

ハルシネーション(Hallucination / 幻覚)

LLMが事実に反する情報をもっともらしく生成する現象

なぜ起きるのか:
LLMは「次に来る確率が高いトークン」を予測して文章を生成しているだけで、事実かどうかを検証する仕組みを持っていない。特に学習データにない知識を求められた場合に発生しやすい。

問題が深刻な場面:
医療・法律・金融など正確性が重要な分野では、ハルシネーションが誤った判断・意思決定につながるリスクがある。

対策:RAG(検索拡張生成)、ファインチューニング、人間によるチェック(RLHF)など。

🔍 RAG(検索拡張生成)
🔰 初心者

ハルシネーションを防ぐ方法はあるんですか?

🎓 上級者

最も有力なアプローチがRAG(Retrieval-Augmented Generation / 検索拡張生成)だよ。生成AIが回答する前に、外部の知識ベースを検索して参照情報を取得し、それに基づいて回答を生成する仕組みなんだ。

RAG(Retrieval-Augmented Generation / 検索拡張生成)

生成時に外部の知識ベースを検索し、その情報を参照しながら回答を生成する手法

仕組み:ユーザーの質問に関連するドキュメントを外部知識ベースから検索(Retrieval)し、そのドキュメントを文脈としてLLMに与えて回答を生成(Generation)する。

ハルシネーション対策として最も有力:

  • LLMが持っていない最新情報や専門知識を外部から補完できる
  • 回答の根拠となるドキュメントを提示できるため、信頼性の検証が容易
  • モデルの再学習が不要で、知識ベースの更新だけで知識の更新も容易

活用例:企業内の社内文書を知識ベースとして利用し、社内情報に基づいた正確な回答を生成する社内チャットボットなど。

📝 まとめ
G検定で押さえるべきポイント