【完全版】タグ活用で精度倍増！プロンプトエンジニアリング


## はじめに

ChatGPT、Claude、Gemini など、さまざまな LLM を使う際に

**「もっと思い通りの回答が欲しい」**
**「出力が安定しない」**

という悩みはありませんか？  

実は、**たった一つのテクニック**、**""プロンプトに「タグ」を導入""** するだけで、AIが指示内容を的確に理解し、**より精度の高い回答**を引き出すことができます。

- **この記事を読むメリット**  

  1. 簡単なテクニックで ChatGPT の精度が上がる
  2. テクニックの多様な事例が学べる
  3. タグ一覧が充実しており、用途に合わせた拡張がしやすい

それでは早速、なぜタグが効果的なのか、どんなタグがあるのかを見ていきましょう。


---

## 1. タグを活用したプロンプトエンジニアリングとは
**プロンプトエンジニアリング**とは、生成AI（ChatGPT、Claude など）に与えるテキスト指示（プロンプト）を最適化し、狙った回答を得るための技術です。

特に、**タグ**を使ってプロンプト内の文章やデータを「構造化」してあげると、AIが文章の意図を正しく理解しやすくなり、回答の**精度・安定性・再利用性**が大幅に向上します。

一例を挙げるとこんな感じ。

```xml
<text>こちらに長文のリサーチペーパー本文を貼り付ける</text>
<instructions>
  1. 要点を3行で要約
  2. 出力はJSON形式で、"summary" フィールドにテキストを入れる
</instructions>
<result>
  {"summary": "ここにAIが要約を挿入"}
</result>
```

- **メリットまとめ**  
  - 出力フォーマット（JSONや表形式など）を維持しやすい  
  - Chain-of-Thought（思考プロセス）と最終回答を分けて、デバッグや検証が容易  
  - 大量のドキュメントを扱う際、どの部分がどの役割を担うか整理しやすい  
  - **金融系分析など複雑なタスク**でも、データと解説を明確に分けてモデルに指示しやすい

---

## 2. タグ設計のポイント

1. **わかりやすいタグ名**  
   - 例：`<analysis>`, `<instructions>`, `<financials>` のように、タグ名から役割が推測できると混乱が減る。  
2. **3～5階層以内**  
   - 過度に深い入れ子構造はAIが混乱したり、タグを閉じ忘れたりしやすい。  
3. **タグ名を一貫して使用**  
   - 同じ意味のタグを複数作るより、一つにまとめて運用するほうがAIは理解しやすい。  
4. **自己修正を促す**  
   - 「不正なタグやJSONがあれば修正して出力して」とモデルに追加指示することでエラーを減らせる。  
5. **金融系や法務系など専門タグの活用**  
   - 例：`<financials>`, `<outlook>`, `<balanceSheet>` などを使うと、数字や分析内容を分けて入力できる。

---

## 3. タグ一覧表
ここでは、**汎用的なタグ**と**専門的なタグ**をより網羅的に紹介します。必要に応じて組み合わせながら、あなたのタスクに最適化してください。

