DEV Community

Moustafa Abdelhamid
Moustafa Abdelhamid

Posted on

🚀 Getting Started with Deepgram Nova-3 for Real-Time Speech-to-Text

Introduction

Deepgram’s Nova-3 is the latest evolution in speech-to-text AI, offering real-time multilingual transcription, improved accuracy, and instant vocabulary updates. If you’re working on AI-driven transcription, you’ll want to explore this model.

At Transgate.ai, we took our first look at Nova-3, and the results were promising! (Check out our insights here: Transgate’s article).

In this guide, let’s get started with Nova-3 by setting up a simple transcription pipeline using Deepgram’s API.


Step 1: Set Up Your Deepgram API Key

First, sign up at Deepgram and grab your API key.

Then, install the Deepgram SDK:

npm install @deepgram/sdk 
Enter fullscreen mode Exit fullscreen mode

Step 2: Basic Real-Time Transcription

Using Node.js, we’ll create a simple WebSocket connection to transcribe live audio.

import { Deepgram } from '@deepgram/sdk'; import WebSocket from 'ws'; import fs from 'fs'; // Replace with your Deepgram API key const deepgramApiKey = 'YOUR_DEEPGRAM_API_KEY'; const audioFile = 'sample.wav'; // Path to your audio file const deepgram = new Deepgram(deepgramApiKey); const ws = new WebSocket('wss://api.deepgram.com/v1/listen', { headers: { Authorization: `Token ${deepgramApiKey}` }, }); ws.on('open', () => { console.log('Connected to Deepgram WebSocket'); const stream = fs.createReadStream(audioFile); stream.on('data', (chunk) => ws.send(chunk)); stream.on('end', () => ws.close()); }); ws.on('message', (message) => { const transcript = JSON.parse(message); console.log('Transcript:', transcript.channel.alternatives[0].transcript); }); ws.on('close', () => console.log('Connection closed')); 
Enter fullscreen mode Exit fullscreen mode

What This Script Does:

✅ Connects to Deepgram’s real-time transcription API

âś… Streams an audio file for processing

âś… Logs transcriptions in real time


Step 3: Customizing the Transcription

Nova-3 supports custom vocabulary and language models. To enhance accuracy, pass custom parameters like this:

const ws = new WebSocket('wss://api.deepgram.com/v1/listen?model=nova-3&language=en&keywords=AI,transcription'); 
Enter fullscreen mode Exit fullscreen mode

This boosts accuracy for domain-specific terms like AI, medical jargon, or industry-specific words.


Final Thoughts

Deepgram’s Nova-3 is fast, multilingual, and highly customizable. It’s a powerful tool for anyone building real-time voice applications.

🚀 Next Steps:

  • Try it with your own audio files 🎙️
  • Experiment with different languages 🌍
  • Fine-tune with custom vocabulary đź”§

Check out Transgate.ai’s first impressions: Read here.

What do you think about Nova-3? Let’s discuss in the comments! 👇

Top comments (0)