AutoTOD is a novel fully zero-shot autonomous agent for task-oriented dialogues. It deprecates all the delicate modules in traditional TOD systems and only uses an instruction-following language model to autonomously call external APIs and communicate with the user, which greatly reduces the construction cost and improves the generalization ability.
- Python >= 3.6
- langchain == 0.0.166
- openai == 0.27.0
- tenacity == 8.2.2
- SQLAlchemy == 2.0.13
- pydantic == 1.10.2
- click == 8.0.1
- termcolor == 2.3.0
Download the preprocessed data from Google Drive and extract it to the data
directory.
Provide the OPENAI_API_KEY
in the environment variable.
export OPENAI_API_KEY=<your api key>
Run the notebook run_mwoz.ipynb
.
Run the notebook run_sgd.ipynb
.
Example results are shown in results
directory.
Results of MultiWOZ
- OpenAI text-davinci-003:
results/mwoz_davinci_003.json
- OpenAI gpt-3.5-turbo-0301:
results/0301.json
- OpenAI gpt-3.5-turbo-0613:
results/0613.json
Results of SGD
- OpenAI gpt-3.5-turbo-0613:
results/sgd.json