Tools useful for discourse and dialogue research
If you want to add other tools or find errors, please create GitHub issues or pull requests (Edit this file.). If you don’t have an account on GitHub, please email at resources@sigdial.org.
Part of this list was adapted from the DialPort resource list. We thank DialPort and the National Science Foundation.
Name | Category | Developer | Programming Language | Belief Description | Paper |
---|---|---|---|---|---|
Pydial | Dialogue system development | Cambridge University | Python | An open-source end-to-end statistical spoken dialogue system toolkit which provides implementations of statistical approaches for all dialogue system modules. | Ultes et al. 2017 |
OpenDial | Dialogue system development | University of Oslo | Java | A Java-based, domain-independent toolkit for developing spoken dialogue systems. | Lison and Kennington, 2016 |
Rasa Open Source | Dialogue system development | Rasa Technologies | Python | The most popular open source framework for building chat and voice-based AI assistants. | Bocklisch et al., 2017 |
ConvLab | Dialogue system development | Tsinghua University Conversational AI group (THU-coai) and Microsoft Research (MSR) | Python | A flexible dialog system platform based on a unified data format for task-oriented dialog (TOD) datasets. | Zhu et al. 2023 |
BotPress | Dialogue system development | Botpress, Inc. | TypeScript | The standard developer stack to build, run, and improve conversational AI applications. | |
DialBB | Dialogue system development | C4A Research Institute, Inc. | Python | A framework for building dialogue systems. It has been developed as an information technology educational material. | https://aclanthology.org/2024.sigdial-1.56/Nakano et al. 2024 |
ELAN | Annotation | Max Planck Institute for Psycholinguistics | Java | Enables adding an unlimited number of textual annotations to audio and/or video recordings. An annotation can be a sentence, word or gloss, a comment, translation or a description of any feature observed in the media. Annotations can be created on multiple layers, called tiers. Tiers can be hierarchically interconnected. An annotation can either be time-aligned to the media or it can refer to other existing annotations. The content of annotations consists of Unicode text and annotation documents are stored in an XML format (EAF). | Wittenburg et al. 2006 |
Virtual Human Toolkit | Multimodal dialouge system development | University of Southern California (USC) Institute for Creative Technologies (ICT) | A collection of modules, tools, and libraries designed to aid and support researchers and developers with the creation of virtual human conversational characters. Designed for easy mixing and matching with a research project’s proprietary or 3rd-party software, the Toolkit provides a widely accepted platform on which new technologies can be built. It is our hope that, together as a research community, we can further develop and explore virtual human research and technologies. | Hartholt et al. 2022 | |
Apache OpenNLP | Text processing | The Apache Software Foundation | Java | OpenNLP supports the most common NLP tasks, such as sentence segmentation, tokenization, lemmatization, part-of-speech tagging, named entity extraction, chunking, parsing, language detection and coreference resolution. | |
Stanford CoreNLP | Text processing | Stanford NLP Group | Java | CoreNLP enables users to derive linguistic annotations for text, including token and sentence boundaries, parts of speech, named entities, numeric and time values, dependency and constituency parses, coreference, sentiment, quote attributions, and relations. CoreNLP currently supports 8 languages: Arabic, Chinese, English, French, German, Hungarian, Italian, and Spanish. | |
NPCEditor | Multimodal dialouge system development | University of Southern California (USC) Institute for Creative Technologies (ICT) | Java/Groovy | NPCEditor controls the spoken behavior of the characters in the Virtul Human Toolkit, as well as the structure and logic of the interaction through its dialog manager. It contains a list of user “Questions” and character “Answers”, and the links between them. NPCEditor uses a statistical text classifier to determine the best character response to novel user input, allowing users to converse with the characters with reduced authoring effort. | Leuski and Traum, 2010 |
MultiSense | Multimodal dialouge system development | University of Southern California (USC) Institute for Creative Technologies (ICT) | MultiSense is a perception framework that enables multiple sensing and understanding modules to inter-operate simultaneously, broadcasting data through the Perception Markup Language. | Stratou and Morency, 2017 |