Few-shot と Chain-of-Thought(実践テクニック)
このモジュールで学ぶこと
- Few-shot prompting の正しい組み立て方
- Chain-of-Thought(CoT)で精度を上げる方法
- Zero-shot CoT(「ステップ・バイ・ステップで考えて」)の使い所
- Role prompting(役割付与)と Structured output の応用
学習目標
- Few-shot で例示を3個用意し、業務タスクの精度を上げられる
- 複雑な意思決定で CoT を発動させられる
- Role 指定と出力形式を組み合わせて、業務に直結する応答を得られる
目次
- セクション1: Few-shot prompting の本質
- セクション2: Chain-of-Thought の原理
- セクション3: Zero-shot CoT の威力
- セクション4: Role prompting
- セクション5: Structured output
- セクション6: 組み合わせの実例
- まとめ
セクション1: Few-shot prompting の本質
Few-shot とは「いくつかの例を見せてから本題のタスクを依頼する」テクニックだ。
研究では、巨大言語モデルが少数の例示から パターンを学習する能力 を持つことが示されている。
出典: Brown et al. (2020) "Language models are few-shot learners"(Wikipedia "Prompt engineering" 経由・取得日: 2026-05-20・URL: https://en.wikipedia.org/wiki/Prompt_engineering )
基本構造
maison → house
chat → cat
chien →
これだけで「フランス語 → 英語」のタスクが伝わる。明示的に「翻訳して」と書かなくてもよい。
業務での Few-shot 設計
業務でFew-shotを組むときは、以下の3点を意識する。
- 例は2-5個(多すぎても精度は伸びない)
- 多様性のある例を選ぶ(簡単・標準・難しい のバランス)
- 本題と同じ形式で書く(入力と出力の対応を一貫させる)
良い Few-shot の例
顧客からの問い合わせを「製品」「請求」「契約」「その他」に分類してください。
例1:
入力: 「ログインできません」
出力: 製品
例2:
入力: 「今月の請求書はいつ届きますか」
出力: 請求
例3:
入力: 「来月で解約したいです」
出力: 契約
例4:
入力: 「サポート営業時間を教えてください」
出力: その他
分類対象:
「パスワードを忘れました」
このように 入力 / 出力のペア を明示するのが王道だ。
セクション2: Chain-of-Thought の原理
Chain-of-Thought(CoT)とは、最終回答の前に推論プロセスを書かせる テクニックである。
CoTは算数・常識推論・複雑な意思決定で精度を上げることが研究で示されている。
出典: Wei et al. (2022) "Chain-of-Thought Prompting Elicits Reasoning in Large Language Models"(Wikipedia "Prompt engineering" 経由・取得日: 2026-05-20・URL: https://en.wikipedia.org/wiki/Prompt_engineering )
CoT を使わない例
質問: あるカフェには1日150人が訪れます。
平均客単価は800円です。月の営業日数が25日のとき、
月商はいくらですか?
回答: 3,000,000円
正しいが、 過程が見えない ので検算できない。
CoT を発動させる書き方
質問: あるカフェには1日150人が訪れます。
平均客単価は800円です。月の営業日数が25日のとき、
月商はいくらですか?
ステップ・バイ・ステップで考えてから、最終回答を出してください。
回答:
ステップ1: 1日の売上 = 150人 × 800円 = 120,000円
ステップ2: 月商 = 120,000円 × 25日 = 3,000,000円
最終回答: 3,000,000円
過程が出ると 検算と修正が可能になる。業務で使うときに極めて重要な性質だ。
セクション3: Zero-shot CoT の威力
CoTのために例を用意するのは手間がかかる。そこで使えるのが Zero-shot CoT だ。例を一切示さず、プロンプトの末尾に「ステップ・バイ・ステップで考えてください」と書くだけ でCoTが発動する。
出典: Wikipedia "Prompt engineering" Zero-shot CoT(取得日: 2026-05-20・URL: https://en.wikipedia.org/wiki/Prompt_engineering )
Zero-shot CoT を仕込むキーフレーズ
英語: Let's think step-by-step.
日本語: ステップ・バイ・ステップで考えてください。
このフレーズを末尾に追加するだけで、複雑な推論タスクの精度が上がる。
業務での適用例
- 提案書の論点整理
- 競合分析のフレーム展開
- 採用面接の評価基準分解
- バグ原因の切り分け
「結論だけ欲しい」ではなく「過程込みで欲しい」場面では、必ずZero-shot CoTを仕込む。
注意点
Zero-shot CoTは Thinking 系モデル(GPT-5.5など)では既定で発動している ことが多い。Fast系モデルで使うときに特に効果が大きい。
セクション4: Role prompting
役割を与えると、ChatGPTは その役割の知識フレームと語彙 で応答するようになる。
出典: Wikipedia "Prompt engineering" Role Assignment(取得日: 2026-05-20・URL: https://en.wikipedia.org/wiki/Prompt_engineering )
役割なし
当社の経営戦略についてアドバイスを
役割あり
あなたは中小企業の経営コンサルタントです。
15年の実務経験があり、製造業の事業承継案件を50件以上扱ってきました。
この立場から、以下の経営課題を分析してください。
(以下、業務状況の記述)
役割を与えると、 その分野の典型的な論点・用語・フレームワーク が応答に組み込まれる。
効果的な役割の書き方
- 職種(経営コンサル・人事・エンジニア など)
- 経験年数
- 専門領域
- 過去の代表的な案件
「優秀な〇〇」のような曖昧な形容詞ではなく、 具体的なバックグラウンド を書く。
セクション5: Structured output
最後に、 出力を構造化する テクニックを整理する。
JSON 出力指定
以下の文章から、氏名・年齢・職業を抽出し、JSONで返してください。
文章: 「田中さんは45歳の建築士です」
出力形式:
{
"name": "...",
"age": ...,
"occupation": "..."
}
JSON出力は 後続の自動処理に直結 するため、システム連携で重宝する。
マークダウンテーブル
以下の3社を Pricing / 機能 / 対象規模 で比較し、Markdownテーブルで出力してください。
YAML
プロジェクト計画を以下のYAML形式で出力してください。
phases:
- name: ...
duration: ...
deliverables: [...]
セクション6: 組み合わせの実例
5原則(前モジュール) + 本モジュールのテクニックを組み合わせた 業務レベルのプロンプト を示す。
あなたは中堅製造業の人事責任者です。15年の人事経験があります。
以下の状況を分析し、ステップ・バイ・ステップで論点を整理してから、
最終的に「打ち手3つ」をJSON形式で返してください。
状況:
- 採用ターゲット: 高卒新卒(製造ライン担当)
- 課題: 内定辞退率が前年比+30%
- 制約: 採用予算は据え置き
- 期限: 来月の経営会議で報告
例(参考形式):
{
"step1_observations": [...],
"step2_root_causes": [...],
"step3_actions": [
{ "title": "...", "expected_impact": "...", "cost": "..." }
]
}
注意:
- 一般論ではなく、製造業の高卒採用に特化した内容にすること
- 「採用ブランディング」のような抽象語ではなく、具体的な施策で書くこと
このレベルのプロンプトを テンプレ化して業務に組み込む ところが、ChatGPT実務活用の本丸だ。
まとめ
- Few-shot は2-5個の多様な例で精度が伸びる
- Chain-of-Thought は最終回答の前に推論プロセスを書かせる
- Zero-shot CoT は「ステップ・バイ・ステップで考えてください」だけで発動
- Role prompting で職種・経験年数・専門領域を与える
- Structured output(JSON / Markdownテーブル / YAML)で後加工を消す
- 5原則 + 本テクニックを組み合わせて業務テンプレを作る
次のモジュールではファイル添付・画像入力・Canvas・音声モードの活用に進む。