Skip to content
Tutorials5 min read

ऑडियो ट्रांसक्रिप्शन की समीक्षा सेट करना

Potato में ऑडियो ट्रांसक्रिप्शन समीक्षा का कार्य सेट कीजिए: waveform, अलग-अलग गति पर प्लेबैक, और ASR की गुणवत्ता आँकने के लिए वहीं पाठ सुधारने वाला इंटरफ़ेस।

Potato Team

अच्छा ASR प्रशिक्षण डेटा आम तौर पर वहाँ से शुरू होता है जहाँ कोई इंसान मशीन के पहले मसौदे को जाँचता है। यह ट्यूटोरियल दिखाता है कि ऐसा इंटरफ़ेस कैसे बनाएँ जिसमें एनोटेटर ऑडियो सुनें, waveform देखें, और मशीन के बनाए ट्रांसक्रिप्ट को सुधारें। इसके पीछे काम करने वाले ऑडियो विकल्पों के लिए ऑडियो एनोटेशन दस्तावेज़ देखें।

हम क्या बना रहे हैं

ऐसा इंटरफ़ेस जिसमें हो:

  • waveform का दृश्य
  • प्लेबैक नियंत्रण (चलाना, रोकना, गति बदलना)
  • संपादन लायक ट्रांसक्रिप्ट पाठ
  • ऑडियो के लिए गुणवत्ता रेटिंग
  • अनिश्चित हिस्सों पर भरोसे का निशान

बुनियादी कॉन्फ़िगरेशन

yaml
annotation_task_name: "Transcription Review"
 
data_files:
  - "data/transcripts.json"
 
item_properties:
  id_key: id
  text_key: asr_transcript
 
annotation_schemes:
  # Audio playback
  - annotation_type: audio_annotation
    name: audio_player
 
  # Corrected transcript
  - annotation_type: text
    name: corrected_transcript
    description: "Edit the transcript to match what you hear"
    rows: 4
    placeholder: "Type the corrected transcript..."
    label_requirement:
      required: true
 
  # Quality rating
  - annotation_type: radio
    name: audio_quality
    description: "Rate the audio quality"
    labels:
      - Clear
      - Slightly noisy
      - Very noisy
      - Unintelligible

नमूना डेटा प्रारूप

data/transcripts.json बनाइए:

json
{"id": "audio_001", "audio_path": "/audio/recording_001.wav", "asr_transcript": "Hello how are you doing today"}
{"id": "audio_002", "audio_path": "/audio/recording_002.wav", "asr_transcript": "The weather is nice outside"}
{"id": "audio_003", "audio_path": "/audio/recording_003.wav", "asr_transcript": "Please call me back when your free"}

ऑडियो एनोटेशन का सेटअप

Potato में ऑडियो एनोटेशन आपकी annotation scheme के भीतर audio_annotation प्रकार से होता है। प्लेयर waveform ख़ुद बनाता है और प्लेबैक नियंत्रण भी ख़ुद जोड़ता है, इसलिए आपको उन्हें अलग से जोड़ना नहीं पड़ता:

yaml
annotation_schemes:
  - annotation_type: audio_annotation
    name: audio_player
    description: "Listen to the audio recording"

ऑडियो प्लेयर में चलाने/रोकने, आगे-पीछे जाने और गति बदलने के नियंत्रण पहले से मौजूद रहते हैं।

पूरा ट्रांसक्रिप्शन इंटरफ़ेस

yaml
annotation_task_name: "ASR Correction and Annotation"
 
data_files:
  - "data/asr_output.json"
 
item_properties:
  id_key: id
  text_key: hypothesis
 
annotation_schemes:
  # Audio player
  - annotation_type: audio_annotation
    name: audio_player
 
  # Main transcript correction
  - annotation_type: text
    name: transcript
    description: "Correct the transcript below"
    rows: 4
    rows: 4
    label_requirement:
      required: true
 
  # Speaker identification
  - annotation_type: radio
    name: num_speakers
    description: "How many speakers are in this recording?"
    labels:
      - "1 speaker"
      - "2 speakers"
      - "3+ speakers"
      - "Cannot determine"
 
  # Audio quality
  - annotation_type: radio
    name: quality
    description: "Overall audio quality"
    labels:
      - name: Excellent
        description: "Crystal clear, studio quality"
      - name: Good
        description: "Clear speech, minor background noise"
      - name: Fair
        description: "Understandable but noisy"
      - name: Poor
        description: "Very difficult to understand"
      - name: Unusable
        description: "Cannot transcribe accurately"
 
  # Issues checklist
  - annotation_type: multiselect
    name: issues
    description: "Select all issues present (if any)"
    labels:
      - Background noise
      - Overlapping speech
      - Accented speech
      - Fast speech
      - Mumbling/unclear
      - Technical audio issues
      - Non-English words
      - Profanity present
      - None
 
  # Confidence
  - annotation_type: likert
    name: confidence
    description: "How confident are you in your transcription?"
    size: 5
    min_label: "Guessing"
    max_label: "Certain"
 
