코드 8줄로 구현 한 STT(음성 -> 텍스트 변환)함수

  1. 원천 코드

허깅페이스의 whisper모델을 이용하여 stt 함수를 만들어 봤습니다.

무작정 아래코드를 복붙 하세요(참고로 저는 pycham의 파이선 터미널에서 해 봤어요.)

import whisper
model = whisper.load_model("medium")


def recognize_voice(file_path, language):
    '''
    :param file_path: 사운드 파일의 절대 경로
    :param language: 파일의 언어, "en" : 영어, "ko" : 한국어, "jp" : 일본어 ...
    :return: 실패시 False, 아니면 변환 된 텍스트
    '''
    try: # 8줄 내에 깔끔 한 예외 처리까지
        result = model.transcribe(file_path, language=language)
        return result['text']
    except Exception as e:
        return False

[참고자료]

ChatGPT로 AI 캐릭터 만드는 법

너무 쉽습니다. 근데 바로 실행 하면 항상 그렇듯이 에러가 납니다.

그럼 부랴부랴 콘솔에 요 지령으로 whisper 라이브러리 설치 합니다.

pip install whisper


  1. 작동 테스트

recognize_voice('/Users/DevK/Downloads/[ 10 ] 날씨와 계절 Weather Season/[Track 101] 생각해 봐요.mp3', 'ko')

위의 코드와 같이 파일경로와 언어를 설정해서 함수 호출하면 결과가 텍스트로 출력 됩니다.

테스트 해 보실 수 있게 음성파일을 첨부 했습니다.

[Track 101] 생각해 봐요.mp3

음성파일 출처 :

고려대 한국어 1권 - Google Drive

실행 결과


#11기HuggingFace

5
4개의 답글

👉 이 게시글도 읽어보세요