3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

LLM活用プロンプトエンジニアリング | ベストプラクティス集

Last updated at Posted at 2025-08-05

はじめに

2025年8月現在、ChatGPT、Claude、Gemini、Mistral などの大規模言語モデル(LLM)が、業務や開発現場で広く活用されています。

そうした中で、これらのモデルの性能を最大限引き出すには「プロンプトエンジニアリング」が不可欠です。

この記事では、最新の実例やトレンドに基づき、LLM活用時代におけるプロンプト設計のベストプラクティスを紹介します。

1. プロンプトエンジニアリングの基本原則

明確で具体的に書く

抽象的な依頼ではモデルの挙動が不安定になります。期待する出力の形式、長さ、対象などを明確に記述すべきです。

【例】

  • 悪い例:「プロンプト設計の記事を書いて」
  • 良い例:「Markdown形式で、500文字以内の記事原稿を書いて。タイトルは『プロンプト設計の基本』で」

コンテキスト / 役割を与える

前提情報や対象読者、役割を設定することで出力の一貫性と品質が向上します。

【例】

  • 「あなたはプロンプトエンジニアリングの講師です」
  • 「対象読者は初心者の開発者です」
    など

出力形式を指定する

Markdown、JSON、テーブル形式など、出力の構造を明記することでそのまま再利用しやすくなります。

【例】

  • 「以下のフォーマットで出力してください (サンプルのMarkdownやJSONなどの形式を貼り付ける)」

2. 最新のテクニックとトレンド

Chain-of-Thought(思考の連鎖) / Tree-of-Thought (思考の木)

Chain-of-Thoughtは複雑な推論を分解し、段階的に処理させる手法です。
Tree-of-Thoughtは複数の思考経路を並行処理させ、精度向上を狙う手法です。

【CoTの例】

「山田さんは朝の8時に家を出て、徒歩で駅に向かいました。
駅までは1.2kmあり、徒歩の速度は毎分80mです。その後、駅から電車に乗って、
目的地まで20分かかりました。  
山田さんが目的地に着いたのは何時何分ですか?  
考え方をステップごとに書いて、最後に答えを出してください。」

【CoTの出力例】

ステップ1:まず、徒歩で駅までの時間を計算します。  
駅までの距離は1.2km = 1,200mです。徒歩の速度は毎分80mなので、  
1,200 ÷ 80 = 15分かかります。

ステップ2:山田さんは8時に家を出たので、駅に着いたのは  
8:00 + 15分 = 8:15 です。

ステップ3:その後、電車に乗って目的地まで行きます。電車にかかる時間は20分です。  
8:15 + 20分 = 8:35 に目的地に到着します。

答え:山田さんが目的地に着いたのは 8時35分 です。

このように、時間・距離・速度の関係を段階的に計算させることで、LLMが途中で誤解したり誤算するのを防ぎ、信頼性の高い出力を得ることができます。


【ToTの例】

あなたは中規模のカフェチェーンの経営コンサルタントです。  
最近、店舗の売上が3ヶ月連続で下がっており、改善が求められています。

次のステップで思考を進めてください:

1. 売上が下がっている理由を3つ仮説として挙げてください  
2. 各仮説に対して、有効と思われる改善策をそれぞれ1つ提案してください  
3. 3つの改善策のうち、最も実行性と効果のバランスが良いものを1つ選び、その理由を説明してください  
4. 最後に、選んだ施策を具体的にどう実行するかの計画を簡単に書いてください

【ToTの出力例】

【ステップ1:売上減少の仮説】
仮説A:近隣に競合カフェが新規オープンし、顧客が流れている  
仮説B:メニューの価格が高止まりしており、リピート率が低下している  
仮説C:SNSなどのマーケティング施策が停滞しており、新規顧客が獲得できていない  

【ステップ2:各仮説への対策】
Aへの対策 → 独自性の強い期間限定メニューで差別化  
Bへの対策 → リピート客向けに「回数券」や「お得パス」を導入  
Cへの対策 → Instagram・TikTokでのキャンペーン強化とクーポン配布

