cjm-transcription-plugin-whisper
OpenAI Whisper plugin for the cjm-transcription-plugin-system library - provides local speech-to-text transcription with configurable model selection and parameter control.
Install
pip install cjm_transcription_plugin_whisperProject Structure
nbs/
└── plugin.ipynb # Plugin implementation for OpenAI Whisper transcription
Total: 1 notebook across 1 directory
Module Dependencies
graph LR
plugin[plugin<br/>Whisper Plugin]
No cross-module dependencies detected.
CLI Reference
No CLI commands found in this project.
Module Overview
Detailed documentation for each module in the project:
Whisper Plugin (plugin.ipynb)
Plugin implementation for OpenAI Whisper transcription
Import
from cjm_transcription_plugin_whisper.plugin import (
WhisperLocalPlugin
)Classes
class WhisperLocalPlugin:
def __init__(self):
"""Initialize the Whisper plugin with default configuration."""
self.logger = logging.getLogger(f"{__name__}.{type(self).__name__}")
self.config = {}
self.model = None
self.device = None
self.model_dir = None
@property
def name(
self
) -> str: # the plugin name identifier
"OpenAI Whisper transcription plugin."
def __init__(self):
"""Initialize the Whisper plugin with default configuration."""
self.logger = logging.getLogger(f"{__name__}.{type(self).__name__}")
self.config = {}
self.model = None
self.device = None
self.model_dir = None
@property
def name(
self
) -> str: # the plugin name identifier
"Initialize the Whisper plugin with default configuration."
def name(
self
) -> str: # the plugin name identifier
"Get the plugin name identifier."
def version(
self
) -> str: # the plugin version string
"Get the plugin version string."
def supported_formats(
self
) -> List[str]: # list of supported audio file formats
"Get the list of supported audio file formats."
def get_config_schema(
) -> Dict[str, Any]: # the configuration schema dictionary
"Return configuration schema for Whisper."
def get_current_config(
self
) -> Dict[str, Any]: # the current configuration dictionary
"Return current configuration."
def initialize(
self,
config: Optional[Dict[str, Any]] = None # configuration dictionary to initialize the plugin
) -> None
"Initialize the plugin with configuration."
def execute(
self,
audio: Union[AudioData, str, Path], # audio data or path to audio file to transcribe
**kwargs # additional arguments to override config
) -> TranscriptionResult: # transcription result with text and metadata
"Transcribe audio using Whisper."
def is_available(
self
) -> bool: # True if Whisper and its dependencies are available
"Check if Whisper is available."
def cleanup(
self
) -> None
"Clean up resources."