模块怎么选
UI / App ↕ events@ottervoice/core ← 会话、状态机、VAD、打断、用量 ↕ RuntimeAdapterruntime-web | react-native | node ↕ Provider interfacesprovider-deepgram | elevenlabs | openrouter | azure-speech | 自研| 包 | 何时用 |
|---|---|
@ottervoice/core |
始终需要。createVoiceSession、事件、Mock。 |
@ottervoice/runtime-web |
浏览器麦克风 + 播放。 |
@ottervoice/runtime-react-native |
Expo / RN,注入原生音频能力。 |
@ottervoice/runtime-node |
CLI / 服务端音频与网络。 |
Providers |
按云厂商选;也可实现同一接口自研。 |
@ottervoice/protocol |
跨进程 / 跨端转发 Session 事件时。 |
@ottervoice/provider-utils |
写自定义 Provider:凭证、SSE、WebSocket ASR。 |
pipeline |
路径 | 适用 |
|---|---|---|
asr_llm_tts(默认) |
ASR 文本 → LLM 流式文本 → TTS | 经典级联,易换件 |
audio_llm |
ASR 字幕 ∥ Audio LLM 文本/PCM(时机可配置) | 低延迟一体模型 |
OpenRouter 等只是仓库附带适配器,不是固定线上通路。