ऑडियो ट्रांसक्रिप्शन की समीक्षा सेट करना
Potato में ऑडियो ट्रांसक्रिप्शन समीक्षा का कार्य सेट कीजिए: waveform, अलग-अलग गति पर प्लेबैक, और ASR की गुणवत्ता आँकने के लिए वहीं पाठ सुधारने वाला इंटरफ़ेस।
अच्छा ASR प्रशिक्षण डेटा आम तौर पर वहाँ से शुरू होता है जहाँ कोई इंसान मशीन के पहले मसौदे को जाँचता है। यह ट्यूटोरियल दिखाता है कि ऐसा इंटरफ़ेस कैसे बनाएँ जिसमें एनोटेटर ऑडियो सुनें, waveform देखें, और मशीन के बनाए ट्रांसक्रिप्ट को सुधारें। इसके पीछे काम करने वाले ऑडियो विकल्पों के लिए ऑडियो एनोटेशन दस्तावेज़ देखें।
हम क्या बना रहे हैं
ऐसा इंटरफ़ेस जिसमें हो:
- waveform का दृश्य
- प्लेबैक नियंत्रण (चलाना, रोकना, गति बदलना)
- संपादन लायक ट्रांसक्रिप्ट पाठ
- ऑडियो के लिए गुणवत्ता रेटिंग
- अनिश्चित हिस्सों पर भरोसे का निशान
बुनियादी कॉन्फ़िगरेशन
annotation_task_name: "Transcription Review"
data_files:
- "data/transcripts.json"
item_properties:
id_key: id
text_key: asr_transcript
instance_display:
fields:
- key: audio_path
type: audio
label: "Recording"
display_options:
controls: true
show_waveform: true
annotation_schemes:
# 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 बनाइए:
{"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 ख़ुद बनाता है और प्लेबैक नियंत्रण भी ख़ुद जोड़ता है, इसलिए आपको उन्हें अलग से जोड़ना नहीं पड़ता:
instance_display:
fields:
- key: audio_path
type: audio
label: "Recording"
display_options:
controls: true
show_waveform: trueऑडियो प्लेयर में चलाने/रोकने, आगे-पीछे जाने और गति बदलने के नियंत्रण पहले से मौजूद रहते हैं।
पूरा ट्रांसक्रिप्शन इंटरफ़ेस
annotation_task_name: "ASR Correction and Annotation"
data_files:
- "data/asr_output.json"
item_properties:
id_key: id
text_key: hypothesis
instance_display:
fields:
- key: audio_path
type: audio
label: "Recording"
display_options:
controls: true
show_waveform: true
annotation_schemes:
# Main transcript correction
- annotation_type: text
name: transcript
description: "Correct the transcript below"
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_instructions: |
## Transcription Guidelines
### 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 एनोटेशन इस्तेमाल कर सकते हैं:
annotation_schemes:
- annotation_type: text
name: transcript
description: "Correct the transcript below"
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"सेगमेंट पर आधारित ट्रांसक्रिप्शन
लंबी ऑडियो फ़ाइलों के लिए आप अपना डेटा समय की जानकारी वाले सेगमेंट के रूप में तैयार कर सकते हैं:
data_files:
- "data/segments.json"
item_properties:
id_key: id
text_key: asr_text
instance_display:
fields:
- key: audio_path
type: audio
label: "Segment audio"
display_options:
controls: true
annotation_schemes:
- annotation_type: text
name: transcript
rows: 4
description: "Correct the transcript for this segment"सेगमेंट के समय के साथ डेटा प्रारूप:
{
"id": "seg_001",
"audio_path": "/audio/long_recording.wav",
"start_time": 0.0,
"end_time": 5.5,
"asr_text": "Welcome to today's presentation"
}आउटपुट प्रारूप
{
"instance_id": "audio_001",
"user_id": "transcriber_01",
"labels": {
"transcript": {"text_box": "Hello, how are you doing today?"},
"num_speakers": {"1 speaker": "true"},
"quality": {"Good": "true"},
"issues": {"None": "true"},
"confidence": {"5": "true"}
},
"spans": {},
"links": {}
}गुणवत्ता नियंत्रण
Potato एनोटेशन में लगा समय अपने आप दर्ज करता है। गुणवत्ता नियंत्रण के लिए अपनी डेटा फ़ाइल में कुछ ध्यान जाँचने वाले आइटम मिला दीजिए: ऐसे क्लिप जिनका सही जवाब आपको पहले से पता हो, ताकि वे एनोटेटर पकड़ में आ जाएँ जो असल में सुन ही नहीं रहे।
एनोटेशन कहाँ और कैसे लिखे जाएँ, यह आप तय कर सकते हैं:
output_annotation_dir: "annotation_output"
export_annotation_format: "jsonl"ट्रांसक्रिप्शन कार्यों के लिए सुझाव
सटीकता का ज़्यादातर काम ठीक-ठाक हेडफ़ोन और शांत कमरा कर देते हैं। जो हिस्सा साफ़ समझ न आए उसके लिए ऑडियो धीमा कीजिए, और एक से ज़्यादा चक्कर की गुंजाइश रखिए: सुनना, ट्रांसक्राइब करना, फिर लौटकर जाँचना। ट्रांसक्रिप्शन दिमाग़ को थका देता है, इसलिए बीच-बीच में विराम रखिए।
अगले क़दम
- कई वक्ताओं वाले ऑडियो के लिए speaker diarization जोड़िए
- ट्रांसक्रिप्शन के साथ-साथ भाव वर्गीकरण सेट कीजिए
- बड़े पैमाने के ट्रांसक्रिप्शन के लिए क्राउडसोर्सिंग कॉन्फ़िगर कीजिए
पूरे ऑडियो दस्तावेज़ ऑडियो एनोटेशन पर हैं।