用 CloudBase 云函数代理 Deepgram 语音转文字
一句话定义:在 CloudBase 云函数里用
@deepgram/sdk调 Deepgram 的nova-3模型,从云存储里拉一段音频做 STT,拿到带 punctuation/diarization/timestamp 的转写结果,直接写进数据库。预计耗时:30 分钟 | 难度:进阶
适用场景
- 适用:有会议录音/语音笔记/客服通话要批量转文字,自己不想维护 Whisper 推理机器
- 适用:需要"谁在什么时间说了什么"——Deepgram 的
diarize+utterances直接给说话人编号 + 句级时间戳,自建 Whisper 拼这套要写一堆后处理 - 适用:中英混说也能跑——
nova-3是 Deepgram 当前 SOTA,中英文都覆盖 - 不适用:实时低延迟场景(直播字幕/语音助手),那种走 WebSocket 流式,本文是批量接口(prerecorded);流式做法本文末尾会给最小代码,但部署在云函数里不划算,推荐走 Web 云函数或直连客户端
- 不适用:转写量极大(每天上万小时),那时候 Deepgram 单价 × 量级会很疼,值得对比一下自建 Whisper Large v3 的 GPU 成本
环境要求
| 依赖 | 版本 |
|---|---|
| Node.js(云函数运行时) | ≥ 18 |
@cloudbase/node-sdk | latest |
@deepgram/sdk | ^4.x(本文按 v4 API 写) |
| 云函数类型 | 普通事件函数即可;批量转写不需要长连接 |
| 公网出口 | 云函数默认能访问公网,Deepgram API 走 api.deepgram.com,境内可达 |
需要准备:
- Deepgram 账号 + 一个 API key(注册即送 200 美元额度,够练手)
- 一个 CloudBase 环境,里面有云存储 + 数据库
- 一个测试用音频文件,中文/英文都行,建议先用 30 秒以内的小样本