음성인식 언어
language 파라미터를 통해 음성인식에 사용할 언어를 설정할 수 있습니다. 이 파라미터는 whisper
모델을 사용할 때 필수적으로 설정해야 합니다.
지원 언어
- ISO 639-1 포맷의 2글자 언어 코드를 사용하여 총 100개의 언어를 지원합니다.
- 지원되는 전체 언어 목록은 whisper 공식 문서에서 확인하실 수 있습니다.
특별 키워드
language 파라미터에는 일반 언어 코드 외에도 두 가지 특별한 키워드를 사용할 수 있습니다:
detect
: 단일 언어로 이루어진 오디오의 언어를 자동으로 감지합니다.- 예: 전체 오디오가 영어로만 또는 한국어로만 이루어진 경우
multi
: 여러 언어가 혼합된 오디오를 처리합니다.- 문장 단위로 서로 다른 언어가 사용된 경우를 감지할 수 있습니다.
- 예: 영어 문장, 한국어 문장, 일본어 문장이 번갈아 나오는 경우
language_candidates 옵션
language에서 detect
또는 multi
키워드 사용 시 language_candidates
파라미터를 추가로 설정할 수 있습니다.
- 기본값:
["ko", "ja", "zh", "en"]
(한국어, 일본어, 중국어, 영어) - 특정 언어들로 범위를 한정하여 언어 감지의 정확도를 높일 수 있습니다.
caution
language
파라미터는whisper
모델 사용 시 필수입니다.sommers
모델에서는 이 파라미터를 사용할 수 없습니다.- 언어의 개수를 많이 지정할 수록 정확도가 떨어집니다.
사용 예시
- cURL
- Python
# 단일 언어(한국어) 설정
curl -X "POST" \
"https://openapi.vito.ai/v1/transcribe" \
-H "accept: application/json" \
-H "Authorization: Bearer ${YOUR_JWT_TOKEN}" \
-H "Content-Type: multipart/form-data" \
-F "file=@sample.wav" \
-F 'config={
"model_name": "whisper",
"language": "ko"
}'
# 자동 언어 감지
curl -X "POST" \
"https://openapi.vito.ai/v1/transcribe" \
-H "accept: application/json" \
-H "Authorization: Bearer ${YOUR_JWT_TOKEN}" \
-H "Content-Type: multipart/form-data" \
-F "file=@sample.wav" \
-F 'config={
"model_name": "whisper",
"language": "detect"
}'
# 다중 언어 감지 및 후보 언어 지정
curl -X "POST" \
"https://openapi.vito.ai/v1/transcribe" \
-H "accept: application/json" \
-H "Authorization: Bearer ${YOUR_JWT_TOKEN}" \
-H "Content-Type: multipart/form-data" \
-F "file=@sample.wav" \
-F 'config={
"model_name": "whisper",
"language": "multi",
"language_candidates": ["ko", "en"]
}'
import json
import requests
import os
# JWT 토큰을 환경변수에서 읽기
jwt_token = os.getenv('YOUR_JWT_TOKEN')
if not jwt_token:
raise ValueError("환경변수 'YOUR_JWT_TOKEN'이 설정되지 않았습니다.")
# 단일 언어(한국어) 설정
config = {
"model_name": "whisper",
"language": "ko"
}
# 자동 언어 감지
config = {
"model_name": "whisper",
"language": "detect"
}
# 다중 언어 감지 및 후보 언어 지정
config = {
"model_name": "whisper",
"language": "multi",
"language_candidates": ["ko", "en"]
}
resp = requests.post(
'https://openapi.vito.ai/v1/transcribe',
headers={'Authorization': f'Bearer {jwt_token}'},
files={'file': open('sample.wav', 'rb')},
data={'config': json.dumps(config)}
)
resp.raise_for_status()
print(resp.json())