本リポジトリは,SIGDIAL2024で発表した論文 に付随したコードを含みます.
User reviews on e-commerce and review sites are crucial for making purchase decisions, although creating detailed reviews is time-consuming and labor-intensive. In this study, we propose a novel use of dialogue systems to facilitate user review creation by generating reviews from information gathered during interview dialogues with users. To validate our approach, we implemented our system using GPT-4 and conducted comparative experiments from the perspectives of system users and review readers. The results indicate that participants who used our system rated their interactions positively. Additionally, reviews generated by our system required less editing to achieve user satisfaction compared to those by the baseline. We also evaluated the reviews from the readers’ perspective and found that our system-generated reviews are more helpful than those written by humans. Despite challenges with the fluency of the generated reviews, our method offers a promising new approach to review writing.
本システムは,インタビュー対話を通じてユーザレビューの作成を支援するものです.まずユーザへインタビュー対話を行うことで詳細な商品情報を収集し,その対話履歴に基づいてレビューを生成します.アプリケーションはFlaskで実装され,レビュー作成支援の各フェーズでOpenAIモデルが利用されます.settings/config.py を編集することで,モデルや言語などのシステム設定をカスタマイズできます.
├── app.py # Flaskアプリケーションのエントリーポイント
├── modules/ # アプリケーション処理に関わるコアモジュール
├── resources/
│ ├── questionnaire/ # ベースラインシステム用の事前定義された質問
│ └── guidance/ # ユーザへのガイダンステキスト
├── settings/ # 設定ファイル (`config.py`)
├── templates/ # HTMLテンプレート
├── static/ # 静的アセット (CSS, JavaScript, 画像)
├── data/ # ログと完了したセッションの出力
├── requirements.txt # Python依存パッケージ
├── run.sh # アプリケーションを起動するためのシェルスクリプト
├── README.md # 英語版READMEファイル
└── README_ja.md # 日本語版READMEファイル
以下の手順でアプリケーションを利用可能です.
-
リポジトリをクローン
git clone https://github.com/UEC-InabaLab/InterviewToReview.git cd InterviewToReview -
依存パッケージをインストール
pip install -r requirements.txt
-
APIキーを設定
プロジェクトのルートに
.envファイルを作成し,以下のようにOpenAI APIキーを追加します:API_KEY="{YOUR_OPENAI_API_KEY}"
サンプルファイル
.env.exampleをコピーして.envファイルを作成することもできます. -
アプリケーションを起動
bash run.sh
以上が完了すると,ローカルのFlaskサーバーが起動します(デフォルトは http://127.0.0.1:8000).
settings/config.py にシステム設定が定義されています.以下の項目をカスタマイズできます.
MODEL: 使用するOpenAIモデル (例:gpt-4).BOT_TYPE: 対話モード (gptorrule-based).rule-basedの場合,./resources/questionnaire/に定義されている質問を使用してインタビュー対話を行います.詳細については, 論文 の Section 4.1.2 をご覧ください.gptの場合,対話の各ターンにおいてMODELで指定されたOpenAIモデルを使用して質問を生成します.
LANG: 使用言語 (ja: 日本語,en: 英語).MIN_QUESTIONS,MAX_QUESTIONS: インタビューにおける質問の数の範囲 (すなわち,対話ターンの数) .TEMPERATURE_INTERVIEW,TEMPERATURE_REVIEW,TEMPERATURE_RATING: インタビュー,レビューテキスト生成,およびレビュースコア予測フェーズの生成における温度パラメータ.SAVE_COMPLETED: 完了したセッションの保存を有効/無効にします.
Python 3.10.12での動作を確認済みです.
@inproceedings{tanaka2024user,
title = {User Review Writing via Interview with Dialogue Systems},
author = {Yoshiki Tanaka and Michimasa Inaba},
booktitle = {Proceedings of the 25th Annual Meeting of the Special Interest Group on Discourse and Dialogue},
year = {2024},
url = {https://aclanthology.org/2024.sigdial-1.37/}
}
