今回は、ChatGPT APIとPythonを使って「カスタマー対応メール」を社内向けに要約し、必要に応じて翻訳(例:日本語→英語)するツールを作成します。クレームや質問メールの要点を素早く抽出し、報告や共有の手間を省くことができます。
1. ツールの目的
- 長文のお問い合わせメールを要約して一言で整理
- 社内用に文調を変えて再構成
- 翻訳(日本語→英語、またはその逆)にも対応
2. 環境準備
2-1. ライブラリのインストール
!pip install openai
2-2. APIキーの設定
import openai
# ChatGPT APIキーを設定
openai.api_key = "sk-あなたのAPIキー"
3. 要約&翻訳ツール関数
def summarize_and_translate(email_text, translate=False):
"""
カスタマー対応メールを要約し、必要に応じて英語に翻訳する。
"""
instruction = "以下のメールを、社内報告用に簡潔に要約してください。"
if translate:
instruction += " その後、英語に翻訳してください。"
prompt = f\"\"\"
{instruction}
メール内容:
{email_text}
\"\"\"
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": prompt}],
max_tokens=300,
temperature=0.4
)
return response["choices"][0]["message"]["content"].strip()
4. テスト実行
mail = \"\"\"\n昨日注文した商品がまだ届いていません。注文番号12345です。\n配送状況を確認していただけますか?急いでいます。\n\"\"\"\n
summary = summarize_and_translate(mail, translate=True)
print(summary)
5. 出力例
【要約】
注文番号12345の配送が遅延しており、至急確認を求められている。
【翻訳】
The customer reported a delay in the delivery of order #12345 and is requesting an urgent update.
6. 応用アイデア
- CSVから複数件のメールを一括処理
- 重要度(高・中・低)を分類するタグ付け
- Slack通知や自動レポート化と連携
7. まとめ
今回は、ChatGPT APIを活用して、カスタマー対応メールを自動で要約・翻訳するPythonツールを構築しました。社内の連携効率を高め、対応の見落とし防止にもつながる実践的な仕組みです。
コメント