## 國內Edge AI/TinyML整合開發環境 社群版本發展提案
> 提案之原始檔案:[社群版本發展提案.docx](
https://mega.nz/file/zcUwAYjT#ieFj-YTdsJG-Ak8261zI3W5bFN-OmY5jYJ819R2ju2c)
1. 起始於社群發展,當社群版本發展到一定程度後再與國內廠商進行合作。社群可以決定先支援那些微控制器或開發板。
2. 方向上還是以『兼容』Edge Impulse為目標,也就是以TensorFlow Lite與TensorFlow Lite for Microcontrollers為深度學習框架。
3. 會以本地(Local)為主,仿「Edge Impulse Studio」以Python程式語言開發本地端的整合開發環境:

4. 開發本地端的整合開發環境有以下幾個理由:
* 國內PC市場發達,要取得一定算力的桌機或筆電都不會太困難。
* 雲端(Cloud)運算還是要費用的,若在社群發展這筆錢除非有人贊助。其實看Edge Impulse的發展也知道,讓社群免費使用後在雲端運算費用就會燒不少錢;以致於之後不得不做控管:

* 在雲端上看起來很理想,但最後還是要與本地端做連接;這時Edge Impulse會用到命令列介面([CLI](https://docs.edgeimpulse.com/docs/tools/edge-impulse-cli/cli-installation)),這有幾個問題:
1. 親和力低,且與雲端圖形界面搭配起來很突兀。
2. 這個命令列介面是用[Node.js](https://nodejs.org/en)(JavaScript程式語言)開發的,因此還需要安裝一個相對應的環境。
* 但最後一個是商業原因,如果單純銷售軟體在國內應該很難營利;可參考[立達軟體](https://tw.leaderg.com/)商業模式以軟硬體搭配進行銷售。
5. 整合開發環境構想示意圖

* 初期就以本地端發展(使用Python、C與C++程式語言)設計開發環境,後續若有需要使用雲端運算時再做擴展。
* 開發主機可以是電競筆電或電競主機(包含Nvidia GPU),或是Jetson Nano套件(含有CUDA單元,但較適合TinyML應用之模型訓練)。其上運作的是Windows或Linux作業系統。