前面,分享了小智 AI 服务端的系列文章:
最近把 服务端 拆成独立的微服务,支持动态扩缩容,极致压缩成本。
目前,这套方案已经成功部署,成本低至 1.5 元/天:

今日分享,聊聊这套方案的具体实现,希望给感兴趣的朋友一点参考。
1. 系统架构
架构特点:模块化设计和微服务架构,支持弹性扩展和负载均衡。

图中,
终端设备层:以AtomS3R举例,支持任意接入小智AI客户端的开发板。
服务端,目前最新支持到客户端的1.8.5版本,持续跟进中。
云端服务层:集成语音识别、LLM、语音合成等独立管线,支持高并发、低延迟的智能对话。架构如下:

管理服务层:管理后台与用户前端,采用Vue3搭建,支持多终端、多角色的灵活管理和可视化。

数据存储层:
- MySQL 数据库:密钥和配置持久化;用户认证;资源管理;日志存储;
- Redis 缓存:密钥状态缓存;常用资源缓存;音色缓存;
- EMQX 消息队列:MQTT 协议交互;
基础设施层:支持单机部署和集群部署

整个服务端,拆解成 6 大功能模块,独立打包,docker 镜像大小如下:

单机部署 docker-compose 一键拉起;
集群部署基于 K8s,包含 6 个 Deployment,每个最低1个副本:

2. 支持功能
用户前端:
- 设备管理:验证码添加设备;配置角色;声纹识别;对话记忆;
- 角色管理:自定义角色提示词;
- 大模型管理:接入自定义的 LLM,支持 OpenAI/Coze API 格式;
- 音色管理:支持 3s 音色克隆;

管理后台:
- 系统管理:

- 资源管理:

AI服务:
- 主服务端:支持 WebSocket / MQTT+UDP 通信协议;
- LLM 端:支持 OpenAI / Coze 两种协议,流式/非流式输出,接入 MCP;
- ASR 端:支持 VAD + ASR + 声纹识别,双向流式;
- TTS 端:支持 Dashscope / Volcengine / 本地部署,双向流式;
3. 部署方案
为了满足高可用、可扩展的设计原则,完整方案部署在 k8s 集群上。
进一步,为了满足低成本、少运维的原则,这里选择了 sealos。
关于 sealos & 注册体验:https://bja.sealos.run/?uid=QDGJoX2_Qp
3.1 数据库
首先是数据库:

主要用到 Mysql 和 Redis:

测试阶段,单节点即可:

3.2 应用
然后,新建应用:

以新建 espbot-frontend为例:

你只需要在前端页面点点点,sealos 帮你写好了一堆 yaml 文件,底层调用 kubectl apply -f 拉起应用:
- 镜像源:选择镜像,可以是私有仓库;
- 部署模式:弹性伸缩,可根据 cpu/内存 使用率进行弹性扩展实例;
- 极低成本:配置选择0.1c/128M,而阿里云ACS上最小得0.25c/512M;
你看,每天仅需 0.07 元,即可部署一个前端应用的pod,包括:用户前端和管理后台,只需放开两个端口:

公网访问,可以用 sealos 的二级域名,连域名费用都省了;如果用自己域名,只需添加一条 DNS。
最后,一起来看下资源占用!
整个服务端,6 个应用 + 2 个数据库:


按照最低成本原则,总计资源消耗 2.3C/2.5G:

合计每天成本:

这个成本,完全可以覆盖测试阶段使用。
一旦流量上来,只需切换到弹性伸缩模式即可,极致丝滑~
写在最后
本文分享了,小智AI服务端的一种低成本、高可用的完整解决方案。
如果对你有帮助,不妨点赞收藏备用。
下一篇,
打算聊聊 AI 语音对话背后的技术路线选择。
愿你我都能在 AI 落地的路上,少踩坑、多复用,把精力留给真正的业务创新。