| タグ名            | 主な用途・意味                                                                                 | 分野・用途                      | 使用例                                                                                        |
|-------------------|-------------------------------------------------------------------------------------------|--------------------------------|------------------------------------------------------------------------------------------------|
| **汎用タグ**        |                                                                                           |                                |                                                                                                |
| `<report>`        | 文書全体・レポート全体を包括する枠として利用                                                     | ドキュメント構造                | `<report><section>…</section></report>`                                                       |
| `<section>`       | 大きな章やパートを区切る。属性 `title="..."` でタイトルを付与可能                                   | ドキュメント構造                | `<section title="Introduction">…</section>`                                                   |
| `<summary>`       | 文章や分析結果の要約                                                                           | 要約／汎用                     | `<summary>今回の結論としては…</summary>`                                                      |
| `<insight>`       | 独自の洞察や考察が必要な箇所を強調                                                              | 考察／汎用                     | `<insight>AI導入の最大のメリットは生産性の向上です</insight>`                                 |
| `<instructions>`  | モデルへの指示をまとめる                                                                         | 指示／汎用                     | `<instructions>出力はJSON形式にし、要約は50文字以内</instructions>`                            |
| `<text>`          | 任意の本文、またはユーザー入力のテキストを括る                                                   | テキスト／汎用                 | `<text>ここに分析対象の文章を貼り付ける</text>`                                                |
| `<example>`       | Few-shotプロンプトなど、ひとつのサンプルを括る                                                   | 例示／汎用                     | `<example>入力：〇〇 / 出力：△△</example>`                                                    |
| `<thinking>`      | Chain-of-Thoughtで推論過程を明示的に分ける                                                      | 思考過程／汎用                 | `<thinking>計算式を再確認すると…</thinking>`                                                   |
| `<answer>`        | 最終回答のみを括って提示                                                                         | 回答／汎用                     | `<answer>売上減少の主因は在庫回転率の低下です</answer>`                                       |
| `<result>`        | JSONやXMLなど、フォーマットを厳密に管理したい部分を括る                                            | フォーマット／汎用             | `<result>{"key":"value"}</result>`                                                             |
| `<table>`         | 表形式のデータを挿入するときに使う。<br>CSVや簡易テーブルを囲んでAIに出力を促す                    | ドキュメント構造／汎用          | `<table>列1,列2&#10;データ1,データ2</table>`                                                  |
| `<context>`       | 背景情報・前提条件をまとめる                                                                         | 背景情報／汎用                 | `<context>この文書は社内会議用です。対象はマーケティング部。</context>`                         |

---

## 4. 実践的な応用例

### 4-1. ブログ記事生成（章立て管理）
```xml
<report>
  <section title="Introduction">
    AI活用によるマーケティングの最新動向を解説してください。
  </section>
  <section title="MainPart">
    マーケ施策を3つ紹介し、それぞれのメリットを挙げる。
  </section>
  <section title="Conclusion">
    読者へのアクションアイテムを提示。
  </section>
</report>
```
- **ポイント**: `<section>` で導入・本文・結論を区切り、自然な文章構成に。

### 4-2. **金融レポート生成（財務諸表分析）**
```xml
<report>
  <section title="FinancialOverview">
    <financials>
      <profitLoss>売上高:2億円, 営業利益:2000万円</profitLoss>
      <balanceSheet>総資産:1.2億円, 負債:5000万円</balanceSheet>
    </financials>
  </section>
  <analysis>
    昨年比マイナス10%の原因を考察。広告費が増加し利益率が低下した点に触れる。
  </analysis>
  <outlook>
    来期は広告費を抑制し、利益率回復を目指す。リスクとして為替変動や原材料高を考慮。
  </outlook>
</report>
```
- **ポイント**: `<financials>` の中で `<profitLoss>` と `<balanceSheet>` を分割。数値と分析を分けて提示することで、**モデルが誤って数値を混同しにくい**。  
- **仕上がり**: AIが財務データを参照しつつ分析コメント（`<analysis>`）と将来見通し（`<outlook>`）を生成してくれる。

### 4-3. A/Bテスト用マーケティングコピー
```xml
<audience>20代女性</audience>
<tone>カジュアル</tone>
<product>自然由来のスキンケア商品</product>
<variantA>
  割引を前面に出したコピー
</variantA>
<variantB>
  成分の安全性・こだわりを前面に出したコピー
</variantB>
<instructions>
  各コピーは100文字以内としてください。
</instructions>
```
- **ポイント**: `<variantA>` と `<variantB>` を明確に区切ることで、2パターンの広告文を同時に生成。  
- **成果物**: すぐにA/Bテストを実施可能。

### 4-4. 要約タスク + JSON出力
```xml
<text>こちらに長文のリサーチペーパー本文を貼り付ける</text>
<instructions>
  1. 要点を3行で要約
  2. 出力はJSON形式で、"summary" フィールドにテキストを入れる
</instructions>
<result>
  {"summary": "ここにAIが要約を挿入"}
</result>
```
- **ポイント**: `<result>` タグ内にJSONを生成させることで、後続システムがそのままパースしやすい。

