书生·浦语灵笔2.5-OL的效果实测,展现了高质量的实时视频语音交互能力,不仅支持高精度的实时视觉感知和语音对话,还创新地提出了多模态长期记忆的功能,可以准确回忆看过的内容。例如在演示视频中帮助用户找到遗忘在桌子上的矿泉水,并且回忆起桌子上还有盆栽。
AI助手不仅具有强大的知识和思考能力,还可以实时感知外部环境变化,记住观察到的事物细节,与人类自然对话交流,并适时地为人类提供实际帮助。在现实应用中,具有实时视频语音交互功能的多模态大模型,可以让具身机器人、可穿戴智能硬件、移动设备更好地感知世界进而服务人类,具有广阔的应用前景。
书生·浦语灵笔2.5-OL支持实时视觉感知和语音对话,还创新地提出了多模态长期记忆的功能。通过分别设计多模态实时交互大模型中的感知、记忆和思考功能模块,可实现并发的世界感知、长短期记忆、多模态思考三项核心功能,并提供了完整的系统协同和集成方案。
目前,书生·浦语灵笔2.5-OL已完全开源了模型参数、系统集成推理和前后端应用部署的全套方案,支持免费商用。
整体架构与核心模块
书生·浦语灵笔2.5-OL的整体架构和三个核心模块的具体设计如下:
书生·浦语灵笔2.5-OL整体架构
1. 感知模块:
实时感知音频、视频输入,对音频信号进行语音识别和音频分类,对视觉信号抽取视觉特征,包含:
音频感知:研究人员训练了一个轻量的音频多模态大模型,实时监听输入的音频流,同时进行语音识别和音频分类,理解人类语音内容和识别背景声音。
视觉感知:通过视觉编码器实时抽取视觉特征。
2. 记忆模块:
持续对输入的视觉特征进行多层级的记忆压缩,不断进行视觉记忆编码压缩,支持根据指令对视觉记忆的高效检索,包含:
短时记忆压缩:对短期视频片段内进行记忆压缩,形成精确的短期记忆。
长期记忆压缩:对短期记忆进一步压缩,形成高压缩比的长期记忆。
记忆查询:根据指令查询长期记忆,召回指令相关的短期记忆片段,用于思考模块的多模态理解。
3. 思考模块:
判断语音输入是否为需要响应的用户指令,避免误触发影响使用体验。对于需要影响的用户需求,结合指令查询视觉记忆,并回答问题。
判断用户指令是否需要响应。
调用记忆模块查询历史视觉记忆,用于多模态理解和推理, 并回答用户问题。
调用外部语音合成模块合成最终语音输出。
系统流程设计
前端、SRS服务器和后端服务器共同组成书生·浦语灵笔2.5-OL的系统流程。
书生·浦语灵笔2.5-OL系统流程图
1. 前端
前端使用JavaScript开发,可启用摄像头和麦克风捕捉视频和音频流输入,并将其推送到SRS服务器,同时与后端建立WebSocket连接,监听音频输出和中断信号。
前端在接收到音频输出时播放音频,接收到中断信号时暂停音频播放并丢弃待处理的音频。
2. SRS服务器
SRS(Simple Realtime Server)是一款简单高效的实时音视频服务器,负责接收和传输音频流、视频流数据。
3. 后端服务器
后端与前端建立WebSocket连接后,将从SRS服务器拉取流媒体,并启动独立进程分别读取音频和视频。
音频进程持续读取音频流并检测语音的开始和结束:
- 检测到语音活动开始时,后端向前端发送中断信号以暂停当前播放的音频,同时向视频进程发送备份信号保存当前记忆状态(记忆快照)。
- 检测到语音活动结束时,语音分类和识别进程对音频进行背景音分类和语音识别,并将结果送入到大语言模型待处理队列。
视频进程读取视频帧并保存到视频帧队列。记忆进程负责识别、提取并存储记忆,并在收到语音检测进程的备份信号后保存当前记忆状态以便后续检索。
大语言模型进程判断待处理的指令是否需要模型响应,并根据检索到的记忆对于需要响应的指令进行文字回复。
语音合成进程将把文字回复结果转换为音频输出并发送到前端。
书生·浦语灵笔2.5-OL的完整应用部署方案已开源,支持使用LMDeploy部署4-bit实时交互应用。