Ошибка при вызове recasepunc.py с подпроцессом в приложении Flask: ошибка в recasepunc: нетPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка при вызове recasepunc.py с подпроцессом в приложении Flask: ошибка в recasepunc: нет

Сообщение Anonymous »

Я работаю над приложением Flask, которое использует библиотеку распознавания речи Vosk для расшифровки звука в текст, а затем отправляет этот текст в скрипт recasepunc.py для восстановления пунктуации. Проблема, с которой я столкнулся, заключается в следующем:

Код: Выделить всё

Error in recasepunc: None
Ошибка возникает, когда я пытаюсь передать распознанный текст из Vosk в скрипт recasepunc.py через подпроцесс. Команда, которую я пытаюсь запустить:

Код: Выделить всё

processed_text = subprocess.check_output(
'python recasepunc/recasepunc.py predict recasepunc/checkpoint', shell=True, text=True, input=recognized_text)
Где распознанный_текст — это результат распознавания Vosk, например «привет, как дела».
Вот полный контекст кода приложения:

Код: Выделить всё

from vosk import Model, KaldiRecognizer, SetLogLevel
from pydub import AudioSegment
from flask import Flask, request, jsonify
import subprocess
import json

app = Flask(__name__)

@app.route('/', methods=['POST'])
def process_audio():
file = request.files.get('111')

if file:
try:
song = AudioSegment.from_file(file)
SetLogLevel(0)
FRAME_RATE = 16000
CHANNELS = 1
model = Model("model")
rec = KaldiRecognizer(model, FRAME_RATE)
rec.SetWords(True)

wavv = song.set_channels(CHANNELS)
wavv = song.set_frame_rate(FRAME_RATE)
rec.AcceptWaveform(wavv.raw_data)
result = rec.Result()

recognized_text = json.loads(result)["text"]

try:
processed_text = subprocess.check_output(
'python recasepunc/recasepunc.py predict recasepunc/checkpoint', shell=True, text=True, input=recognized_text)
except subprocess.CalledProcessError as e:
processed_text = f"Error in recasepunc: {e.stderr}"

return jsonify({
"recognized_text": recognized_text,
"processed_text": processed_text
})

except Exception as e:
return jsonify({"error": str(e)}), 500

else:
return jsonify({"error": "No audio file provided"}), 400

if __name__ == "__main__":
app.debug = True
app.run(host="0.0.0.0", port=5000)
Что я пробовал:
  • Я подтвердил, что команда работает непосредственно в терминале:

    Код: Выделить всё

    echo "hello how are you" | python recasepunc/recasepunc.py predict recasepunc/checkpoint
    
    Он возвращает ожидаемый результат: «Привет, как дела?».
  • Я попробовал использовать subprocess.check_output(), как показано, но на выходе отображается сообщение «Ошибка в recasepunc: нет», что не дает никакой полезной информации для устранения неполадок.
Мой Среда:
  • Python 3.10
  • vosk 0.3.45
  • torch 2.2 .2
  • трансформеры 4.39.3
Может ли кто-нибудь помочь мне понять, почему возникает эта ошибка и как ее устранить? это?

Подробнее здесь: https://stackoverflow.com/questions/792 ... n-recasepu
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Ошибка при вызове recasepunc.py с подпроцессом в приложении Flask: ошибка в recasepunc: нет
    Anonymous » » в форуме Python
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Python — приложение Tkinter, проблемы при вызове сценариев с подпроцессом
    Anonymous » » в форуме Python
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Проблема с подпроцессом Flask с использованием Electron-builder
    Anonymous » » в форуме Javascript
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Внутренняя ошибка сервера 500 при использовании flask - flask и flask - шаблона рендеринга
    Anonymous » » в форуме Python
    0 Ответы
    68 Просмотры
    Последнее сообщение Anonymous
  • Внутренняя ошибка сервера 500 при использовании flask - flask и flask - шаблона рендеринга
    Anonymous » » в форуме Python
    0 Ответы
    55 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»