This documentation page is also available as an interactive notebook. You can launch the notebook in
Kaggle or Colab, or download it for use with an IDE or local Jupyter installation, by clicking one of the
above links.
Transcribe audio files and generate summaries automatically using
Whisper and LLMs.
Problem
You have podcast episodes, meeting recordings, or interviews that need
both transcription and summarization. Doing this manually is
time-consuming and doesn’t scale.
Solution
What’s in this recipe:
- Transcribe audio with Whisper (runs locally)
- Generate summaries with an LLM
- Chain transcription → summarization automatically
You create a pipeline where audio is transcribed first, then the
transcript is summarized. Both steps run automatically when you insert
new audio files.
Setup
Created directory ‘podcast_demo’.
<pixeltable.catalog.dir.Dir at 0x30c117650>
Create the pipeline
Create a table with audio input, then add computed columns for
transcription and summarization:
Created table ‘episodes’.
Added 0 column values with 0 errors.
No rows affected.
Added 0 column values with 0 errors.
No rows affected.
Added 0 column values with 0 errors.
No rows affected.
Added 0 column values with 0 errors.
No rows affected.
Process audio files
Insert audio files and watch the pipeline run automatically:
Inserting rows into `episodes`: 1 rows [00:00, 185.18 rows/s]
Inserted 1 row with 0 errors.
1 row inserted, 8 values computed.
Explanation
Pipeline architecture:
Audio → Whisper transcription → Transcript text → LLM summarization → Summary
Each step is a computed column that depends on the previous one. When
you insert a new audio file, all steps run automatically in sequence.
Whisper model options:
For production with varied audio quality, use small.en or larger.
See also