微服务#

请参见下图,了解微服务是如何互连的,以及数据如何在每个连接中流动。

Architecture Overview with Microservices

请参见下图,了解 Tokkio 工作流程中使用的微服务的完整列表。

微服务#

微服务

描述

类别

有状态/无状态

VST

音视频流提供程序

流媒体管线

无状态

Tokkio Ingress 控制器

Tokkio 部署的专用负载均衡器

流媒体管线

无状态

内部 Ingress 代理

负载均衡和路由从客户端到 A2F-2D 微服务的 gRPC 调用

流媒体管线

无状态

DS 视觉人工智能

DeepStream 视觉人工智能组件提供人脸检测和跟踪

视觉管线

无状态

Metropolis 占用和警报

检测视野 (FOV) 内的用户

视觉管线

无状态

Metropolis 占用警报 API

Metropolis 占用警报的 WebAPI

视觉管线

无状态

聊天控制器

接受实时音频,通过机器人管线传递音频,并将合成语音返回到下游

语音管线

有状态

Riva 语音技能

为 Tokkio 管线提供 NLP(自然语言处理)、TTS(文本到语音)和 ASR(自动语音识别)相关功能

语音管线

无状态

动作服务器

动作服务器管理 Tokkio 中 UMIM 事件的流程。

交互管线

无状态

聊天引擎

接受文本查询、事件、多模态元数据,并生成详细的机器人响应,可用于驱动 TTS、头像、用户界面可视化。

交互管线

无状态

Tokkio 用户界面服务器

零售参考应用程序的一部分。Tokkio 的 Web 用户界面服务器

履行管线

无状态

插件服务器

零售参考应用程序的一部分。通过与目录 RAG、购物车管理器和用户界面服务器交互,处理零售机器人的食品订购

履行管线

无状态

Audio2Face-3D

接受流式音频,并将面部表情注入到机器人动画中

Amimation Pipeline

无状态

动画图

动画图编译并缓冲所有动画源提供的动画数据,并将当前的音频块和当前的头像姿势/帧发送到渲染器

Amimation Pipeline

有状态

头像渲染器

头像渲染器用于渲染机器人动画

Amimation Pipeline

有状态

UE 渲染器

基于 Unreal 的渲染器,作为默认头像渲染器的替代方案

Amimation Pipeline

有状态

LivePortrait

2D 渲染器,作为默认头像渲染器的替代方案

Amimation Pipeline

有状态

信令代理

从 RTP/UDP 流媒体启动与 VST 的 UDP 端口协商

Amimation Pipeline

无状态

SDR

提供一种将媒体流分发到各个 Pod 的方法,并负责路由和流状态管理。为每个有状态微服务创建一个单独的 SDR 实例

基础

无状态

MongoDB

用于持久化来自各种组件的信息的数据存储

基础

无状态

Redis 时序数据库

用于促进服务间通信并临时存储时序数据的消息总线

基础

无状态

Redis

用作缓存以存储会话统计信息和其他路由相关信息。

基础

无状态

Tokkio 目录 RAG

零售参考应用程序的一部分。用于基于目录的 RAG 管线

仅适用于 QSR 参考工作流程

无状态

Tokkio 购物车管理器

零售参考应用程序的一部分。用于用户购物车管理

仅适用于 QSR 参考工作流程

无状态