Skip to content

需求文档


版本:0.0.1
作者:Eric
日期:2025.2.1
审批人:暂无

1.引言

  • 文档目的:本文档定义了TalkFlow移动应用的详细需求,旨在指导开发、测试和部署过程。文档确保所有利益相关者对应用的功能和性能有统一的理解。
  • 项目背景:面向出国工作、雅思备考、个人爱好等对英语口语需求大的用户,解决用户缺乏英语口语环境、真人对话没有勇气开口的痛点,设计一款Ai英语口语练习应用。项目源于初步的市场调研,用户需求包括简单易用和跨设备同步。
  • 范围:本文档覆盖应用的Core功能,包括语音输入(ASR)、自然语言处理(NLP)、语音输出(TTS)、对话管理、用户管理、系统管理。超出范围的如监控看板、Ai视频对话功能,将在后续版本中考虑。
  • 定义术语
    • 用户:应用的使用者,包括个人用户和团队成员

2.需求概述

Talkflow是一款AI英语口语练习软件,目的是帮助用户练习口语、纠正发音,成为用户的私人Ai英语教练。其核心功能包括:

  • 实时对话
  • 意图识别
  • 回复生成
  • 登录/权限控制
  • 多轮上下文跟踪,对话日志存储

核心指标

  • 语音识别准确率(中英混合≥90%)
  • 端到端响应时间≤2s
  • 支持至少10轮的上下文记忆

3.功能需求

3.1 模块划分

功能需求
语音输入(ASR)- 支持实时麦克风录制
- 中英文自动检测
- 环境降噪音(可选)
自然语言处理(NLP引擎)- 中英混合理解
- 敏感词过滤
- 支持天气查询/翻译等技能扩展(可选)
语音输出(TTS)- 可调节语速/音调
- 中英语音无缝切换
对话管理- 多轮对话状态跟踪
- 对话日志记录
用户管理登录/权限控制、使用记录查询
系统管理- API调用监控
- 用户反馈收集
- 错误日志可视化

3.2 详细功能

语音交互流程

用户唤醒 → 语音录制 → ASR转文本 → NLP处理 → TTS语音回复

4.技术架构

技术架构
语音转文本(ASR)Kaldi + WebRTC/WebAudio(Web) + AudioRecord (Android) + AVAudioEngine (iOS)
自然语言处理(NLP引擎)ChatGLM3(清华智谱) 、 BERT(需要知识蒸馏)
语音合成(TTS)微软Azure TTS
对话管理Django实现
用户管理Django实现
系统管理- api监控:Prometheus + Grafana(免费,社区支持)
- 用户反馈:Feedback.js + Google Forms(低成本)
- 日志存储:Grafana Loki(低存储开销)

5. 模块开发方案

预期按6个核心模块开发,通过API解耦

模块1:语音输入处理(ASR)

  • 技术栈:Kaldi + WebRTC(Web端)/ AudioRecord (Android) + AVAudioEngine (iOS)
  • 输入:实时音频流
  • 输出:文本/语音(带语言标签,如{"text":"你好Hello", "lang":"zh-en"})
  • 验收标准:中英混合语句分词正确率≥85%

模块2:NLP核心引擎

  • 子模块拆分NLP子模块拆分
  • 技术方案:
    • 意图识别:微调BERT-wwm模型
    • 回复生成:ChatGLM3 + LoRA微调(行业知识注入)

模块3:语音合成(TTS)

  • 关键需求:
    • 中英文语音支持情感合成(如高兴/平静等)
    • 英文支持多发音人选择
  • 优化点:流式传输避免完整生成延迟

模块4:对话状态管理

  • 数据结构示例:
    python
    class DialogState:
        def __init__(self):
            self.history = []  # 存储对话轮次
            self.slots = {}    # 任务型对话填槽(如{"city":"北京"})
            self.context = ""  # 当前上下文摘要

模块5:前后端交互

  • API设计规范:
    python
    POST /v1/chat
    Request: {audio: "base64_encoded_data", lang: "auto"}
    Response: {audio: "base64", text: "回复内容"}
  • Web端关键技术:
    • 使用MediaRecorder API实现浏览器录音
    • WebSocket保持长连接

模块6:运维监控

  • 必备组件:
    • Prometheus监控API延迟
    • ELK日志分析系统(记录NLP错误案例)

非功能需求

  • 性能:并发支持≥1000 QPS(云部署)
  • 安全:用户语音数据加密存储(符合GDPR)
  • 兼容性:Android/iOS/Web三端支持(可选)

开发里程碑规划

阶段时间交付物跨模块依赖
原型期2周可演示的ASR→NLP→TTS流水线模块1/2/3基础对接
Alpha4周完整前后端闭环+基础对话管理模块4状态机与模块5联调
Beta3周性能优化+多端适配模块6监控系统接入
发布1周压力测试报告+用户文档-

风险与约束

  • 中文方言识别准确率低
  • 自研NLP模型消耗研发成本巨大

Released under the MIT License.