From 9afc2c76737546e37e882f2446583f04f7f4912e Mon Sep 17 00:00:00 2001 From: Peter Staar Date: Mon, 23 Jun 2025 15:44:14 +0200 Subject: [PATCH] added minimal_asr_pipeline Signed-off-by: Peter Staar --- docs/examples/minimal_asr_pipeline.py | 49 +++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 docs/examples/minimal_asr_pipeline.py diff --git a/docs/examples/minimal_asr_pipeline.py b/docs/examples/minimal_asr_pipeline.py new file mode 100644 index 00000000..8a487d94 --- /dev/null +++ b/docs/examples/minimal_asr_pipeline.py @@ -0,0 +1,49 @@ +from pathlib import Path + +from docling.datamodel import asr_model_specs +from docling.datamodel.base_models import ConversionStatus, InputFormat +from docling.datamodel.document import ConversionResult +from docling.datamodel.pipeline_options import AsrPipelineOptions +from docling.document_converter import AudioFormatOption, DocumentConverter +from docling.pipeline.asr_pipeline import AsrPipeline + + +def get_asr_converter(): + """Create a DocumentConverter configured for ASR with whisper_turbo model.""" + pipeline_options = AsrPipelineOptions() + pipeline_options.asr_options = asr_model_specs.WHISPER_TURBO + + converter = DocumentConverter( + format_options={ + InputFormat.AUDIO: AudioFormatOption( + pipeline_cls=AsrPipeline, + pipeline_options=pipeline_options, + ) + } + ) + return converter + + +def asr_pipeline_conversion(audio_path:Path) -> DoclingDocument: + """ASR pipeline conversion using whisper_turbo""" + # Check if the test audio file exists + assert audio_path.exists(), f"Test audio file not found: {audio_path}" + + converter = get_asr_converter() + + # Convert the audio file + result: ConversionResult = converter.convert(audio_path) + + # Verify conversion was successful + assert result.status == ConversionStatus.SUCCESS, ( + f"Conversion failed with status: {result.status}" + ) + return result.document + + +if __name__=="__main__": + + audio_path = Path("") + + doc = asr_pipeline_conversion(audio_path=audio_path) + print(doc.export_to_markdown())