> ## Documentation Index
> Fetch the complete documentation index at: https://guides.curiousmints.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AssemblyAI Transcription

> Transcribe Audio Using the AssemblyAI API

<Info>
  **Prerequisite** You should have an API key from AssemblyAI and have it stored in a .env file.
</Info>

## Introduction

This guide demonstrates how to transcribe an audio file using the AssemblyAI API. You'll learn how to set up your environment, configure your API key, and transcribe an audio file.

<Accordion title="Show me the code" icon="code">
  ```python assemblyai-transcription.py theme={null}
  import os
  from dotenv import load_dotenv
  import assemblyai as aai

  # Load environment variables from .env file
  load_dotenv()

  # Get AssemblyAI API key from environment variables
  aai.settings.api_key = os.getenv('ASSEMBLYAI_API_KEY')

  # Initialize the transcriber
  transcriber = aai.Transcriber()

  # Define the audio URL
  audio_url = (
      "https://cdn.simplecast.com/audio/3fa5a74f-0522-4a05-a00e-d880fe923dac/episodes/6eb635c7-2622-4902-a268-8d41a258c9c8/audio/d70e31a6-19d5-4ad7-ba83-3aee66923b88/default_tc.mp3"
  )

  # Set the transcription configuration
  config = aai.TranscriptionConfig(speaker_labels=True)

  # Transcribe the audio file
  transcript = transcriber.transcribe(audio_url, config)

  # Print the transcription text and ID
  print(transcript.text)
  print(transcript.id)

  # Print the speaker labels and their corresponding text
  for utterance in transcript.utterances:
      print(f"Speaker {utterance.speaker}: {utterance.text}")
  ```
</Accordion>

## Setup

### Step 1: Install Required Packages

First, install the necessary packages using pip:

```sh theme={null}
pip install python-dotenv assemblyai
```

### Step 2: Create a .env File

Create a `.env` file in the project root with your AssemblyAI API key:

```plaintext theme={null}
ASSEMBLYAI_API_KEY=your_assemblyai_api_key
```

## Transcribing an Audio File

### Step 3: Create the Python Script

Create a Python script named `assemblyai-transcription.py` with the following content:

```python assemblyai-transcription.py theme={null}
import os
from dotenv import load_dotenv
import assemblyai as aai

# Load environment variables from .env file
load_dotenv()

# Get AssemblyAI API key from environment variables
aai.settings.api_key = os.getenv('ASSEMBLYAI_API_KEY')

# Initialize the transcriber
transcriber = aai.Transcriber()

# Define the audio URL
audio_url = (
    "https://cdn.simplecast.com/audio/3fa5a74f-0522-4a05-a00e-d880fe923dac/episodes/6eb635c7-2622-4902-a268-8d41a258c9c8/audio/d70e31a6-19d5-4ad7-ba83-3aee66923b88/default_tc.mp3"
)

# Set the transcription configuration
config = aai.TranscriptionConfig(speaker_labels=True)

# Transcribe the audio file
transcript = transcriber.transcribe(audio_url, config)

# Print the transcription text and ID
print(transcript.text)
print(transcript.id)

# Print the speaker labels and their corresponding text
for utterance in transcript.utterances:
    print(f"Speaker {utterance.speaker}: {utterance.text}")
```

### Step 4: Run the Script

Ensure you have the `.env` file in the same directory as the script. Then, execute the script:

```sh theme={null}
python assemblyai-transcription.py
```

## Conclusion

You have successfully transcribed an audio file using the AssemblyAI API! This guide provided a basic example to get you started. You can now expand on this by customizing the transcription configuration and handling different audio files.
