源代码可以从https://github.com/aniketmaurya/tensorflow-web-app-starter-pack来获得
让我们从一个简单的helloworld示例开始
首先,我们导入FastAPI类并创建一个对象应用程序,该类有一些有用的参数,比如我们可以传递swaggerui的标题和描述。
from fastapi import FastAPI
app = FastAPI(title='Hello world')
我们定义一个函数并用@app.get,这意味着我们的API/index支持GET方法。这里定义的函数是异步的,FastAPI通过为普通的def函数创建线程池来自动处理异步和不使用异步方法,并且它为异步函数使用异步事件循环。
@app.get('/index')
async def hello_world():
return "hello world"
图像识别API
我们创建一个API来对图像进行分类,并将其命名为predict/image。我们使用Tensorflow来创建图像分类模型。
Tensorflow图像分类教程:https://aniketmaurya.ml/blog/tensorflow/deep%20learning/2019/05/12/image-classification-with-tf2.html
我们创建了一个函数load_model,它将返回一个带有预训练权重的MobileNet CNN模型,即它已经被训练为对1000个不同类别的图像进行分类。