AbsoluteJS

@absolutejs/voice-deepgram

@absolutejs/voice-deepgramv0.0.20-beta.104betaVoice & Media

Deepgram speech-to-text adapter for @absolutejs/voice

#Installation

BASH
bun add @absolutejs/voice-deepgram

#Capabilities

Overview

Flux sessions implement the provider-neutral session.configure(...) contract, allowing keyterms and language hints to be refreshed during a live stream. Nova sessions keep their opening configuration because Deepgram's Configure control message is a Flux capability.

Deepgram speech-to-text adapter for @absolutejs/voice.

Setup

The adapter accepts 16kHz mono pcm_s16le audio from core and forwards it to Deepgram without transcoding.

What It Maps

The adapter normalizes Deepgram events into the core STTAdapter contract.

Results with is_final=false -> partial

Results with is_final=true -> final

Show 5 more

speech_final=true -> normalized endOfTurn

UtteranceEnd -> normalized endOfTurn

Flux EndOfTurn or EagerEndOfTurn -> normalized endOfTurn

transport errors -> normalized error

socket close -> normalized close

Options

Supported options include:

apiKey

model

Show 10 more

language

punctuate

smartFormat

interimResults

endpointing

utteranceEndMs

vadEvents

diarize

numerals

profanityFilter

API Key

Set DEEPGRAM_API_KEY in your runtime environment, or pass the key explicitly in the adapter config.

Deepgram references used for this adapter design:

https://developers.deepgram.com/docs/audio-keep-alive

Show 4 more

https://developers.deepgram.com/docs/utterance-end

https://developers.deepgram.com/docs/endpointing

https://developers.deepgram.com/docs/flux/configuration

https://developers.deepgram.com/docs/listening-to-audio-streaming-over-websocket

Outcomes

What you can build

Build on the supported package contract

Use @absolutejs/voice-deepgram through its supported public entry points.

Hardening checklist

Production guidance

Make every external boundary explicitPin the deployed @absolutejs/voice-deepgram version, replace example or memory-backed dependencies with durable implementations, bound external calls, protect credentials, and emit enough evidence to retry or recover safely.

Follow in order

Troubleshooting path

1
Trace from the first failed boundary
Reproduce the smallest canonical @absolutejs/voice-deepgram example, confirm the supported entry point and version in the API explorer, then inspect the first boundary that did not produce its documented result.

#Setup

Partial snippet

Working example for Setup.

TS
import { deepgram } from "@absolutejs/voice-deepgram";

const stt = deepgram({
  apiKey: process.env.DEEPGRAM_API_KEY!,
  model: "nova-3",
  language: "en-US",
  punctuate: true,
  smartFormat: true,
});

#Public entry points

Supported entry points declared by this package manifest.

Package entry point declared in package.json.

@absolutejs/voice-deepgram@absolutejs/voice-deepgram/manifest@absolutejs/voice-deepgram/manifest.json

#Package commands

Scripts declared by this package manifest.

bun run buildrm -rf dist && bun build ./src/index.ts ./src/manifest.ts --outdir dist --target bun --external @absolutejs/manifest --external '@absolutejs/manifest/*' --external @absolutejs/voice --external '@absolutejs/voice/*' --external @sinclair/typebox --external '@sinclair/typebox/*' && tsc --emitDeclarationOnly --project tsconfig.json && absolute-manifest emit
bun run check:packagebun run format && bun run typecheck && bun run test && bun run verify-package && bun run build && bun run verify-package --artifacts
bun run formatprettier --write "./**/*.{js,ts,json,md}"
bun run testbun test
bun run typecheckbun run tsc --noEmit

#API reference

Search the declarations exported by the current package type files. Expand a symbol to inspect its source-backed signature.

7 symbols
deepgramexportPermalinkSource
TS
deepgram
Exported from @absolutejs/voice-deepgram