Skip to content

AIR-DISCOVER/ECAs-Dataset

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

An LLM-based Simulation Framework for Embodied Conversational Agents in Psychological Counseling

Paper PDF huggingface Python 3.8+

memory_framwork

📌 Table of Contents

Data Structure

ECAS-DATASET
├─client                                # All generated data of Client Agents
│  ├─embodied_memory                    # Generated embodied memory of 100 Client Agnets
│  │  ├─ori_data                        # All the raw data that reflects the memory generation process
│  │  └─database.db                     # Memory stored in database
│  └─profiles                           # Generated profiles of 451 Client Agnets

Data Process

Install

  1. Starting a virtual environment with anaconda:
conda create -n ecas python=3.11.0
  1. Then install requirements for initing client and chatting with client agent.
pip install -r requirements.txt

Init Client Profile

To init clients, remove dulplicates and assign names to candidates, the related three Python scripts: client_init.py, init_method.py and names.py are used for processing candidate data from D4 dataset.

  1. Due to the privacy of real patient data, you need get REAL data from D4 dataset website, and and put them in the ./utils/D4 folder.

  2. Client initialization and duplicate removal.

    • Initializes candidate data by generating folders and saving dialogue and profile information from D4 dataset.
    • Removes duplicate candidate entries and moves non-duplicates to a new folder.
    • Assign Chinese and English names to the non duplicate candidates.
    • Copy the D4 raw data to full_portrait.json in each folder in ./client/proofiles,
    • To get the processed data, You just need run:
    python client_init.py
    

Quickly Start Chatting with Client Agent

By using our generated embodied memory, you can select one of 100 clients's profile and memory to chat.

  1. You need set the api_key in ./utils/utils.py (we use the OpenAI models).

  2. You can use the --cn setting to select a client agent in the /client/embodied_memory/ori_data path for answering, for example (--cn parameter defaults to test0)

# use default
python question_answer.py

# use parameter
python question_answer.py --cn test0

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages