본문 바로가기
Programming/Websites & API

위스퍼(Whisper) API 사용법 및 정리

by 코딩하는 금융인 2023. 3. 19.

안녕하세요.

3월 1일부로 오픈AI가 기존 GPT-3.5를 최적화해 속도를 향상시킨 GPT-3.5-터보 모델을 기반으로 한 새로운 챗GPT API와 함께 지난해 9월 출시한 오픈 소스 Whisper 음성-텍스트 변환 모델의 호스팅 버전인 Whisper API를 출시했습니다.

 

오픈AI, 챗GPT API 공개!..."이제, '챗GPT'와 '위스퍼' 모델을 앱과 제품에 통합할 수 있습니다" - 인공

오픈AI가 현지시간 1일, 챗GPT(ChatGPT) API를 공개했다. 이제 API에서 챗GPT(ChatGPT) 및 위스퍼(Whisper) 모델을 사용할 수 있게 되어 개발자는 채팅뿐만 아니라 최첨단 언어 및 음성-텍스트 변환 기능에 액

www.aitimes.kr

이번 포스팅에는 간단하게 Whisper 모델에 대해 알려드리고 직접 파이썬 환경에서 Whisper API를 사용하여 오디오 파일을 텍스트로 전환해보겠습니다.

 

 STT(Speech to Text) 모델 Whisper API 사용하기

▣ Whisper AI란?

openai에서 공개한 인공지능 모델로 음성을 텍스트로 변환할 수 있는 기술

- Speech to Text(STT)를 인공지능으로 가능하게 하며, 기업이 아닌 개인에게 무료이고 github에 코드가 올라와 있어 누구나 사용할 수 있음.

 

: 사이트 바로가기

 

OpenAI API

An API for accessing new AI models developed by OpenAI

platform.openai.com

 

▣ Whisper 모델별 필요 사양

Size Parameters English-only model Multilingual model Required VRAM Relative speed
tiny 39 M tiny.en tiny ~1 GB ~32x
base 74 M base.en base ~1 GB ~16x
small 244 M small.en small ~2 GB ~6x
medium 769 M medium.en medium ~5 GB ~2x
large 1550 M N/A large ~10 GB 1x

 

: 실제 활용해보기

- 목표: Youtube 영상파일을 받아 오디오 파일로 변환하고 Whisper API를 활용하여 텍스트로 변환하기.

import openai

# OpenAI Key 설정 및 인증
OPENAI_API_KEY = "API Key 입력하기"
#"오픈AI에서 발급받은 API 키"

openai.api_key = OPENAI_API_KEY

# 유튜브 영상 다운로드
from pytube import YouTube
DOWNLOAD_FOLDER = "C:/Users/코딩하는 금융인/Desktop/whisper" # 경로 설정
url = "https://www.youtube.com/watch?v=" # 유튜브 영상 url
yout = YouTube(url)
stream = yout.streams.get_highest_resolution() # 유튜브 파일 다운로드
stream.download(DOWNLOAD_FOLDER)

# 유튜브 영상 mp3 파일 전환
from moviepy.editor import VideoFileClip
video_file_path = "C:/Users/코딩하는 금융인/Desktop/whisper/video.mp4"
video = VideoFileClip(video_file_path)
audio_file_path = "C:/Users/코딩하는 금융인/Desktop/whisper/audio.mp3"
video.audio.write_audiofile(audio_file_path)

# whisper 모델 사용하기
audio_file = open("C:/Users/코딩하는 금융인/Desktop/whisper/audio.mp3", "rb")
transcript = openai.Audio.transcribe("whisper-1", audio_file)
text = transcript['text']
print(text) # whisper text 추출

- 이렇게 어떤 영상에 대한 스크립트가 필요한데, 따로 추출할 툴이 없을 때 활용하면 좋음.

- 단, 영상에 대한 저작권 이슈가 분명히 있기에 주의해서 사용하기 바람.

 

References
반응형

댓글