簡體   English   中英

Python 如何保持相同的運行 function 與不同的 arguments 在 ZDB974238714038DE63ZA7ACED1 中多次並行

[英]Python How to keep running same function multiple times parallel with different arguments in API

我正在使用燒瓶-restx api

有一個名為“predict_y”的 function。
我必須將特定的 NLP 深度學習模塊加載到 var X 中,並使用它來預測 var Y 中文本中的標簽。

我會收到一個帶有 x 和 y 值的 POST 請求,其中 x 是我需要加載的深度學習 model 的名稱(耗時),y 是我使用 model 給出的文本,用於預測 ZD304BA20E96D8E341 和 88ABA880EZC1 label。

我希望整個過程很快。 但是在收到請求后將 model 加載到 var x 中非常耗時。

Post request body = {"x":"model1", "y":"Text for label prediction with model1"}

def predict_y(x,y):
  x = model.load(path/to/models/x)
  answer = x.predict(y)
  return answer 

有沒有一種方法可以讓我在 x 中使用不同的加載模型多次運行相同的 function 'predict_y'。

這樣,當我收到假設 x= model1 和 y= 'Predict this text's label' 的 POST 請求時,我可以將其重定向到 func 'predict_y' ,其中 var x 已經加載了 model1。

一旦收到的最后一個請求超時,這些 function 就可以停止。

我怎么能這樣做?

您將希望在predict function 之外加載模型,當 flask 應用程序啟動時,例如在dict中,然后您可以在predict中引用正確的 Z20F35E630DAF44DBFA4C3F68F5399D。

Post request body = {"x":"model1", "y":"Text for label prediction with model1"}

models = {x: model.load(f"path/to/models/{x}") for x in ["model1", "model2", ...]}

def predict_y(x,y):
  x = models[x]
  answer = x.predict(y)
  return answer 

暫無
暫無

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

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