ブログ記事、商品説明、SNS投稿など、同じフォーマットで大量の文章を作成する業務は少なくありません。OpenAIのChatGPT APIを使えば、Pythonからテンプレートベースで一括生成が可能になり、人的コストを大幅に削減できます。
この記事では、ChatGPT APIとPythonを組み合わせて、大量の文章をCSVデータなどを元に自動生成・出力する方法を紹介します。
前提:OpenAI APIの準備
- OpenAI APIキーを取得
- 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運営、ライティング業務などにぜひご活用ください。