List of Olympus Components
From Olympus
Domain-independent agents
- Apollo: Interaction Manager, handling precise timing of conversational events, as well as turn-taking
- AudioRecorder: agent used in (mostly telephony) systems to record the full audio of the conversation
- BackendServer: stub for the task-specific Perl backend module
- DateTime: NLU agent to convert temporal expressions as parsed by Phoenix into semantic frames
- Dumbledore: agent used for Wizard-of-Oz experiments (so far only used by Dan Bohus on the RoomLine system, not proven to be task-independent)
- Frankie: skeleton for a simulated user agent (needs a lot of work)
- Gentner: interface to the Gentner telephony board (mostly in use at CMU)
- Helios: confidence annotation agent
- Jason: a Jabber chat client which turns an Olympus system into a chat-bot
- JavaTTY: a TTY input/output agent written in Java
- Kalliope: the speech synthesis agent, which is an interface to various TTS engines (SAPI, Festival, Cepstral Swift)
- MultiDecoder: a set of agents and engines in charge of speech recognition
- AudioServer: an agent that captures audio from an audio device, feeds it to several ASR engines and collates the results from the engine into a single Galaxy frame it sends back to the hub
- DTMFEngine: an engine that performs touch-tone (DTMF) recognition
- PocketSphinxEngine: an interface to the PocketSphinx open-source ASR engine
- Sphinx2Engine: an interface to the Sphinx2 open-source ASR engine
- Sphinx3Engine: an interface to the Sphinx3 open-source ASR engine
- NlgServer: a stub connecting to the Perl Rosetta module for natural language generation
- Phoenix: an agent performing parsing ASR hypotheses or text input using the Phoenix robust parser and a given grammar
- ProcessMonitor: a module that starts all the others (agents and Galaxy hub), monitors them and take certain actions when they fail
- Pythia: a nicer process monitor written in Python
- SessionManager: an agent that locks access to the system when a session is started (to avoid concurrency issues in e.g. chat-based systems)
- Skyper: an old interface to Skype as a replacement to the Gentner telephony board
- TTYRecognitionServer: a TTY input/output interface written in C++
Libraries
- DTMFDecoder: a library to perform touch-tone recognition for telephone-based systems
- Galaxy: the Galaxy Communicator architecture developped at MIT and MITRE
- Phoenix: the Phoenix robust parser
- pocketsphinx: the PocketSphinx speech recognition engine
- RavenClaw: the RavenClaw dialogue management framework (used as a static C++ library by each system's DM)
- Rosetta: the Rosetta template-based natural language generation framework (written in Perl, used by system-specific NLG modules)
- sphinx2: the Sphinx 2 speech recognition engine
- sphinx3: the Sphinx 3 speech recognition engine
- sphinxbase: the SphinxBase set of tools, shared across all engines of the Sphinx suite
- SphinxVAD: a GMM-based VAD
- trunkSphinx2msdev: a set of Visual Studio project files for the Sphinx 2 engine sources
