Seite 1 von 1

Flask neues Tensorflow Script aufrufen

Verfasst: Sonntag 2. August 2020, 21:16
von Hypec
Hallo,
ich habe in Flask eine kleine lokale Website zur Analyse eines Datensatzes (Beispielverteilung, etc.), von dieser Website aus würde ich nun gerne im Hintergrund ein Script aufrufen welches ein Tensorflow Netz mit dem Datensatz trainiert. Jetzt mein Problem wie kann ich ein Script aufrufen ohne auf jegliche Antwort zu warten?

Code: Alles auswählen

@APP.route("/call_train")
def call_train():
    nlp_trainer.main(show_train_time=True, gen_new=False)
    return "Training geht los"
Bisher ist das Problem das die return Zeile erst nach dem kompletten Training aufgerufen wird (bzw. timeout) und die Website bis dahin nicht mehr nutzbar ist. Mit Multithreading habe ich bereits ein paar Versuche gemacht welche allerdings alle gescheitert sind.

Ich hoffe das ist hier der Richtige Themenbereich im Forum.
Viele Grüße,
Hypec

Re: Flask neues Tensorflow Script aufrufen

Verfasst: Sonntag 2. August 2020, 22:03
von __deets__
Threading ist schon eine Antwort auf das Problem. Besser wäre ggf ein persistent queuing wie zb rabbitmq oder gleich celery zu benutzen, damit Trainingsaufträge auch entgegen genommen werden können, wenn der Service mal nicht läuft.