ChatGPTで重複しない記事を量産するPython実装【Embeddingで自動判定】
はじめに:なぜ“重複排除”が必要なのか生成AIで記事を量産すると、必ず発生するのが「意味的な重複」です。タイトルや文章が異なっても、内容の本質が同じであればSEOや品質面で致命的になります。この問題はプロンプトでは解決できません。必要なのは、Embeddingを使った意味ベースの重複判定です。⸻全体アーキテクチャ今回実装する流れはシンプルです:1. タイトル生成(ChatGPT)2. Embedding化(ベクトル変換)3. 類似度計算(cosine similarity)4. 重複排除5. 目次・本文生成⸻必要環境* Python 3.10以上* OpenAI APIキー* ライブラリpip install openai numpy scikit-learnステップ① タイトル生成まずはタイトルを生成します。from openai import OpenAIclient = OpenAI()def generate_titles(category, n=30): prompt = f""" 「{category}」カテゴリにおいて、 検索意図が重複しないタイトルを{n}個生成してください。 """ res = client.chat.completions.create( model="gpt-4.1-mini", messages=[{"role": "user", "content": prompt}], temperature=0.9 ) titles = res.cho
0