|
import streamlit as st |
|
import requests |
|
|
|
API_URL = "https://api-inference.huggingface.co/models/openai/whisper-large-v3-turbo" |
|
headers = {"Authorization": f"Bearer {st.secrets['HF_API_KEY']}"} |
|
|
|
def query(file): |
|
try: |
|
response = requests.post(API_URL, headers=headers, data=file.read()) |
|
response.raise_for_status() |
|
return response.json() |
|
except requests.exceptions.RequestException as e: |
|
st.error(f"Ошибка запроса к API: {e}") |
|
return None |
|
|
|
st.title("Транскрипция аудио") |
|
|
|
uploaded_file = st.file_uploader("Загрузите аудиофайл", type=["wav", "mp3", "flac"]) |
|
|
|
if uploaded_file is not None: |
|
with st.spinner("Транскрибируется..."): |
|
output = query(uploaded_file) |
|
if output: |
|
st.text_area("Транскрипт:", value=output["text"]) |