政党比較ツールにおけるデータの作成方法
政党比較におけるデータ(各党の政策・取り組みの要約)の作成は以下のステップで作成されます。
ステップ1: 政党の公式ページからデータを収集/検索用DBの構築
政党の公式ページから情報を収集し、ベクトル化(embedding)し、ベクトルデータベースに保存します。
1-1.各党の公式データの収集
各党の公式ページからデータを収集します。現在、以下のページを収集しています。
日本共産党
国民民主党
1-2.収集したページのデータのベクトル化
収集したデータを200文字程度にチャンク化した上で、ベクトル化(Embedding)します。
使用Embeddingモデル
text-embedding-3-large(OpenAI)
1-3.ベクトルデータベースへ格納
1-2でベクトル化したデータをベクトルデータベースへ格納します。
ベクトルデータベース
Qdrant(v1.12.0)
ベクトル距離
Cosine
ステップ2: トピックごとに各政党のサマリーを作成
与えられたトピック/各政党について、ステップ1で構築したベクトルデータベースおよび外部検索エンジンで検索し、検索結果を生成AIを用いて要約します。
2-1.ベクトルデータベースによる検索
2-2.外部検索エンジンによる検索
外部検索エンジンから「{政党名} {トピック}」で検索した結果を取得します。
検索エンジン
Tavily
取得したページの文字数が500文字以上の場合は以下のプロンプトを用いて500文字以内に要約します。使用モデル・プロンプトは以下のとおりです。
使用モデル
gpt-4o-mini-2024-07-18(OpenAI)
プロンプト
role: system
role: user
role: user
2-3.検索データのフィルタリング
2-1,2-2の検索結果について、関連度の低い情報について、生成AIを用いて要約プロセスの前にフィルタリングし ます。使用モデル・プロンプトは以下のとおりです。
使用モデル
gpt-4o-mini-2024-07-18(OpenAI)
与えるキーワード
政党名, トピック
プロンプト
role: system
role: user
role: user
2-4.要約の作成
2-3でフィルタリングした検索結果を、生成AIで要約します。使用モデル・プロンプトは以下のとおりです。
使用モデル
gpt-4o-2024-08-06(OpenAI)
プロンプト
role: system
role: user
role: user
2-5.さらに短い要約を作成
2-4で生成した要約を生成AIで50文字以内に要約します。使用モデル・プロンプトは以下のとおりです。
使用モデル
gpt-4o-mini-2024-07-18(OpenAI)
プロンプト
role: system
role: user
role: user