Reference Architectures


Name Language Cost License Overview
Virtual Human Toolkit various free for research custom  The Virtual Human Toolkit is based on the ICT Virtual Human Architecture. This architecture defines at an abstract level what modules are needed to realize a virtual human, and how these modules interact. The basic functionality of each module as well as its interface is well-defined, but its actual implementation falls outside the scope of the architecture. The architecture dictates the implementation of a distributed system where communication is mostly realized using message passing. This allows for multiple implementations of a certain module and simple substitution of one implementation for another during run-time. It also allows for distributed systems, where different modules run on separate computers. ICT has developed a general framework, consisting of libraries, tools and methods that serve to support relatively rapid development of new modules. Using this framework, ICT and its partners have developed a variety of modules, both in the context of basic research as well as more applied projects. The Toolkit provides some of the modules that have been transitioned from this research. Visit the Documentation to learn more about the VH Toolkit's Architecture.
Olympus RavenClaw, C++ Free BSD-Based License Olympus is a complete framework for implementing spoken dialog systems. It was created at Carnegie Mellon University (CMU) during the late 2000's and benefits from ongoing improvements in functionality. It's main purpose is to help researchers interested in conversational agents to implement and test their ideas on complete systems, without having to build them on their own.
Galetea Ruby on Rails Free Galatea Toolkit License Agreement Galatea is a architecture that aims to provide several decentralized modules that cooperate. Galatea reads like a shell script, and provides simple message dispatch information.
Midiki Java Free MITRE's Open Source License, LICENSE.sun, LICENSE.norvig Our objective with Midiki is to bridge that gap between linguists and developers. We want to develop a toolkit that is friendly to linguists, supporting sophisticated behavior while providing full visibility into its internal operations. We are striving to build a toolkit that is agnostic with regard to data distribution method, operating system, programming language, and theory of dialogue. With enough users, we might have a shot at it.
Ariadne C++, JavaScript, Java Free Carnegie Mellon Copyright Ariadne is a generic task and language independent dialogue system that generates interactions with users based on a description of an application. This means that an application programmer does not have to design dialogues any more, he or she has to describe the application to be speech enabled such that the dialogue system will understand what it has to do. It is possible to develop new simple application without any programming other than the application description.
Dipper C++, Java, OAA Free University of Edinburgh GPL License The DIPPER architecture is a collection of software agents for prototyping spoken dialogue systems. Implemented on top of the Open Agent Architecture (OAA), it comprises agents for speech input and output, dialogue management, and further supporting agents
PED Prolog Free GNU Lesser General Public License version 2.0 PED is a dialogue management system that uses a probabilistic nested belief model to choose dialogue strategies from a Bayesian game tree.
OwlSpeak PHP Free GNU Lesser General Public License version 3.0 OwlSpeak is an ontology-based spoken dialogue management system. The system is written in Java and uses OWL Spoken Dialogue Ontologies to generate VoiceXML dialogue documents.
OpenDial Java Free MIT License OpenDial is a Java-based, domain-independent toolkit for developing spoken dialogue systems. OpenDial was originally designed to perform dialogue management tasks, but it can also be used to build full-fledged dialogue systems, integrating e.g. speech recognition, language understanding, generation, speech synthesis, multimodal processing and situation awareness.
jmNL Free JmNL is a modular NL platform for dialogue agents. JmNL integrates NLU(s), DM(s) and NLG(s). It provides a GUI to debug the characters and it's compatible with the VH protocol for communication with external components.
Let's Go Free The objective of the Let's Go! project is to create a basic dialog system that extreme populations such as the elderly and non-natives can access. Though the original Let's Go! project is now over, you can use the Let's Go! system for your own research
Rasa Stack Free Rasa Stack is a framework for building conversational software including web, slack or messenger bots or Alexa skills from data and machine learning, currently including tools for nlu and dialogue management and response generation.
ParlAI Free is a framework from facebookresearch for training and evaluating AI models on a variety of openly available dialog datasets.
NextNova Custom pricing Nextnova is a next generation platform that enables organizations to build and deploy conversational user interfaces for communication platforms, enterprise applications and industrial systems.
VoiceXML XML Free Voice Extensible Markup Language (VoiceXML) is a markup language for creating voice user interfaces that use automatic speech recognition (ASR) and text-to-speech synthesis (TTS). VoiceXML is the only XML-based speech language specification to receive the W3C’s Final Recommendation. VoiceXML simplifies speech application development by permitting developers to use familiar Web infrastructure, tools and techniques. Node.js, Python, Ruby Free Terms Wit is a natural language processing toolkit designed to help developers easily create text or voice based bots that humans can chat with on their preferred messaging platform.
Alex Dialogue System Python Free Apache 2.0 The Alex Dialogue Systems Framework is being developed by the dialogue systems group at ÚFAL. The purpose of this work is to facilitate research into and development of spoken dialogue systems.
IrisTK Java Free GNU General Public License IrisTK is a Java-based framework for developing multi-modal interactive systems. IrisTK is especially designed to be a powerful framework for social robotics applications. IrisTK provides features such as a framework for building event-based modular interactive systems, a 3D situation modeling framework, input and output interfaces across different modalities, and more.
PSI .net Free MIT License PSI (Platform for Situated Intelligence) focuses on constructing an open, extensible platform to enable the fast development of multimodal integrative-AI systems. It has been used for several real-time multimodal dialogue systems, combining visual and spoken information. It includes extensive capabilities for processing, logging, replaying and visualizing real-time streams.
Halef VXML open source Halef is an open source project aimed at building infrastructure of a VXML-based Spoken Dialog system. It is a combination of different Open Source tools such as Zanzibar, Cairo, JVXML, Sphinx, Festival, Mary and others.
PyDial python opensource Apache 2.0  Pydial is an open-source end-to-end statistical spoken dialogue system toolkit which provides implementations of statistical approaches for all dialogue system modules.
Amazon Lex paid Amazon Lex is a service for building conversational interfaces into any application using voice and text.
Watson Assistant paid IBM's Watson Assistant allows developers to quickly build and deploy chatbots and virtual agents.
Huggingface Python Free Apache 2.0 The Hugging Face API is a popular Python library providing pre-trained transformer models that are extraordinarily useful for a variety of natural language processing (NLP) tasks. It supports PyTorch and Tensorflow 2.