Deepgram Nova-3 Stream API

通过插槽进行实时转录,在说话者仍在说话时返回中间结果,每句话结束后则返回稳定的转录。

Deepgram转录专有端点

关于 Deepgram Nova-3 Stream

通过插槽进行实时转录,在说话者仍在说话时返回中间结果,每句话结束后则返回稳定的转录。

音频以16 kHz单声道16位PCM的原始二进制帧形式上传。中间和确定的文字记录会以结果事件的形式返回。

也称为 Deepgram-Nova-3-Stream

transcriptionspeech to textrealtimestreaming asrmultilingual

Deepgram Nova-3 Stream 规格

模型 ID
deepgram-nova-3-stream
开发方
Deepgram
类别
转录
发布日期
-
输入
音频
输出
文本
端点
WEBSOCKET/v1/realtime
备用模型 ID
nova-3-streamdeepgram/deepgram-nova-3-stream

Deepgram Nova-3 Stream API 价格

来自 EmpirioLabs 目录的实时按量计费价格。只为实际用量付费,没有月度最低消费。

类型
规格
价格
转录
每分钟音频
$0.025
在完整价格页比较

如何调用 Deepgram Nova-3 Stream API

Deepgram Nova-3 Stream 通过 wss://api.empiriolabs.ai/v1/realtime?model=deepgram-nova-3-stream 的 WebSocket 转写实时音频流,而不是通过 HTTP 端点。使用模型 id deepgram-nova-3-stream 连接,并在握手时将 EmpirioLabs API 密钥作为 Authorization: Bearer 请求头发送。追加 base64 编码的 16 位 PCM 音频,说话过程中即可读取转写事件。 浏览器无法为 WebSocket 设置请求头,请从你的服务器发起该连接,再通过你自己的 socket 把音频转发给浏览器。 在EmpirioLabs 控制台获取 API 密钥。

Python (websockets)
import asyncio, json, os, websockets

async def main():
    async with websockets.connect(
        "wss://api.empiriolabs.ai/v1/realtime?model=deepgram-nova-3-stream",
        additional_headers=[
            ("Authorization", f"Bearer {os.environ['EMPIRIOLABS_API_KEY']}"),
        ],
        max_size=None,
    ) as ws:
        print(json.loads(await ws.recv())["type"])  # session.created

        import base64

        # 16-bit PCM microphone audio, base64 encoded, in small chunks.
        for chunk in read_microphone_chunks():
            await ws.send(json.dumps({
                "type": "input_audio_buffer.append",
                "audio": base64.b64encode(chunk).decode(),
            }))

        await ws.send(json.dumps({"type": "input_audio_buffer.commit"}))

        async for raw in ws:
            event = json.loads(raw)
            if event["type"].endswith("input_audio_transcription.delta"):
                # "text" is settled transcript; "stash" is still in progress.
                if event.get("text"):
                    print(event["text"], end="", flush=True)

asyncio.run(main())
Deepgram Nova-3 Stream API 完整参考

Deepgram Nova-3 Stream API 参数

EmpirioLabs 上 Deepgram Nova-3 Stream API 支持的请求参数。省略字段时使用默认值。

参数类型默认值范围 / 值描述
input_audio_formatenumlinear16linear16Encoding of the audio you send up: 16 kHz mono 16-bit PCM, as raw binary frames rather than base64.
languagestring--Optional language hint. Omit to let the model detect it.

须知

通过 wss@api.empiriolabs.ai/v1/realtime?model=deepgram-nova-3-stream 的 WebSocket 进行实时转录,并用普通授权承载者头进行认证。发送 16 kHz 单声道 16 位 PCM 作为二进制帧并读取转录事件;中间结果在说话者仍在说话时到达,每个短语都与is_final结算。在连接 URL 中添加 language= 以转录特定语言。计费按您上传的音频分钟计费。

Deepgram Nova-3 Stream API:常见问题

Deepgram Nova-3 Stream API 收费多少?

在 EmpirioLabs,Deepgram Nova-3 Stream 按量计费:转录 $0.025 每分钟音频。本页的实时价格表始终与 API 的实际计费一致。

Deepgram Nova-3 Stream 使用哪个端点?

Deepgram Nova-3 Stream 通过 api.empiriolabs.ai 上的 WEBSOCKET /v1/realtime 提供,使用标准的 Bearer 令牌认证。

集成之前可以在浏览器里试用 Deepgram Nova-3 Stream 吗?

Deepgram Nova-3 Stream 运行在 WebSocket 上,而不是一次请求一次响应,请从实时语音快速入门开始。用 EmpirioLabs API 密钥和模型 id deepgram-nova-3-stream 从你的服务器连接,然后双向流式传输音频。

如何获取 Deepgram Nova-3 Stream API 密钥?

创建 EmpirioLabs 账户,然后在控制台的 API Keys生成密钥。计费使用按量付费的额度,只为实际发出的请求付费。

准备好使用更好的终端了吗?

查看我们的定价,或者如果你想将自己的模型部署到我们的堆栈中,请联系我们。