AI業務活用 2026.04.19
ChatGPTで資料作成を50%時短|5ステップで構成案からスライド完成まで
5ステップ資料作成ワークフロー
Step 1 (5分): テーマと目的をChatGPTに伝えて構成案を生成
Step 2 (5分): 構成案を確認・修正してスライド本文を生成
Step 3 (5分): 各スライドのデータ・事実を確認・補完
Step 4 (10分): PowerPoint/Googleスライドに貼り付け・レイアウト調整
Step 5 (5分): 全体レビュー・誤字確認
合計: 30分(従来比50%短縮)
Step 1: 構成案の生成プロンプト例
プロンプト例(そのままコピーして使えます):
「以下の条件で営業提案書の構成案を作ってください。
対象: ○○株式会社(製造業、従業員500名)
目的: クラウド移行サービスの提案
聴衆: 情報システム部長(非エンジニア)
スライド枚数: 8枚以内
制約: 専門用語を使わず、コスト削減効果を数値で示す
各スライドのタイトルと3行の要点を出力してください」
APIで資料生成を自動化する
# auto_document_generator.py
# 営業情報から提案書を自動生成する
import anthropic
from pathlib import Path
client = anthropic.Anthropic()
DOCUMENT_SYSTEM = """あなたはプロの資料作成コンサルタントです。
与えられた情報から、説得力のある提案書・報告書を生成してください。
- 箇条書きは3点以内にまとめる
- 数値・事実を具体的に記載する
- 専門用語は使わず、意思決定者に伝わる言葉を選ぶ"""
def generate_proposal(
company: str,
goal: str,
audience: str,
key_facts: list[str],
slide_count: int = 8
) -> dict:
"""提案書の構成と本文をClaude APIで生成する"""
prompt = f"""
提案先: {company}
目的: {goal}
聴衆: {audience}
スライド枚数: {slide_count}枚以内
重要な事実:
{chr(10).join(f'- {f}' for f in key_facts)}
上記の条件で提案書の構成案を作り、各スライドのタイトルと本文(200文字以内)を出力してください。
"""
response = client.messages.create(
model="claude-sonnet-4-5", # 資料品質はSonnet推奨
max_tokens=2000,
system=DOCUMENT_SYSTEM,
messages=[{"role": "user", "content": prompt}]
)
# コスト計算
inp = response.usage.input_tokens
out = response.usage.output_tokens
cost = (inp * 3.00 + out * 15.00) / 1_000_000
return {
"content": response.content[0].text,
"cost_usd": round(cost, 4),
"cost_jpy": round(cost * 150, 1)
}
# 使用例
result = generate_proposal(
company="株式会社サンプル",
goal="クラウド移行サービスの採用提案",
audience="情報システム部長(40代、非エンジニア背景)",
key_facts=[
"現在のオンプレ保守コスト: 年間500万円",
"クラウド移行後の試算: 年間300万円(40%削減)",
"移行期間: 3ヶ月",
"同業他社の導入実績: 15社"
]
)
print(result["content"])
print(f"\nコスト: ${result['cost_usd']} (約{result['cost_jpy']}円)")
PowerPoint自動生成(python-pptx)
# pptx_generator.py
# AIが生成した構成案からPowerPointを自動作成する
# pip install python-pptx anthropic
from pptx import Presentation
from pptx.util import Inches, Pt
import anthropic
import json
client = anthropic.Anthropic()
def generate_slides_json(topic: str) -> list[dict]:
"""スライド構成をJSON形式で生成する"""
response = client.messages.create(
model="claude-haiku-4-5-20251001", # 構成案はHaikuで安く
max_tokens=1000,
messages=[{
"role": "user",
"content": f"""「{topic}」について5枚のスライド構成を以下のJSON形式で出力してください:
[
{{"title": "スライドタイトル", "bullet_points": ["要点1", "要点2", "要点3"]}}
]
JSONのみ出力してください。"""
}]
)
return json.loads(response.content[0].text)
def create_pptx(slides_data: list[dict], output_path: str = "output.pptx") -> str:
"""スライドデータからPowerPointファイルを生成する"""
prs = Presentation()
for slide_info in slides_data:
slide = prs.slides.add_slide(prs.slide_layouts[1]) # タイトル+コンテンツ
slide.shapes.title.text = slide_info["title"]
body = slide.placeholders[1]
tf = body.text_frame
tf.clear()
for point in slide_info["bullet_points"]:
p = tf.add_paragraph()
p.text = point
p.level = 0
prs.save(output_path)
return output_path
# 実行
slides = generate_slides_json("AIを活用した営業効率化提案")
output = create_pptx(slides, "sales_proposal.pptx")
print(f"生成完了: {output}")
# コスト: Haiku使用で5スライド約$0.001(0.15円)