annotation_guidelines:
  title: "Transcription Guidelines"
  content: |
    ## Your Task
    Listen to the audio and correct the ASR transcript.
 
    ## Transcription Rules
    - Transcribe exactly what is said
    - Include filler words (um, uh, like)
    - Use proper punctuation and capitalization
    - Mark unintelligible sections with [unintelligible]
    - Mark uncertain words with [word?]
 
    ## Special Notations
    - [unintelligible] - Cannot understand
    - [word?] - Uncertain about word
    - [crosstalk] - Overlapping speech
    - [noise] - Non-speech sound
    - [pause] - Significant silence

शब्द-स्तर का एनोटेशन

शब्द-दर-शब्द सुधार दर्ज करने के लिए आप पाठ फ़ील्ड के साथ span एनोटेशन इस्तेमाल कर सकते हैं:

yaml
annotation_schemes:
  - annotation_type: audio_annotation
    name: audio_player
 
  - annotation_type: text
    name: transcript
    rows: 4
 
  - annotation_type: span
    name: word_corrections
    description: "Mark words that needed correction"
    title: transcript
    labels:
      - name: corrected
        color: "#FCD34D"
        description: "Word was changed"
      - name: inserted
        color: "#4ADE80"
        description: "Word was added"
      - name: uncertain
        color: "#F87171"
        description: "Still not sure"

सेगमेंट पर आधारित ट्रांसक्रिप्शन

लंबी ऑडियो फ़ाइलों के लिए आप अपना डेटा समय की जानकारी वाले सेगमेंट के रूप में तैयार कर सकते हैं:

yaml
data_files:
  - "data/segments.json"
 
item_properties:
  id_key: id
  text_key: asr_text
 
annotation_schemes:
  - annotation_type: audio_annotation
    name: audio_player
 
  - annotation_type: text
    name: transcript
    rows: 4
    description: "Correct the transcript for this segment"

सेगमेंट के समय के साथ डेटा प्रारूप:

json
{
  "id": "seg_001",
  "audio_path": "/audio/long_recording.wav",
  "start_time": 0.0,
  "end_time": 5.5,
  "asr_text": "Welcome to today's presentation"
}

आउटपुट प्रारूप

json
{
  "id": "audio_001",
  "audio_path": "/audio/recording_001.wav",
  "original_transcript": "Hello how are you doing today",
  "annotations": {
    "transcript": "Hello, how are you doing today?",
    "num_speakers": "1 speaker",
    "quality": "Good",
    "issues": ["None"],
    "confidence": 5
  },
  "annotator": "transcriber_01",
  "time_spent_seconds": 45
}

गुणवत्ता नियंत्रण

Potato एनोटेशन में लगा समय अपने आप दर्ज करता है। गुणवत्ता नियंत्रण के लिए अपनी डेटा फ़ाइल में कुछ ध्यान जाँचने वाले आइटम मिला दीजिए: ऐसे क्लिप जिनका सही जवाब आपको पहले से पता हो, ताकि वे एनोटेटर पकड़ में आ जाएँ जो असल में सुन ही नहीं रहे।

एनोटेशन कहाँ और कैसे लिखे जाएँ, यह आप तय कर सकते हैं:

yaml
output_annotation_dir: "annotation_output"
export_annotation_format: "json"

ट्रांसक्रिप्शन कार्यों के लिए सुझाव

सटीकता का ज़्यादातर काम ठीक-ठाक हेडफ़ोन और शांत कमरा कर देते हैं। जो हिस्सा साफ़ समझ न आए उसके लिए ऑडियो धीमा कीजिए, और एक से ज़्यादा चक्कर की गुंजाइश रखिए: सुनना, ट्रांसक्राइब करना, फिर लौटकर जाँचना। ट्रांसक्रिप्शन दिमाग़ को थका देता है, इसलिए बीच-बीच में विराम रखिए।

अगले क़दम


पूरे ऑडियो दस्तावेज़ ऑडियो एनोटेशन पर हैं।