【ステップ3:ベストな施策の選定】
→ 仮説CのSNS施策が最も効果と実行性のバランスが良い  
理由:比較的低コストで実施可能であり、短期間で新規来店を促せる。  
競合や価格の問題は根本対策に時間がかかるが、SNS施策は即効性が高い。

【ステップ4:具体的な実行計画】
・店舗スタッフに撮影・投稿ルールを周知し、週3投稿を実施  
・来店時にSNSフォローでドリンク1杯無料クーポン配布  
・1ヶ月後に効果測定し、インプレッション数・来店者数・売上を比較評価

この例では、「3つの仮説 → 3通りの思考ルート → 1つを選択 → 実行計画へ」という「思考の木構造」 を通して、段階的に問題を掘り下げ、最適解を導いています。

ToTでは、このように複数の視点・選択肢を並行的に評価・淘汰することで、CoTよりも柔軟で実務的な思考が可能になります。

Few-shot / Multi-shotプロンプト

Few-shotおよびMulti-shot promptingとは、LLMに対して事前にいくつかの出力例を与えた上で、新しい入力に対して同様の出力を期待するプロンプト設計の手法です。

Zero-shot:例を与えない

Few-shot:1~3個程度の例を与える

Multi-shot:4個以上の例を与える

【例】

次の日本語を英語に翻訳してください:

例1:
日本語:私は学生です  
英語:I am a student.

例2:
日本語:明日は雨が降るでしょう  
英語:It will rain tomorrow.

入力:
日本語:東京は日本の首都です  
英語:

上記に対する出力例

Tokyo is the capital of Japan.

次の文がどの感情に分類されるかを判断してください。
分類カテゴリ:喜び、怒り、悲しみ、驚き、恐れ

例1:  
文章:やった!試験に合格した!  
感情:喜び

例2:  
文章:財布を落としてしまって最悪だ  
感情:悲しみ

例3:  
文章:あいつにまた嘘をつかれた  
感情:怒り

入力:  
文章:夜道で誰かに尾行されてる気がする  
感情:

上記に対する出力例

恐れ

モデル特性に合わせる(Model Adaptation)

GPT系、Claude系、Gemini系など、それぞれで最適な書き方があります。例えば、Claudeは「前提→制約→出力形式」の順序に敏感で、GPTは温度や最大トークンの設定で出力品質が変化します。

セキュリティ対応(Prompt Injection対策)

プロンプトの中にユーザー入力を直接埋め込む場合は、意図しない操作を防ぐためにサンドボックス的な区切りを設けたり、入力をエスケープする処理が必要です。

3. 開発プロセスへの組み込みと評価

プロンプト評価

異なるプロンプト案を複数用意し、どの形式が安定した出力を生むかを比較評価する方法が実務で広く使われています。

テンプレート管理と自動生成

社内で使うプロンプトはテンプレート化し、LLMツール上で一貫性を保つ運用が進んでいます。
プロンプト生成・検証ツール (PromptFlow、LM Studioなど) の導入も増えています。

バイアス検証と倫理設計

LLMの出力には偏りが含まれる場合があるため、生成結果のレビュー、監査可能なログなどの仕組みが求められています。

まとめ

  • LLMを使いこなす鍵は「具体的で構造的なプロンプト」にある
  • 出力形式の指定と役割の定義が品質向上に直結する
  • 最新のテクニック(Tree-of-Thought、Few-shotなど)を適切に活用することで再現性と精度が上がる
  • プロンプトのPDCA運用と、セキュリティ・バイアス対策も含めてプロンプト設計を行うべき

LLMを活用したいすべての開発者にとって、プロンプトは単なる入力文ではなく「設計技術」です。
今後もトレンドやモデルの特性に合わせて、柔軟に改善していく姿勢が重要になることは間違いないため、常に最新の情報にアンテナを張っておきましょう!

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?