File size: 3,668 Bytes
87b8a8a
5b39f9e
87b8a8a
5b39f9e
 
 
87b8a8a
 
 
 
5b39f9e
87b8a8a
 
 
5b39f9e
 
 
 
87b8a8a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5b39f9e
 
 
 
 
87b8a8a
 
 
 
 
5b39f9e
87b8a8a
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# 【伪流式音频转写 + LLM优化系统架构图】

## 🌊 总体流程图

```mermaid
graph TD
    A[音频流输入] --> B[VAD (20ms)]
    B --> C[Transcribe(200ms)]
    C --> D[快速翻译模块(200ms)] 
    D --> E[即时输出模块(非确认状态)]

    C --> F[翻译确认模块(可选优化)]
    F --> G[优化翻译模块(LLM或重转录)(500ms)]
    G --> H[异步输出模块(确认状态)]

```
---

## 🧱 模块划分(以伪流式为核心)

### **模块 A:音频流输入**
- **职责**:接收用户麦克风或远程语音流(如 WebRTC、WebSocket),将连续音频切分为帧(如每帧 20ms)。
- **特点**:持续运行的监听器,向下游推送 PCM 帧或 numpy array。
- **实时性保障**:限制帧缓冲长度(防止阻塞);异步 IO 实现(支持本地或 Web 场景)。

### **模块 B:VAD 分段器**
- **职责**:根据语音能量、静音检测、语音边界等逻辑将音频切分成语音段(segment)。
- **输出**:segment 音频数据块及时间戳。
- **特点**:基于滑动窗口,支持帧重叠;优化 Whisper 特征提取。
- **实时性保障**:极低延迟;segment 生成即推送下游模块。

### **模块 C:Whisper 转录模块**
- **职责**:对 VAD 输出的 segment 执行 Whisper 推理,生成转写文本。
- **输出**:原始文本段落(含时间戳)。
- **特点**:segment 单元并行处理;可通过 GPU 加速。
- **实时性保障**:每段 1~5 秒,支持异步 worker 并行转写。

### **模块 D:快速翻译模块**
- **职责**:在转写完成后立即对文本进行机器翻译(如使用 CTranslate2+NLLB 模型)。
- **输出**:翻译文本(第一时间展示用)。
- **特点**:轻量翻译模块,适配实时性需求。
- **实时性保障**:200ms 内完成翻译并传递至展示模块。

### **模块 E:即时输出模块(非确认状态)**
- **职责**:接收翻译结果,第一时间展示给用户。
- **特点**:无等待、无确认,仅为初版输出。
- **实时性保障**:面向用户 UI 的主响应路径,保证极低延迟。

### **模块 F:翻译确认模块(控制器)**
- **职责**:判断是否需要对当前句子进行 LLM 优化或更深层次的重转录。
- **特点**:分析内容质量、标点情况或上下文完整度,触发优化流程。
- **实时性保障**:判断延迟可控,不阻塞主流程。

### **模块 G:优化翻译模块(LLM或重转录)**
- **职责**:使用 LLM 或重新转写提升句子质量,适用于更复杂表达、用户配置优化等情景。
- **特点**:异步执行,支持任务排队与超时处理;高质量输出。
- **实时性保障**:不影响主路径,优化输出采用回填策略。

### **模块 H:异步输出模块(确认状态)**
- **职责**:将优化后的结果替换展示或做差分更新,供用户确认或查看。
- **特点**:支持区分原始和优化版本的展示策略。
- **实时性保障**:异步更新,不影响当前交互。

---

### 🔧 模块功能说明

上述模块可单独部署为微服务,也可组合为本地流式推理程序,适配不同设备和场景需求。

- Whisper 模块支持 CUDA / CPU 切换;
- 翻译模块支持 NLLB 量化模型,响应时间控制在百毫秒级;
- VAD 模块可基于 WebRTC VAD、Silero VAD 等方案替换。

未来可拓展功能包括:
- 多用户通话流识别(扬声器分离);
- 跨语种对话自动识别与应答生成;
- 可控 LLM 插槽,用于个性化纠错 / 术语优化等场景。