目录
写在前面:
具体做法:
后端:
前端:
其他:
写在前面:
我使用的微信小程序开发工具是:“微信开发者工具”,当然你用其他的开发工具应该也差别不大;
人工智能模型用的是pytorch;
具体不介绍人工智能模型的保存,主要介绍一下flask的写法;
具体做法:
后端:
首先你要把人工智能模型先保存下来,因为你不可能每次运行这个模型的时候都重新训练一次对吧?关于模型保存,tensorflow和pytorch等都有不同的类似方法,这里就不详细介绍了,主要是介绍一下,保存模型后的,flask的写法。
写flask的时候,先确保你已经配置过环境了(如下,如果报错就是环境问题,在相应的地方pip一下环境就行):
同时在同个文件夹下,声明你的人工智能模型:
具体代码:
import os.path
from flask import Flask, request
from itsdangerous import json
from project_xhy_.Test9_efficientNet import predict
app = Flask(__name__)# 声明app
@app.route('/ppp', methods=['GET', 'POST'])
#’/ppp‘要与下面的定义方法的名字一样,指的就是路径,可以有多个
#methods需要自己去阅读一下相关文档,看一下你的需求是什么,我这里只用到了POST
def ppp():
if request.method == 'POST':#当请求方法为POST的时候,执行如下操作
graphl = request.form.get("attl")#获取前端所提供的图片
infol = predict.get_predict(graphl)#对图片进行模型预测
return json.dumps(infol, ensure_ascii=False)#将模型预测的结果返回给前端
if __name__ == '__main__':
app.run(host='0.0.0.0',port=9800)
#host=0.0.0.0,是指这个模型在本地网络运行,port=9800,就是端口号为9800
#如果是跑在服务器上的话,把host这个改一下就行
#最好自己看一下自己电脑哪个端口可以用,免得出错;
前端:
在地址处需要填写相应的地址,需要与flask运行时报出的地址一致(如下,划红线的就是需要填写的地址),另外,你运行前端代码的时候,确保你的flask代码一直在运行,不要关闭:
if_sick(){
var that = this
wx.request({
url:'http://地址/ppp',//输入请求的ip地址
method:'POST',//请求的方法
header: {'content-type': "application/x-www-form-urlencoded",},
data:{
attl:'C:/Users/asus/Desktop/img/l.jpg'//传递的内容
},
success: function(res){//当请求成功后的操作
console.log(res.data)
that.setData({
lr:res.data//将返回结果赋值给本地的lr
})
console.log("11",that.data.lr)//在控制台输出结果,检验是否正确
}
})
//跟上面一样,重复请求,只是传入的东西不一样,软件功能要求
wx.request({
url:'http://地址/ppp',
method:'POST',
header: {'content-type': "application/x-www-form-urlencoded",},
data:{
attl:'C:/Users/asus/Desktop/img/r.jpg'
},
success: function(res){
console.log(res.data)
that.setData({
rr:res.data
})
console.log("22",that.data.rr)
}
})
//点击按钮后将返回的数据传递到下一页面,因为ai识别是需要时间的,所以加点延迟,避免传递空值
wx.showToast({
title: '识别中',
icon: 'none',
duration: 5000, //弹出提示框时长
mask: true,
success(data) {
setTimeout(function () {
//要延时执行的代码
wx.navigateTo({
url: "../../pages/issueReport/issueReport?lefteye="+that.data.eye_left+"&righteye="+that.data.eye_right+"&name="+that.data.patientname+"&id="+that.data.patientid+"&rr="+that.data.rr+"&lr="+that.data.lr+"",
})
}, 5000) //延迟时间
}
})
其他:
1. 在微信开发者工具里进行本地调试的时候记得调整以下两个地方:
(1)在"详情"的本地设置里勾选:
(2)在"设置" 的"代理设置"里选择如下:文章来源:https://www.toymoban.com/news/detail-557093.html
文章来源地址https://www.toymoban.com/news/detail-557093.html
到了这里,关于微信小程序的人工智能模型部署(flask)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!