Whisper Api To Whisper Cpp

Migrate from proprietary APIs to open-source alternatives

Difficulty: Medium Time: 45 minutes Category: Migration

Whisper API → Whisper.cpp Migration

This notebook demonstrates how to migrate from OpenAI's Whisper API to using Whisper.cpp for local speech-to-text processing.

Benefits of Whisper.cpp

  • Local processing: No API calls, complete privacy
  • Cost savings: No per-minute charges
  • Offline capability: Works without internet
  • Customization: Fine-tune for your specific use case

Installation

# Install whisper.cpp and dependencies
%pip install whisper-cpp-python
%pip install librosa soundfile

Setup

import whisper_cpp
import librosa
import soundfile as sf
import numpy as np
from pathlib import Path

Model Loading

# Load Whisper model (downloads automatically on first run)
model = whisper_cpp.Whisper.from_pretrained("base")
print("Model loaded successfully!")

Audio Processing Function

def transcribe_audio(audio_file_path):
    """
    Transcribe audio file using Whisper.cpp
    
    Args:
        audio_file_path (str): Path to audio file
    
    Returns:
        dict: Transcription result with text and metadata
    """
    # Load audio file
    audio, sr = librosa.load(audio_file_path, sr=16000)
    
    # Transcribe using Whisper.cpp
    result = model.transcribe(audio)
    
    return {
        "text": result["text"],
        "language": result.get("language", "auto"),
        "segments": result.get("segments", [])
    }

Interactive Demo

Loading...