Код: Выделить всё
from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC
import torch
audio_proc = Wav2Vec2Processor.from_pretrained(
"vitouphy/wav2vec2-xls-r-300m-timit-phoneme"
)
audio_model = Wav2Vec2ForCTC.from_pretrained(
"vitouphy/wav2vec2-xls-r-300m-timit-phoneme"
)
def compute_phonemes(audio_content: bytes) -> list[dict[str, Any]]:
try:
audio_file = io.BytesIO(audio_content)
speech, sr = librosa.load(audio_file, sr=16000)
except Exception as e:
print("Error loading speech", e)
return []
model_inputs = audio_proc(
speech, sampling_rate=sr, return_tensors="pt", padding=True
)
with torch.no_grad():
logits = audio_model(**model_inputs).logits
Однако, когда тот же самый код, тот же самый API развернутый на Render.com — который обычно работает как чудо — я систематически получал следующие журналы ошибок:
Код: Выделить всё
[2025-01-09 18:25:30 +0000] [98] [CRITICAL] WORKER TIMEOUT (pid:141)
[2025-01-09 18:25:31 +0000] [98] [ERROR] Worker (pid:141) was sent code 134!
Код: Выделить всё
logits = audio_model(**model_inputs).logits
Не вижу любые различия в конфигурации между двумя средами. Та же версия Python (3.12) и та же версия PyTorch (2.2.0)
Любые идеи или указатели на решение (или альтернативу) будут приветствоваться.
Подробнее здесь: https://stackoverflow.com/questions/793 ... render-com