---

## 5. 複雑な応用例：Chain-of-Thoughtで金融分析を分割

```xml
<question>この企業のキャッシュフローと損益計算書から、財務リスクを評価してください。</question>
<thinking>
  1. キャッシュフロー（CF）が黒字か赤字か
  2. 損益計算書（P/L）上の利益率はどうか
  3. 今後のキャッシュ不足リスクを推定
</thinking>
<analysis>
  CFは+500万円だが、前年比-30%で悪化傾向。利益率も前年より2pt低下。
</analysis>
<outlook>
  半年後には短期借入増加の可能性あり。改善策として固定費削減を検討。
</outlook>
<answer>
  以上より財務リスクは中程度と判断されます。
</answer>
```
- **Chain-of-Thought** (`<thinking>`) と分析結果 (`<analysis>`) を分け、最終結論 (`<answer>`) のみユーザーに提示できる。  
- 複数の財務指標を組み合わせ、より高度な推論がしやすい構造。

---

## 6. 実践ステップ: タグ付きプロンプト作成の流れ

1. **ゴール設定**  
   - 「ブログ記事執筆」「金融レポート自動生成」「広告文A/Bテスト」など、目的を明確化。
2. **タグ設計**  
   - どのデータ・セクションを何のタグで括るか決定。  
   - 入れ子は3～5階層以内を目指す。
3. **初期プロンプト作成・テスト**  
   - AIに投げてみて、タグ構造が正しく機能しているか、出力フォーマットが期待どおりか確認。
4. **デバッグ＆改善**  
   - タグ名を変更する、タグを統合／分割するなど、モデルの出力精度が上がるよう調整。  
   - 金融データの扱いが複雑なら `<financials>` 内をさらに `<profitLoss>` や `<balanceSheet>` に分割するなど工夫。
5. **最終版テンプレート化**  
   - 成功したプロンプトはテンプレート化して使い回す。  
   - チーム内で共有して標準化すれば開発効率アップ。

---

## 7. まとめ & 次のアクション

**タグを活用したプロンプトエンジニアリング**の威力を実感していただけたと思います。

最初は少し面倒に感じるかもしれませんが、この方法を使いこなせば、**AIとの対話が格段に進化**することは間違いありません。

- **次にやるべきこと**  
  1. **小さなタグ構造**から始めて、想定どおりの出力になるかを試す  
  2. トラブルが起こったら `<thinking>` や `<analysis>` を活用してモデルの推論過程を可視化し、原因を特定  
  3. 成功事例をテンプレ化し、ブログやレポート、コード生成など幅広いシーンに展開  

ぜひこの記事を参考に、**「生成AI タグ 活用」** による高度なプロンプト設計に挑戦してみてください。

**プロンプトエンジニアリング**を上手く使いこなせば、ビジネスドキュメントの自動生成や分析効率化など、多岐にわたるメリットを得られるはずです。

---

### 参考リソース（一例）
- [OpenAI公式ドキュメント: Prompt Engineering Tips](https://platform.openai.com/)  
- [Anthropic Claude: Tag-Based Prompting ガイド](https://www.anthropic.com/)  
- [Google Cloud Vertex AI: Prompt構造化の推奨事項](https://cloud.google.com/vertex-ai/)  
- [コミュニティ投稿例 (OpenAI Developer Forumなど)](https://community.openai.com/)

---
### 会社紹介

**株式会社 Mosaica**  
最先端テクノロジーで社会課題を解決し、持続可能な未来を創造する IT カンパニー。
AI ソリューション、クラウド統合、DX 推進、経営コンサルティングなど包括的なサービスでビジネス変革を支援しています。  

詳しくは [公式サイト](https://mosaica.co.jp/) までお気軽にご相談ください。
公式サイト： https://mosaica.co.jp/