模型部署web发布
20210323
再寫個shell 腳本 命令在后臺執行
linux下面腳本文件 .sh 文件
用命令 sh xxx.sh 運行
模型部署 錯誤信息返回 傻瓜式返回減少對方的疑問
不要直接返回系統報錯信息
info_error={'status':'failed', 'error_message':'the format data is not correct or can not find this company '}write_to_explorer(self,info_error)
20210318
路由寫個反斜杠 就代表紅框 部分 相當于再加的反斜杠
#coding:utf-8
import requestsres = requests.post(url="http://192.168.135.105:8888/",data={'normal': '一重國際發展有限公司', 'candidates':"['光大嘉寶股份有限公司', '銀川育星達科技股份有限公司', '江蘇省水利工程科技咨詢股份有限公司']"})
print(res.text)代碼模擬post請求
post請求 字典中的列表需要以字符串的形式傳入
def write_to_explorer(myRequest,error_info):myRequest.send_response(200)myRequest.send_header("Content-type", "application/json")myRequest.end_headers()myRequest.wfile.write(json.dumps(error_info, ensure_ascii=False).encode("utf-8"))
這里的write就是返回結果了 不需要再寫return語句
20210317
另一個工程 lambda_rank
Original_api.py
主運行文件
Original_api_test.py
用這個文件測試在本地get和post方法是否可用
Original_api_post.py
這個文件用于發布到瀏覽器 外部可訪問http://127.0.0.1:2335/?DATA={"normal": "一重國際發展有限公司","candidates": ["新疆東方環宇燃氣股份有限公司", "大千生態環境集團股份有限公司"]}
{"normal": "一重國際發展有限公司", "status": "ok", "scores": [{"name": "新疆東方環宇燃氣股份有限公司", "value": -0.12729769338991556}, {"name": "大千生態環境集團股份有限公司", "value": -0.16732688057814388}]}
數據接口預測時間為:0.9531621932983398瀏覽器輸入數據格式 斜杠后面加問號
如果運行正常屏幕是保持不動 不滾動
@server.route('/',methods=['post','get'])
def get_company_data():data=request.args.get("DATA")result=post_from_outside(data)return result
DATA是key
‘/’:表示裸的 http://127.0.0.1:2335/ 也就是根目錄
Original_api 和 original_api_test 的 ip和端口保持一致 都是本地
Original_api_post ip和端口 是對外的 可以不同 本機對外顯示的ip
202
10107
融象
模型發布模板路徑
先運行 jiekou.py
然后運行 product.py
最后再打開 192.168.10.198:8888/product?company=浙江海康威科技有限公司
Product.py 獲取到客戶從瀏覽器傳來的數據
接口.py 返回結果
Jiekou 的ip和 端口 以及test的ip和端口是對應相同的 test 是的ip和端口是通過 下面的命令傳入的
Product.py 里面是 0.0.0.0 和 8888
不同進程的post和get都保存在同一個requests 模塊中?
通過這里沒有指定參數的位置都能直接傳到test.py文件中
通過在控制臺運行product.py傳入參數到 test.py 接收控制臺傳入的參數
總結
- 上一篇: tensorflow 1.x Saver
- 下一篇: 利用pandas读写HDF5文件