Skip to content

Latest commit

 

History

History
94 lines (70 loc) · 5.62 KB

File metadata and controls

94 lines (70 loc) · 5.62 KB

User Review Writing via Interview with Dialogue Systems

SIGDIAL Slide

Method Illustration

本リポジトリは,SIGDIAL2024で発表した論文 に付随したコードを含みます.

📝 Abstract

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ファイル

🚀 クイックスタート

以下の手順でアプリケーションを利用可能です.

  1. リポジトリをクローン

    git clone https://github.com/UEC-InabaLab/InterviewToReview.git
    cd InterviewToReview
  2. 依存パッケージをインストール

    pip install -r requirements.txt
  3. APIキーを設定

    プロジェクトのルートに .env ファイルを作成し,以下のようにOpenAI APIキーを追加します:

    API_KEY="{YOUR_OPENAI_API_KEY}"

    サンプルファイル .env.example をコピーして .env ファイルを作成することもできます.

  4. アプリケーションを起動

    bash run.sh

以上が完了すると,ローカルのFlaskサーバーが起動します(デフォルトは http://127.0.0.1:8000).

⚙️ 設定

settings/config.py にシステム設定が定義されています.以下の項目をカスタマイズできます.

  • MODEL: 使用するOpenAIモデル (例: gpt-4).
  • BOT_TYPE: 対話モード (gpt or rule-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/}
}