以下の記事で紹介したTalk to the Cityを動かしてみた記録です。
Talk to the Cityにはsctterとturboがありますが、今回はscatterのほうで試しました。
公式のドキュメントに書かれている通りの手順では動かなかった部分もあるので、Talk to the Cityを動かしてみようとされている方の参考になれば幸いです。
公式ドキュメントを参照しながら、Ubuntu 22.04.5 LTS でテストしました
公式のscatterのドキュメント
https://github.com/AIObjectives/talk-to-the-city-reports/tree/main/scatter
ソースコードを取得
git clone https://github.com/AIObjectives/talk-to-the-city-reports.git
venv python3-dev git-lfs のインストール
sudo apt install python3.10-venv
sudo apt install -y python3-dev
sudo apt install git-lfs
依存関係のインストール、環境の設定
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python -c "import nltk; nltk.download('stopwords')"
JavaScript の依存関係をインストール
cd next-app
npm install
talk-to-the-city で使う OpenAI API KEY を取得する
sk-proj-(OpenAI API KEY)
サンプルのCSVは下記手順で取得しないと動作しませんでした
cd scatter/pipeline/inputs
git lfs fetch
git lfs checkout
sentence-transformersのバージョンを最新にしないと動作しませんでした
pip install --upgrade sentence-transformers
実行
ここで入力データを処理して各種のレポートを生成している
cd scatter/pipeline
export OPENAI_API_KEY=sk-proj-W3mbcySCXI・・・
python main.py configs/example-polis.json
レポートの表示準備
確認用のWebサーバーをインストールして、ポートをオープン
npm install -g http-server
sudo ufw allow 8080
確認用のWebサーバーを起動
scatter ディレクトリに移動
http-server -p 8080
ブラウザから結果にアクセス
※xxx.xxx.x.xxは確認用に起動したWebサーバーを実行しているマシンのIP
http://xxx.xxx.x.xx:8080/pipeline/outputs/example-polis/report/
サンプルデータを読み込ませて分析結果を表示してみたところ、ブラウザ上でこのように表示できました。
今回はサンプルデータで表示させましたが、サンプルデータではなく、SHARE info で収集したもう少し量の多いデータで後日もう少し詳しく動作確認をした記事を公開する予定です。新規投稿はXで発信していますので、SHARE info のXのフォローをお願いします。