神戸電子専門学科AIアプリケーションコースのTeam Echoが取り組む、神戸市企画調整局調整課との共同案件「Unmute City」の開発背景と技術スタックを解説します
何のためのプロジェクトか?(目的と背景)
社会的背景:9割の「声なき声」をどう拾うか
行政や公の場における意見募集では、構造的な偏りが生じがちです。
- ノイジーマイノリティ(10%): 日常の不満や要求を積極的に公の場で表明する「声高な少数派」
- サイレントマジョリティ(90%): 日常の不満を感じつつも、公的な場では沈黙する「声なき多数派」
過去の反省点(D-agreeの限界)
議論アプリの先行事例「D-agree」は、以下のような心理的・物理的ハードルにより課題が残る結果となりました
- 専用プラットフォームの強制: 日常的に使わないアプリへの誘導
- 議論文化の欠如: 「意見の対立」を攻撃と捉えやすく、公の場での議論を避ける傾向
- 高コストの対話: 意見を述べることに多大な精神的エネルギーが必要
話しやすい自然な入口(日常使いのSNS)を作る
サイレントマジョリティの本音を拾い上げる
AIによる「課題カタログ」を構築し、神戸市の社会課題を集約した都市OS化を目指す
ギアは何を使う?(システム構成と技術スタック)
日常的に使われているプラットフォームを活用し、負荷やノイズを制御しながらインサイト化するアーキテクチャを採用しています 。
| 領域 | 技術・ツール | 役割 |
| データ収集 | X (SNS) | 神戸市の不満や意見の生データを取得 |
| APIサーバー | FastAPI (Render / 公開サーバー) | リクエスト・レスポンスのルーティングおよびホスティング |
| AI・分析 | Gemini | AI解析リクエスト、感情分析による過激な投稿の除外 |
| データベース | Supabase | データの保存・取得 |
| UI・可視化 | HTML / CSS / D3.js | 管理画面でのロジックツリー(要素分解・AI要約・評価)の 視覚化 |
すべてをLLM(Gemini)に処理させると、APIコストの肥大化に加え、ノイジーマイノリティの過激な文脈にAIが引きずられるリスクがあります。 本システムでは、軽快なローカル(Janome/TensorFlow/NumPy)で「外れ値の除外」と「生活実感のプライオリティ定量化」を前段で完了させ、行政・意思決定者が向き合うべき本質的なインサイトだけを高効率に抽出するアーキテクチャを採用しています。
収集&フィルタリング: Xから神戸市に関する投稿データを取得し、AIで感情分析を実施。過激な投稿は表示しないフィルタリングを行う
構造化(要素分解): 投稿や要約を「要素分類」「AI要約」「評価(深刻度やいいね数)」のロジックツリーへ落とし込む
10月: セキュリティ、結合テスト、機能テスト、システムテスト
11月(仮実証): 本番環境へのデプロイ、システム稼働開始。SNSの投稿を広範囲で取得し感情分析ができるようにする
12月〜1月(本番実証): 改良版のリリースとデータの最終評価
2月: 最終評価・フィードバック反映
「議論させようとする」のではなく、「日常のぼやきや不満を自然にすくい上げ、AIで構造化カタログにする」。自治体の意思決定や市民実装のあり方を変えるエキサイティングなプロジェクトです。今後の実証実験の成果にご期待ください!


コメント