소개
음성인식(STT) API는 OpenAI의 Whisper 모델을 기반으로 오디오 파일을 텍스트로 변환할 수 있습니다. 다양한 용도를 지원합니다:- 오디오 파일을 텍스트로 전사
- 다국어 오디오를 영어로 번역
- 다양한 오디오 형식 입력 지원
- 여러 출력 형식 옵션 제공
- whisper-large-v3 —— 최신 대형 Whisper 모델, 다국어 지원, 중국어 인식에는 적절한 프롬프트와 낮은 temperature 값 사용 필요
- whisper-1 —— 초기 Whisper 모델, 안정적이고 신뢰할 수 있으며 다국어 지원
- distil-whisper-large-v3-en —— 증류 모델, 처리 속도가 빠르지만 정확도가 다소 낮음, 낮은 temperature 값과 함께 사용 권장
성능 권장사항:
- 중국어 오디오의 경우
whisper-large-v3
모델 사용을 권장하며, 적절한 프롬프트와 더 낮은 temperature 값(예: 0.2)을 조합하여 환각을 줄임 - 영어 오디오나 빠른 처리가 필요한 경우
distil-whisper-large-v3-en
모델 사용 - 지원되는 오디오 형식: mp3, mp4, mpeg, mpga, m4a, wav, webm
- 파일 크기 제한: 최대 25MB
모델 호출 방법
음성 전사(Transcriptions)
/v1/audio/transcriptions
엔드포인트를 사용하여 client.audio.transcriptions.create()
메서드로 호출, 오디오를 원래 언어의 텍스트로 전사.
음성 번역(Translations)
/v1/audio/translations
엔드포인트를 사용하여 client.audio.translations.create()
메서드로 호출, 오디오를 영어 텍스트로 번역.
요청 매개변수
전사 매개변수(Transcriptions)
전사할 오디오 파일 객체, 지원 형식: mp3, mp4, mpeg, mpga, m4a, wav, webm, 최대 25MB
사용할 모델 ID. 옵션:
whisper-large-v3
, whisper-1
, distil-whisper-large-v3-en
입력 오디오의 언어, ISO-639-1 형식(예: ‘en’, ‘ko’). 언어 지정으로 정확도와 지연시간 개선 가능
모델의 스타일을 가이드하거나 이전 오디오 세그먼트를 계속하는 선택적 텍스트 프롬프트. 프롬프트는 오디오 언어와 일치해야 함
전사 출력 형식. 옵션:
json
(기본값), text
, srt
, verbose_json
, vtt
0과 1 사이의 샘플링 temperature. 높은 값은 더 무작위한 출력을, 낮은 값은 더 집중적이고 결정적인 출력을 생성. 기본값은 0
타임스탬프 세분화. 옵션:
word
, segment
. response_format이 verbose_json일 때만 사용 가능번역 매개변수(Translations)
번역할 오디오 파일 객체, 전사와 동일한 형식
사용할 모델 ID, 전사 매개변수와 동일
번역 스타일을 가이드하는 선택적 영어 텍스트 프롬프트
번역 출력 형식, 전사 매개변수와 동일
샘플링 temperature, 전사 매개변수와 동일
사용 방법
응답 형식
JSON 형식(기본값)
상세 JSON 형식(verbose_json)
텍스트 형식
SRT 형식
VTT 형식
모범 사례
- 한국어 오디오 처리:
whisper-large-v3
모델 사용,language="ko"
설정,temperature=0.2
, 적절한 한국어 프롬프트 제공 - 영어 오디오 처리: 더 빠른 처리 속도를 위해
distil-whisper-large-v3-en
사용 가능 - 노이즈 처리: 배경 소음을 무시하거나 말더듬을 정리하도록 프롬프트 사용
- 긴 오디오 처리: API가 긴 오디오를 자동으로 분할 처리하므로, 최상의 결과를 위해 오디오 품질 전처리 권장
- 타임스탬프 필요시: 정확한 타임스탬프가 필요할 때
verbose_json
형식과timestamp_granularities
사용 - 자막 제작: 추가 처리 없이
srt
또는vtt
형식 출력을 직접 사용