-
Notifications
You must be signed in to change notification settings - Fork 40
Архитектура Агрегата
Агрегат - это мультимодульная, мультиплатформенная программная голосовая система с открытым API и возможностью расширения за счет сторонних модулей.
Агрегат - это Java приложение, работающее на фреймворке Vertx. Внутренняя структура и API Агрегата используют возможности и парадигму этого фреймворка, поэтому все что верно с точки зрения Vertx, верно и для Агрегата.

Подробнее о Vertx и его API для разных языков программирования можно узнать из официальной документации.
Агрегат организует взаимодействие между модулями за счет обмена с ними асинхронными сообщениями. Ядро Агрегата берет на себя работу по синхронизации такого обмена, реализации анализа текста пользовательского запроса и диспетчеризации запросов к нужным модулям. А также выполняет работу по приему сообщений от модулей и переключению контекстов.
Другими словами, сам Агрегат - это связующее звено между всеми модулями, организованный вокруг парадигмы голосового ассистента, который умеет распознавать речь, переключать контекст, совершать действия и синтезировать голосовой ответы (или ответы).
- реализовывать любые голосовые функции с возможностью переключения контекстов
- организовывать новые способы активации Агрегата
- предоставлять сервис распознавания или синтеза речи (неважно, онлайн или офлайн)
Да и вообще все что угодно. Например предоставлять любой пользовательский интерфейс для различных нужд (в том числе для управления другими модулями Агрегата).
По сути, Агрегат не накладывает никаких ограничений на то, как именно модуль реализует свою функцию, какие сторонние библиотеки использует и как взаимодействует с системой.
Агрегат лишь указывает, какие виды событий могут происходить в системе, и каким образом должно на них реагировать, чтобы получить нужный результат. Все остальное определяет сам модуль.
Агрегат - это декларативный фреймворк для создания голосового ассистента, определяющий лишь правила взаимодействия модулей
Sorry, there was an error rendering this page.