malek-messaoudii
Add tts/stt services
c7fc3b6
raw
history blame
757 Bytes
# services/stt_service.py
import requests
from config import HUGGINGFACE_API_KEY, HUGGINGFACE_STT_MODEL_ID
def transcribe_audio(file_bytes: bytes) -> str:
"""
Convert audio bytes into English text using Whisper large-v3
through Hugging Face Inference API.
"""
headers = {
"Authorization": f"Bearer {HUGGINGFACE_API_KEY}",
"Content-Type": "application/octet-stream",
}
url = f"https://api-inference.huggingface.co/models/{HUGGINGFACE_STT_MODEL_ID}"
response = requests.post(url, headers=headers, data=file_bytes)
try:
result = response.json()
return result.get("text", "Error: No transcription returned.")
except Exception:
return "Error: Invalid response from STT model."