見出し画像

AIを活用し安野たかひろの政策アップデートを自動で記事化する仕組みを運用開始しました!

安野たかひろ事務所 技術チームリーダーの伊藤です。

安野たかひろチームでは「テクノロジーで誰も取り残さない東京をつくる」というビジョンを実現するため、「オープンソース政策開発」という施策に取り組んでいます。

今回、この取り組みについて、さらに理解・キャッチアップしやすくなることを目的に、AIを活用し定期的にマニフェストのアップデート箇所を記事化して紹介する仕組みを作成したので、この記事で紹介します。


前提: オープンソース政策開発について

オープンソース政策開発は、安野たかひろのマニフェストに対する市民の皆様の意見を募り、双方向で政策を改善していく取り組みです。

安野たかひろの技術を用いた施策3本柱

具体的には、政策リポジトリをGitHubで公開し、Pull Requestによる改善提案を募集し、政策チームおよび安野たかひろ本人が適切だと思った変更点は政策ページに即時反映することでマニフェストを更新しています。

公開8日間の変更提案の成果

実際に、公開してから157の問題提起をいただき、うち41個を実際に反映するなど、スピード感のある政策反映ができていると思います。

課題感

このように、うまく機能している部分もある一方で、一つ一つの議論や変更はオープンであるものの、全体感としての変更を追いかけるのが現実的に難しいというフィードバックをいただいただくことがあり、私もその通りだと思っておりました。

そこで今回、どのような政策がどのくらいの数、政策に反映されているのかを可視化・要約し、公開できる仕組みを作成し、運用を開始しました。実際に公開した記事はこちらです。

実際に公開された記事

本記事では、その仕組みについて書いていこうと思います。

仕組みの概要

今回のツールはGoogle Colabを利用して作成しました。

実際のGoogle Colabの画面

流れはシンプルで、以下のようなことをやっています。

  1. Github APIからPull Requestの一覧を取得

  2. 条件に当てはまるPull Requestに絞り込み

    • merged_at が対象期間内

    • doc/manifest 以下のファイル差分を含む

  3. Pull RequestのFile Diffデータと、議論ページのHTMLをChatGPTに投げ、要約を作成

  4. MatPlotLibでDiffを可視化

  5. HTMLフォーマットしたものをColab上に表示

  6. noteに直接コピー&ペースト

以下、工夫した部分について軽く紹介します。

ChatGPTの利用

以下のようなプロンプトでChatGPTに依頼をしています。

変更内容自体はdiffを見ればわかることなので、GitHub のPull RequestページのHTMLを投げ、どのような議論がありどのような判断でマージとなったのかという背景も含めて説明することを重視しています。

また、記事化した際に、政策に直接関係する内容のものが上にあったほうが見やすいため、ここで3段階のimportanceを採点してもらっており、1(政策内容の追加・変更) -> 2(表現や情報の修正)の順番で並べ直しています。(3は単なるタイプミス等なので、記事が見にくくなることを防ぐため、掲載しないことにしています。)

下のgithubのマージ済みのプルリクエストのHTMLとdiffを読み、内容を日本語で要約してください。

## 回答フォーマット
{{
  "title": "変更内容を示すタイトル(30字以内)"
  "summary": "変更自体の概要(100~200文字程度)"
  "background: "そのPRをマージするに至った背景(100~200文字程度)"
  "importance": 1 // そのPRの重要性(1-3)
}}

## diffは以下です。
{diff}

## HTMLは以下です。
{html}

## importanceの定義
- 実質的な政策内容の追加・変更を含むもの: 1
- 表現の修正や情報の詳細化など: 2
- タイプミスや誤字脱字の修正など: 3

Diffの可視化

Diffに関しては本来HTMLなどを使ってセマンティックに可視化したかったのですが、noteのエディタ機能上でうまく表現が難しそうだったので、matplotlibを使って画像化しています。

差分ファイル

以上です。今回作成した記事作成ツールは、下記に添付しておきます。興味があれば、ぜひご覧になってください。

まとめ

あらためて、オープンソース政策開発がうまく機能する状態にするためには、ただ公開する・検索可能にするだけでは不十分で、実際に見やすい・理解しやすい形で発信を行うことが何よりも大切だと考えています。

定期的に差分を公開する今回の取り組みが、皆様が政策を理解したり、さらなる改善案を考えるにあたり、意味のあるものになればと思います。

安野たかひろ事務所では、これからもより期待の持てる政治システムを感じでいただけるようにするため、必要に応じて仕組みをアップデートしていこうと思います。ご意見がありましたら、お気軽にお寄せください!


安野たかひろについてご興味をもった方へ