이 가이드에서는 Streamlit st.audio_input 위젯을 사용하여 OpenAI Whisper 모델과 페어링된 기기 마이크에 음성을 녹음하여 음성을 영어 텍스트로 변환 및/또는 번역하는 방법을 설명합니다. 나중에 전사된 콘텐츠를 .txt 형식의 텍스트 파일로 다운로드할 수 있습니다.
Whisper는 영어 음성 인식 분야에서 인간 수준의 견고성과 정확성에 접근하는 훈련된 오픈 소스 신경망입니다.
OpenAI API는 두 가지 엔드포인트를 제공합니다.
공식 웹사이트에서 Streamlit을 사용하면 데이터 앱을 더 빠르게 구축하고 공유할 수 있습니다. 분석 결과를 공유하고, 복잡한 대화형 경험을 구축하고, 새로운 기계 학습 모델을 기반으로 반복하기 위한 웹 애플리케이션을 구축하는 데 도움이 되는 오픈 소스 Python 라이브러리입니다.
Streamlit은 텍스트, 숫자, 날짜와 같은 사용자 입력을 받는 것부터 가장 인기 있고 강력한 Python 그래프 라이브러리를 사용하여 대화형 그래프를 표시하는 것까지 편리한 기능이 내장되어 있기 때문에 Python 개발자에게 최고의 선택입니다.
Streamlit 앱을 실행하려면 먼저 다음 명령을 사용하여 Streamlit을 설치해야 합니다.
pip install streamlit
오디오를 텍스트로 변환하는 작업을 하고 있으므로 환경 변수를 안전하게 저장해야 합니다.
pip install openai python-dotenv
루트 프로젝트 디렉터리에 새 파일을 만들고 이름을 .env로 지정합니다.
OpenAI API 키를 붙여넣으세요.
.env
OPENAI_API_KEY="sk-..."
디렉토리에서 오디오를 전사 및 번역하고 결과 텍스트를 출력하기 위한 모든 Python 코드가 포함된 streamlit_app.py 파일을 만듭니다.
OpenAI 클라이언트의 인스턴스를 초기화하려면 다음 코드를 복사하여 붙여넣으세요.
streamlit_app.py
import os from dotenv import load_dotenv from openai import OpenAI load_dotenv() api_key = os.getenv('OPENAI_API_KEY') client = OpenAI()
코드 블록은 .env 파일에 있는 비밀 키를 연결하고 읽어 사용자로 인증되었는지 확인합니다.
PS: 서비스를 이용하려면 크레딧을 구매해야 하므로 OpenAI API 사용은 무료가 아닙니다.
streamlit_app.py를 다음과 같이 업데이트하겠습니다.
streamlit_app.py
... import streamlit as st st.logo( "logo.png", size="medium", link="https://platform.openai.com/docs", ) st.title("Transcription with Whisper") audio_value = st.audio_input("record a voice message to transcribe") if audio_value: transcript = client.audio.transcriptions.create( model="whisper-1", file = audio_value ) transcript_text = transcript.text st.write(transcript_text)
녹음 API는 st.audio_input 위젯을 사용하여 오디오를 변환하여 음성을 녹음합니다. 녹음이 존재하는 경우 Whisper 모델을 사용하여 오디오 전사에 원하는 파일 형식을 생성하고 문자열을 가져와 웹 앱에 직접 쓰는 st.write() 함수를 사용하여 텍스트를 출력합니다.
앱 왼쪽 상단의 정확한 로고를 사용하려면 이를 다운로드하여 프로젝트 디렉토리에 저장하세요.
이제 터미널에서 다음 명령을 사용하여 이 앱을 실행해 보겠습니다.
pip install streamlit
나중을 위해 기록된 메시지를 다운로드하는 기능은 필요할 때 기록을 보관하는 데 도움이 됩니다.
Streamlit은 다운로드 버튼을 표시할 수 있는 입력 위젯을 제공합니다. streamlit_app.py 파일로 돌아가서 다음을 사용하여 코드베이스를 업데이트하세요.
streamlit_app.py
pip install openai python-dotenv
위 코드 줄에서는 다음이 발생합니다.
st.success 상태 요소는 파일이 저장될 때 다음과 같이 성공 메시지를 표시합니다.
번역을 만드는 과정은 전사본을 만드는 과정과 유사합니다. 번역 엔드포인트는 오디오 파일의 입력에서 외국어를 영어로 작성된 텍스트로 번역합니다.
이 코드를 복사하여 붙여넣으세요.
streamlit_app.py
OPENAI_API_KEY="sk-..."
번역된 오디오 파일을 텍스트로 저장하기 위해 파일을 생성하려면 스크립트 다운로드 버튼과 동일하게 수행하면 됩니다.
전체 소스 코드는 이 저장소에 있으며 이 앱을 사용하여 음성을 텍스트로 변환하고 텍스트로 변환해 보세요.
행운을 빌어요!
OpenAI 문서에서 볼 수 있듯이 인터넷에서 미리 녹음된 오디오를 사용하는 대신 Streamlit은 음성을 사용하고 이를 OpenAI에서 제공하는 전사 및 번역 엔드포인트와 연결하여 이 뛰어난 프로젝트를 만들 수 있는 기회를 제공합니다.
기기의 마이크는 기술 발전으로 회의나 통화 중 의사소통에 사용하는 것 이상으로 많은 기능을 수행할 수 있습니다.
위 내용은 OpenAI Whisper 및 Streamlit을 사용하여 음성 녹음 및 번역 앱 구축의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!