猿でもわかるAIビジネス活用シリーズ 🐵📊 AIでプレゼン資料を自動生成する時代が来た！



# 🐵📊 AIでプレゼン資料を自動生成する時代が来た！〜実践で使える自動化ワークフローを構築してみた〜

## 🧭 はじめに：プレゼン資料作成は“人の仕事”じゃなくなる？

プレゼン資料作成に何時間もかけた経験、ありませんか？<br>
「データを集める → スライドにまとめる → グラフや図を挿入する → 訴求力を考える」……この一連の作業、時間も集中力も必要です。

しかし今、**AIの進化によってこの作業の多くが自動化可能になっています。**

本記事では、AIを活用して以下のようなプレゼン資料自動生成を行うワークフローを構築し、**エンジニアでもすぐ試せる実装例と運用ノウハウ**を共有します。

---

## 🔍 技術概要：AIで資料を自動生成するとは？

### 💡 使われる技術スタック

以下の技術を組み合わせることで、プレゼン資料の自動生成が可能になります：

| 技術                               | 用途                   |
| -------------------------------- | -------------------- |
| **OpenAI GPT (gpt-4 / gpt-4o)**  | テキスト生成（要点抽出・スライド文作成） |
| **Pandas / Matplotlib / Plotly** | データ可視化（グラフ生成）        |
| **python-pptx**                  | PowerPointスライド生成     |
| **LangChain**（応用）                | ワークフロー制御、ドキュメント連携    |

---

## 🛠️ 実装ステップ：AIでプレゼン資料を作ってみよう！

### ステップ①：元データと指示を準備

以下のようなCSVファイルを例とします：

```csv
Month,Sales,Cost
Jan,1000,400
Feb,1300,500
Mar,900,380
...
```

ユーザー指示：

```
「この売上データをもとに、営業会議用のスライドを5枚作成してください」
```

---

### ステップ②：要点抽出＆スライド構成生成（GPT活用）

```python
import openai

openai.api_key = "YOUR_API_KEY"

response = openai.ChatCompletion.create(
  model="gpt-4o",
  messages=[
    {"role": "system", "content": "あなたはプレゼン資料を作るプロフェッショナルです。"},
    {"role": "user", "content": "以下のデータをもとに、営業報告資料の構成と要点を作ってください。"}
  ]
)
slide_structure = response['choices'][0]['message']['content']
```

生成結果（例）：

```
1枚目：タイトルと概要
2枚目：月別売上とコスト（グラフ付き）
3枚目：利益の推移と考察
4枚目：課題と対策
5枚目：次のアクションプラン
```

---

### ステップ③：グラフ生成（Matplotlib）

```python
import pandas as pd
import matplotlib.pyplot as plt

df = pd.read_csv("sales_data.csv")
df["Profit"] = df["Sales"] - df["Cost"]

plt.plot(df["Month"], df["Profit"])
plt.title("月別利益推移")
plt.xlabel("Month")
plt.ylabel("Profit")
plt.savefig("profit_chart.png")
```

---

### ステップ④：スライド自動生成（python-pptx）

```python
from pptx import Presentation
from pptx.util import Inches

prs = Presentation()

slide = prs.slides.add_slide(prs.slide_layouts[1])
title, content = slide.shapes.title, slide.placeholders[1]
title.text = "営業報告：2025年Q1"
content.text = "本資料は売上と利益に関する要点をまとめたものです。"

# グラフ付きスライド
slide2 = prs.slides.add_slide(prs.slide_layouts[5])
slide2.shapes.title.text = "月別利益推移"
slide2.shapes.add_picture("profit_chart.png", Inches(1), Inches(2), width=Inches(6))

prs.save("generated_presentation.pptx")
```

📂 生成物：`generated_presentation.pptx`

---

## 🧑‍💼 実務ノウハウ：使って分かったTipsと注意点

### ✅ 活用Tips

* **プロンプト工夫が命**：明確な「トンマナ」「想定読者」「枚数指定」が品質に直結
* **可視化テンプレートを用意する**：同じグラフを毎回描くならテンプレ化すべし
* **複数モデルの併用**：GPTだけでなく、ローカルLLMや定型テンプレとの併用で効率UP

### ⚠️ よくある落とし穴

* **情報の「幻覚」生成**：GPTが事実と異なる分析をする可能性
* **過剰な自動化でノイズが増える**：レビューを前提にした運用が必要
* **pptx操作のクセ**：細かい調整（フォント、配置）が面倒なのでテンプレ活用推奨

---

## 🚀 応用：LangChainで“会話型”資料作成アプリに

LangChainを使えば、エンドユーザーがチャット形式で指示を出し、その場で資料が生成される**対話型資料生成ツール**を構築可能です。

```python
from langchain.agents import create_csv_agent
from langchain.llms import OpenAI

agent = create_csv_agent(OpenAI(temperature=0), "sales_data.csv", verbose=True)
agent.run("2枚のスライドで利益の傾向と課題を説明してください")
```

→ ビジネス現場で“AIと会話しながら資料を作る”未来がすぐそこに！

---

## 🔚 まとめ：AI生成資料の可能性と限界

### ✅ メリット

* 作業時間の大幅削減
* プレゼン品質の均一化
* 繰り返し作業の自動化による集中力の温存

### ⚠️ デメリット

* ファクトチェックが不可欠
* フォーマットの柔軟性に限界あり
* 自動生成だけでは“人を動かす資料”にはなりきれない

---

## 🌈 おわりに：まずは一度、動かしてみよう！

**このワークフローはたった数十行のコードで試せます。**
「面倒くさい」資料作成にAIの力を取り入れることで、**時間と発想をもっとクリエイティブな領域に使える**ようになります。

ぜひ、あなたのプロジェクトにも導入してみてください！

---

ご質問・フィードバックがあれば、コメントでぜひ教えてください！
この記事が役に立ったら「いいね」や「Qiita/Zennフォロー」もよろしくお願いします！