AI选型架构文档
AI选型架构文档:DuRT macOS语音识别与翻译工具
版本号:1.0
日期:2025年3月
一、项目背景
DuRT 是一款基于 macOS 的本地化语音识别与翻译工具,核心需求包括:
- 实时性:语音输入到文本输出延迟 ≤300ms
- 隐私性:100% 本地处理,无数据上传
- 多语言支持:至少支持中/英/日/韩等主流语言
- 系统集成:悬浮窗展示、快捷键唤醒
二、架构目标
维度 | 目标说明 |
---|---|
性能 | 单次推理延迟 <200ms,内存占用 <500MB |
扩展性 | 支持动态加载新语言模型 |
安全性 | 符合 macOS Sandbox 规范,无网络权限 |
兼容性 | 支持 Apple Silicon (M系列) 及 Intel 芯片 |
三、核心AI技术选型与版本
1. 语音识别引擎
- 技术栈:
Apple Core ML 4.0
+Speech Framework (macOS 12.0+)
- 模型选型:
- 基础模型:
Apple官方预训练语音识别模型
(支持中/英/日/韩) - 增强模型:微调版
Wav2Vec 2.0
(转换至 Core ML 格式)
- 基础模型:
- 优势:
- 原生利用 Apple Neural Engine 加速,推理延迟 <150ms
- 离线运行,无隐私风险
2. 翻译引擎
- 技术栈:
Core ML 4.0
+SwiftNLP
- 模型选型:
- 轻量化模型:
Facebook M2M100-418M
(转换为 Core ML) - 优化方向:量化压缩至 120MB/语言,支持中↔英/日/韩互译
- 轻量化模型:
- 性能指标:单句翻译延迟 <100ms
3. 本地模型管理
- 框架:
Swift Package Manager 5.5
- 机制:
- 模型按需下载(首次使用触发)
- 存储路径:
~/Library/Application Support/DuRT/Models
- 签名校验:
Apple Code Signing
+SHA-256
验证
四、系统架构设计
🔄 正在加载流程图...
graph LR
A[麦克风输入] --> B[音频预处理]
B --> C{语音识别引擎}
C -->|文本流| D{翻译引擎}
D --> E[结果渲染]
E --> F[悬浮窗输出]
G[本地模型库] --> C & D
分层说明:
- 输入层:
- 使用
AVFoundation
捕获音频流,采样率 16kHz - 实时分帧处理(帧长 30ms)
- 使用
- 推理层:
- 语音识别:
Speech
API 分句 → Core ML 模型填充上下文 - 翻译:动态加载目标语言模型,缓存最近使用模型
- 语音识别:
- 输出层:
- SwiftUI 绘制悬浮窗,支持深色模式
- 结果缓存机制:最近10条历史记录(本地 SQLite)
五、关键实施步骤
- 环境搭建:
- Xcode 15.0+,macOS 12.0 SDK
- Core ML Tools 4.0(模型转换)
- 音频处理流水线:
let audioEngine = AVAudioEngine() audioEngine.inputNode.installTap(...) // 实时流捕获 SpeechRecognizer.process(buffer) { text in Translator.translate(text, to: targetLang) }
- 模型部署方案:
- 基础包内置英文模型(30MB)
- 其他语言模型通过
Background URLSession
按需下载
- 性能优化:
- 利用
MLComputeUnits.cpuAndNeuralEngine
优先调用 ANE - 推理批处理:累积 3 个语音分片后批量识别
- 利用
六、扩展性与安全设计
- 扩展性:
- 模型热加载:新增语言时下载
.mlmodelc
包至沙盒目录 - 插件化接口:预留
TranslationProtocol
支持更换引擎
- 模型热加载:新增语言时下载
- 安全性:
- 数据流全本地化,禁用
NSMicrophoneUsageDescription
以外的权限 - 模型加密:Xcode 编译时启用
MLModelEncryption
- 数据流全本地化,禁用
- 健壮性:
- 音频异常处理:自动丢弃 >2s 静音片段
- 回退机制:当 ANE 不可用时切换至 CPU 模式
七、性能基准(Apple M2芯片)
任务 | 延迟 | 内存占用 |
---|---|---|
语音识别(中→英) | 130ms | 220MB |
翻译(中→日) | 85ms | 110MB |
端到端(输入→输出) | 240ms | 350MB |
文档总结:
本方案通过深度集成 macOS 原生框架(Core ML + Speech)实现低延迟、高隐私的本地化AI处理,同时采用模块化设计保障未来扩展性。关键技术决策包括:轻量化模型选择、AN硬件加速优先策略、沙盒化数据存储,符合 DuRT 作为生产力工具的核心定位。