簡體   English   中英

如何在 flask 中的 2 個 API 定義之間共享變量?

[英]How to share variables between 2 API definitions in flask?

我的代碼是這樣的。 我正在使用 Flask。

import *

def model_loading():
    ##function###

@app.route('training', methods=['GET', 'POST', 'OPTIONS'])
def training():
    ###function###
    model_loading()

@app.route('prediction', methods=['GET', 'POST', 'OPTIONS'])
def prediction():
    ###function###
    models_out.predict()

if __name__ == '__main__':
    models_out = model_loading()

在上面的代碼中, models_out字典將在執行開始時加載我所有的模型。 當請求訓練新的 model 時,再次訓練后,我將調用model_loading function 以使用新的 model 更新models_out字典。 但是在調用預測請求時,我更新的新 model 沒有反映在models_out字典中。 這個怎么處理?。

您可以將其定義為全局變量。

import *

models_out = None

def model_loading():
    ##function###

@app.route('training', methods=['GET', 'POST', 'OPTIONS'])
def training():
    global models_out
    ###function###
    models_out = model_loading()

@app.route('prediction', methods=['GET', 'POST', 'OPTIONS'])
def prediction():
    global models_out
    ###function###
    models_out.predict()

if __name__ == '__main__':
    models_out = model_loading()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM