【Python】ChatGPT APIでバッチ文章生成を自動化する方法|大量コンテンツを高速作成

【Python】ChatGPT APIでバッチ文章生成を自動化する方法|大量コンテンツを高速作成 Python

ブログ記事、商品説明、SNS投稿など、同じフォーマットで大量の文章を作成する業務は少なくありません。OpenAIのChatGPT APIを使えば、Pythonからテンプレートベースで一括生成が可能になり、人的コストを大幅に削減できます。

この記事では、ChatGPT APIとPythonを組み合わせて、大量の文章をCSVデータなどを元に自動生成・出力する方法を紹介します。

前提:OpenAI APIの準備

  1. OpenAI APIキーを取得
  2. PythonのOpenAIライブラリをインストール
pip install openai pandas

CSVから入力を受けて一括文章生成

例として、商品名と特徴を入力にして、説明文を自動生成するケースを想定します。

import openai
import pandas as pd

openai.api_key = "YOUR_API_KEY"

# CSVファイルの読み込み(例:product.csv)
df = pd.read_csv("product.csv")

# 生成結果を格納するリスト
results = []

# 1件ずつ処理
for index, row in df.iterrows():
    prompt = f"""
あなたはマーケティングライターです。
以下の情報をもとに、200文字以内の魅力的な商品紹介文を日本語で作成してください。

商品名: {row['product_name']}
特徴: {row['feature']}
"""

    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",  # または gpt-4
        messages=[
            {"role": "system", "content": "あなたはプロのコピーライターです。"},
            {"role": "user", "content": prompt}
        ]
    )
    result_text = response.choices[0].message['content'].strip()
    results.append(result_text)

# 結果をCSVに保存
df["generated_text"] = results
df.to_csv("product_with_text.csv", index=False)

CSVの例(product.csv)

product_name,feature
スリム加湿器,静音設計で寝室にも最適
高速USBメモリ,読み書き最大500MB/sで作業効率UP

出力例

スリム加湿器:静音設計で快適な睡眠環境を実現。コンパクトなのにしっかり加湿。  
高速USBメモリ:圧倒的な転送速度で業務効率を向上。忙しいあなたに最適な1本。

バッチ処理のポイント

  • 1件ごとにAPIコールを行うため、処理件数に応じて時間と料金が発生します
  • OpenAIの料金体系(トークン単位)に注意
  • エラーハンドリング(API制限やタイムアウト)も実装推奨

まとめ

ChatGPT APIとPythonを使えば、大量の定型文や紹介文を効率よく自動生成できます。単純作業を減らし、クリエイティブな業務に集中したい人にとって、大きな武器となるツールです。

用途に応じてテンプレートやトーンを調整することで、さまざまな業種・メディアに対応できます。マーケティング、EC運営、ライティング業務などにぜひご活用ください。