[Day 27] Final Project (3/5) — 让 App 在本机端运行

Prerequisites

为了让接下来的步骤可以顺利进行,我们首先要完成以下的前置作业,但因为每个人的作业系统不同 (当然最好是使用 Linux) 所以这里不额外做说明,请自行进入参考连结并跟着其中的步骤安装即可:

⚠️ 再次提醒:使用 Google Cloud 的服务是要收费的,所以记得结束後把这几天的工作删掉!

让 App 在本机端运行

记得昨天我们已经把具体的工作流程列出来了:
True workflow
上图可以简化成以下三个步骤:

  1. 让 App 在本机端运行
  2. 部署模型到 AI Platform
  3. 部署 app 到 App Engine

所以今天我们首先要让 App 在本机端可以运行。
而正如昨天所说的,这几天的文章会比较偏向料理节目的风格,也就是大部分程序都事先准备好了,所以第一步骤就是到 Github 把 repo 克隆下来开始。
那就让我们开始吧:

  1. 克隆 Repo
    git clone https://github.com/eatPizza311/iThome-2021ironman.git
    
  2. 进入 build_dataflywheel/ironbird/ 资料夹
    cd iThome-2021ironman/build_dataflywheel/ironbird/
    
  3. 建立虚拟环境与处理函式库相依 (Streamlit, TensorFlow, etc)
    如果在前置作业时没有安装 Anaconda 的话,请使用以下指令建立虚拟环境与安装函式库:
    pip install virtualenv
    virtualenv <ENV-NAME>
    source <ENV-NAME>/bin/activate
    pip install -r requirement.txt
    
    如果有 Anaconda 则可以使用以下指令:
    conda env create -f requirement.yml
    conda activate ironbird
    
  4. 启动 Streamlit 与执行 app.py
    streamlit run app.py
    
    执行上面的程序码後应该可以看到以下画面:
    my app
    这个就是我们要做的 App — Ironbird!!
  5. 可以试试看上传一张图片 (例如任何一张有鸟的照片),这里以下图为例:
    bird
    *翻摄自推特@aerial2009
    6. 图片上传成功应该会看到写着 开始预测! 的按钮出现,按按看吧!
    7. 按下去应该会发现 App 爆炸了,因为它试图跟 Google Cloud Platform (GCP) 索要模型,但可能发生以下其中一种错误:
    • 找不到模型 (错误的 API 呼叫或模型不存在)
    • 因为认证问题而无法使用现有模型,见下图:
      App crash

其实不管哪种错误都是一件好事!
因为至少我们的 App 试图与 GCP 取得联系 (使用 ironbird/app.pyironbird/utils.py 内的函式)。
总之,App 已经确定可以在本机端运作了,明天就让我们把模型部署到 AI Platform 吧。
/images/emoticon/emoticon48.gif


<<:  【DAY 28】Microsoft 365 X Dynamic 365该怎麽选才好呢? (中)

>>:  视觉化KBARS(5)-1分k展示

Day17 购物车 -- 进阶应用

接着在讲一个也是很常用到的功能,优惠!!! 看似人人喜爱的两个字,实际上范围跟方法多到爆炸....,...

Day03 - 个体、对象以及状态

小回顾 Day01 - 缘起:怎麽了?为什麽?如何掌握过於自由的程序码? 以订单、RPG 角色的移动...

Day20 Let's ODOO: Scheduled Actions

有时我们背景需要一些定时任务,Odoo同样也可以设定,依照惯例我们来写一个范例,每半年学生的成绩就要...

Day30 MANO开源专案使用之kube5gnfvo - 使用篇

那麽今天是最後一天了,我们就来做一个布署测试吧!昨天以介绍了关於Template的内容以及主要会使用...

关於研发这件事

(上一刻有千言万语,但忽然什麽都想不起来,莫非有某种名为神或命运的宇宙大意志在阻止我写下今天这篇文吗...