OmniXRI-Jack
    • Create new note
    • Create a note from template
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Write
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
      • Invitee
    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Save as template
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Sharing URL Create Help
Create Create new note Create a note from template
Menu
Options
Versions and GitHub Sync Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
Invitee
Publish Note

Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

Your note will be visible on your profile and discoverable by anyone.
Your note is now live.
This note is visible on your profile and discoverable online.
Everyone on the web can find and read all notes of this public team.
See published notes
Unpublish note
Please check the box to agree to the Community Guidelines.
View profile
Engagement control
Commenting
Permission
Disabled Forbidden Owners Signed-in users Everyone
Enable
Permission
  • Forbidden
  • Owners
  • Signed-in users
  • Everyone
Suggest edit
Permission
Disabled Forbidden Owners Signed-in users Everyone
Enable
Permission
  • Forbidden
  • Owners
  • Signed-in users
Emoji Reply
Enable
Import from Dropbox Google Drive Gist Clipboard
   owned this note    owned this note      
Published Linked with GitHub
Subscribed
  • Any changes
    Be notified of any changes
  • Mention me
    Be notified of mention me
  • Unsubscribe
Subscribe
# 【vMaker Edge AI專欄 #12】 AI Maker世代即將展開-大家跟上了嗎? 作者:Jack OmniXRI, 2023/12/15 ![vMaker_EdgeAI_12_Fig00](https://hackmd.io/_uploads/rJ5EG9t8a.jpg) 在現今專業分工的時代,很多事情不用透過自己動手作就能享受時代進步所帶來的便利。大家不用自己買布作衣服,不用買食材自己下廚,家裡燈不亮了,房子想重新裝潢一下,不用自己買電線、木材,都有專業人士可以幫忙。但是自己作手作,完成一項可以改變自己生活的事,從來就不是特定專業人士才享有的能力,只是隨著時代的演進,那些父母時代才有的動手作能力及樂趣已逐漸被人們淡忘。 早在1956年瑞典知名家俱商IKEA就推出組合式家俱,讓一般人也能自己 **DIY (Do It Yourself)** 看圖組裝家俱。2005年Make雜誌推出,2006年Maker Faire開始推動 **Maker(自造者或稱創客)** 運動,讓傳統手工製作的精神加入了電子、機械、資通訊(俗稱寫程式)等現代科技,同時許多廠商紛紛推出相應套件、工具及軟體、平台,也有許多樂於分享的人將相關技術無私開源,讓更多人能享受自己動手作的樂趣。2014年美國總統歐巴馬更在白宮主持了Maker活動,並規畫教育創新十年計畫,編列四億美金,培訓十萬名教師推動 **STEM(科學Science、科技Technology、工程Engineering及數學 Mathematics)** 來讓學生們更具動手作的能力。於是這股風潮引爆更多領域,如平價的3D印表機(3DP)、無人機(Drone)、自走車等,從此開啟跨域Maker新世代。 在這股風潮下台灣Maker也不落人後,尤其在擁有強大的電子硬體及資通訊軟體的能力下,2013年由中研院及LASS社群[1]共同推動下,一個螞蟻雄兵的計畫就此誕生,那就是「PM2.5空氣盒子」。大家利用很簡單的PM2.5空氣品質感測器加上平價的硬體、通訊模組、開源的軟體及簡單的外殼,最後再一起串接到共同網站就能監看全台灣的空氣品質,而其整體架構剛好就是「**物聯網(Internet of Things, IoT)**」最基本的核心技術。由於這項技入門容易,價格不高,具教育意義,更能讓老師、家長及學生一起動手作,不限是否具有電子或資通訊背景都能快速速上手,於是全民Maker的時代正式開啟,陸續引爆各種創意及手作風潮。 ![vMaker_EdgeAI_12_Fig01](https://hackmd.io/_uploads/HkGXEctIT.jpg) Fig. 1 Maker Faire Taipei [[影像來源]](https://taipei.makerfaire.com/) 十年過去了,中間發生了很多事,包含知名Maker Faire差點倒掉又易主,很多Maker Space收起來,不禁讓很多人覺得Maker不再是熱點。但從去(2022)年及今年的Maker Faire Taipei活動來看,即便收費仍然有非常多人參加,會場中各種創意及交流,讓人覺得依舊活力十足。不過仔細觀察了一下,會發現熟面孔似乎越來越少,作品的內容和往年相比似乎也沒有太多變化,是大家創意疲乏了嗎?還是Maker精神已融入生活不再需要多說呢?難道已經沒有新的火花可以重新點燃大家的熱情嗎? 去年11月底OpenAI發表**大型語言模型(Large Language Model,LLM)** ChatGPT後,短短一年就讓**生成式人工智慧(AIGC)** 發生翻天覆地的變化,不僅是文字創作、自然對話、影音生成,甚至直接輸入影音而使用文字查詢也變成不再是困難的事。一般學生及大眾不需有太多操作知識,就能像面對真人一樣的對談、交辦工作,彷彿科幻電影情節降臨。這一年來有賴像NVIDIA、INTEL、Microsoft、Google等軟硬體公司的大力推動及各學研單位的努力,僅僅一年就讓遠在天邊(雲端)的技術,可以迅速落地(邊緣),讓高階手機(Mobile)、單板微電腦(SBC)甚至高階單晶片(MCU)也有機會玩AIGC相關應用,這也似乎意味著新一波的「**AI Maker世代**」即將到來,各種新的創意也將遍地開花。 接下來就幫大家整理了一下有哪些硬體、軟體相關技術資源可用,還有哪些創意、應用可能成為AI Maker的新寵。 ## 1. 微型AI硬體及適用範圍 ![vMaker_EdgeAI_12_Fig02](https://hackmd.io/_uploads/ByDYd9YLp.jpg) Fig. 2 微型AI常見硬體組合。(OmniXRI整理製作,2023/12/15) 目前依運行模型大小,需選用不同算力及記憶體大小的硬體,才能滿足不同的邊緣型AI應用,大致可分為筆電(AI PC)、手機(SoC)、單板微電腦(MPU)及單晶片(MCU),而為了順利運行通常這些硬體都會搭配神經網路加速單元(Neural Network Processing Unit, NPU, 俗稱AI晶片),否則很難滿足即時反應需求。 一般來說在邊緣端裝置要直接跑大型語言模型(LLM)還要馬上有反應且不能太胡言亂語,那就要使用較大模型(1300億或700億個參數, 130B或70B),透過網路連線到雲端,使用業者提供的API服務(部份免費),而邊緣裝置僅負責處理人機界面,輸入文字、語音、影像等資料,待收到回覆後再顯示文字、影像,播放聲音或影片,很適合用於各種文字、影像、音樂生成等應用。這樣的作法,對硬體要求不高,也不需要有NPU存在,甚至高階MCU也都有機會能完成。常見的API服務如下所示。 * OpenAI: GPT-3.5/4, DallE2/E3 * Google: Vertex AI * Microsoft Azure: Cognitive Service(DialoGPT) * Amzon Web Services(AWS): Lex 如果想要離線就能運行LLM,那模型就不能太大,通常是130億或70億或13億個參數(13B或7B或1.3B),以一個參數1 Byte(8 bit)來看,就要有13GB或7GB的記憶體及儲存空間才夠用,所以有時還要透過模型優化工具將其量化、剪枝、壓縮來縮小模型,才能放的進裝置中運行。但缺點就是模型越小,生成能力及正確性也會隨之下降,較適合特定場域中有限回答,如智慧家庭、智慧交通、智慧健康、電商客服等。以下列舉一些常見硬體。當然這些硬體算力較好,也很適合用於影像分類、物件偵測、影像分割等應用。 * **AI PC**: Intel Meteor Lake(14代CPU+iGPU+NPU), AMD Ryzen 8040(CPU+GPU+NPU), Apple M2(CPU+GPU+NPU), Qualcomm Snapdragon X Elite(CPU+GPU+DSP+NPU) … * **手機平板(SoC)**: Qualcomm Snapdragon 8 Gen 3, 聯發科天磯9300 … * **單板微電腦(MPU)**: Nvidia Jetson Orin(CPU+GPU), Raspberry Pi 5(CPU), Rockchip RK3588(CPU+NPU), ALIF Ensemble(MPU+MCU+NPU), NXP i.MX93 (MPU+MCU+NPU), TI AM6xA(MPU+MCU+DSP+NPU) … 常見7B LLM模型: * [Meta Llama2 7B](https://ai.meta.com/llama/) * [Taiwan-LLM-7B](https://huggingface.co/yentinglin/Taiwan-LLM-7B-v2.1-chat) * [Mistral 7B](https://mistral.ai/news/announcing-mistral-7b/) * [Intel Neural-Chat-7b](https://community.intel.com/t5/Blogs/Tech-Innovation/Artificial-Intelligence-AI/Intel-neural-chat-7b-Model-Achieves-Top-Ranking-on-LLM/post/1549386?profile.language=zh-TW) * [Zepyr-7B-beta](https://huggingface.co/HuggingFaceH4/zephyr-7b-beta) * [MosaicML MPT-7B](https://github.com/mosaicml/llm-foundry/) * [TAIDE 7B](https://taide.tw/) (國科會,台灣可信任AI對話引擎,模型尚未正式開放,現僅提供特定單位內測中) 一般Maker常用的Arduino及PRO系列,前者多半為低階單晶片,算力及記憶體極少,較不適用微型AI,而PRO系列雖然沒有NPU加持,但Arm Cortex-M4/M7/M33的內核時脈頻率高,運算速度快,記憶體(Flash & SRAM)較多,已能完成簡單的語音,甚至低解析度的AI影像應用。而最近一年高階MCU+NPU已陸續亮相,雖然算力通常不到0.5TOPS,但對於較複雜的AI視覺模型及應用(如物件偵測、追蹤)還是沒問題的,以下就簡單列出一些已公開的產品。 * [ST STM32N6(MCU+NPU)](https://blog.st.com/stm32n6/) * [NXP MCX-N(MCU+NPU)](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/mcx-arm-cortex-m/mcx-n-series:MCX-N-SERIES) * [Himax WE2(MCU+NPU)](https://www.himax.com.tw/zh/products/intelligent-sensing/always-on-smart-sensing/wiseeye2-ai-processor/) * [Espressif ESP32-S3(CPU+DSP)](https://www.espressif.com/zh-hans/products/socs/esp32-s3) * [Realtek RTL8735B(MCU+NPU)](https://www.amebaiot.com/zh/amebapro2-amb82-mini-arduino-getting-started/) * [Infineon PSoC Edge(MCU+NPU)](https://www.infineon.com/cms/en/product/microcontroller/32-bit-psoc-arm-cortex-microcontroller/32-bit-psoc-edge-arm/) * [SiFive X390(64bit RISC-V+VLEN)](https://www.sifive.com/cores/intelligence-x390) ## 2. 小型AI開發軟體及平台 有了這些硬體還不夠,因為大家對AI可能還不太懂,一下子難以跨越算法的鴻溝,因此就像開車一樣,大家只要到駕訓班學一些基本操作就能上路,不用懂汽車是如何被設計出來的,所以一個容易上手的AI開發軟體工具及平台就變得很重要。一般AI應用開發分為訓練(Training)及推論(Inference),在邊緣端只需推論就夠了。而很多常用的AI應用多半都已開源,不需重新訓練就能使用,只要適當將模型優化處理就能塞進邊緣裝置中。常見開發工具及平台簡單介紹如下。 * AI PC / 單板微電腦端工具 * Google: [TensorFlow Lite](https://www.tensorflow.org/lite?hl=zh-tw), [Teachable Machine](https://teachablemachine.withgoogle.com/), [MediaPipe](https://developers.google.com/mediapipe) * Nvidia: [TensorRT](https://developer.nvidia.com/tensorrt) * Intel: [OpenVINO](https://docs.openvino.ai/) * Microsoft: [Lobe](https://www.lobe.ai/) * 單晶片專用型AI函式庫及編譯器 * ST: [CubeAI (local, cloud)](https://stm32ai.st.com/stm32-cube-ai/), [NanoEdge](https://www.st.com/en/development-tools/nanoedgeaistudio.html) * NXP: [eIQ](https://www.nxp.com/design/design-center/software/eiq-ml-development-environment:EIQ) * Renesas: [Reality AI](https://www.renesas.com/us/en/products/microcontrollers-microprocessors/reality-ai) * Infineon: [Imagimob](https://www.imagimob.com/) * Nordic: [Atlazo](https://www.nordicsemi.com/Nordic-news/2023/08/nordic-to-acquire-ai-ml-technology-in-the-us) * TDK: [Qeexo](https://qeexo.tdk.com/) * Google: [TensorFlow Lite for Microcontroller](https://www.tensorflow.org/lite/microcontrollers?hl=zh-tw) * Arm: [CMSIS-NN](https://github.com/ARM-software/CMSIS-NN), [Android NN SDK](https://www.arm.com/zh-TW/products/silicon-ip-cpu/ethos/arm-nn), [Compute Library](https://www.arm.com/zh-TW/technologies/compute-library), [Vela Compiler](https://developer.arm.com/documentation/101888/0500/NPU-software-overview/NPU-software-tooling/The-Vela-compiler) * Nuvoton: [Skymizer ONNC Compiler](https://skymizer.com/products/onnc) * * 通用型單晶片TinyML開發平台 * [Edge Impulse Studio](https://edgeimpulse.com/) * [Quick Logic SensiML](https://sensiml.com/) * [Neuton](https://neuton.ai/) * [AI Tech. Cainvas](https://www.ai-tech.systems/cainvas/) * [OctoML](https://octoml.ai/) ## 3. AI小幫手及創意發想 ![vMaker_EdgeAI_12_Fig03](https://hackmd.io/_uploads/HJ9odqtLT.jpg) Fig.3 微型AI常見應用例。(OmniXRI整理製作,2023/12/15) 在Maker眼中,創意、靈感從不缺乏,只是在有沒有動手去作,而不是只存在嘴上和心中。當你又學習到一項新工具或新技術時,如何落實到生活中才是Maker精神。回到100年前,1920年代福特汽車開始大量生產上市時,大多數人想到的是好快的車速,人類真的有辦法操控嗎?馬車真的會被取代嗎?它會不會很危險,很容易撞傷人?這些問題是否和AI世代降臨很像呢?如今大家享受著自動化生產的成果及便捷的交通工具,都是前人努力的結果。只要大家善用工具,相信AI也能成為日常不可或缺的一部份。 為了讓大家更有想像空間,這裡簡單整理了聲音、影像、環境感測、視覺及生成五大領域,不同硬體平台,數十種微型AI應用的實作案例,希望大家能舉一反三,創作出更多有趣的案例並分享給大家,那麼一起成為「AI Maker」就不再是難事了。 * [【Intel DevCup 2021作品集】- 實作組](https://makerpro.cc/intel-devcup/popular-vote-for-practice-group/)、[概念組](https://makerpro.cc/intel-devcup/popular-vote-for-practice-group/) * [【Intel OpenVINO Notebooks】(含AIGC)](https://github.com/openvinotoolkit/openvino_notebooks) * [【Nvidia Jetson Community Projects】](https://developer.nvidia.com/embedded/community/jetson-projects) * [【TinyML應用大全(30組案例分享)】](https://hackmd.io/@OmniXRI-Jack/tinyML_30_porjects) * [【Hackster.io LLM Projects】](https://www.hackster.io/search?q=LLM&i=projects&sort_by=most_recent) 從以上軟硬體技術及實作案例的介紹,大致可了解到完全離網,在裝置上獨立運行微型AI推論是沒有問題,以下就簡單列出幾項考慮的重點,方便大家未來設計時的參考。 * 感測器類型(聲音、振動、影像、環境…) * 模型大小及複雜度(模型優化工具、Flash儲存參數量、SRAM計算過程變數量) * 推論效能(精度、速度…) * 資料傳輸方式(有線I2C/SPI/MIPI…,無線BLE/WiFi/5G…) * 耗能(電池、充放電管理、睡眠…) * 晶片及開發板價格 ## 小結 2023年即將結束,各種「**AI Maker世代**」所需的軟硬體及開發工具也陸續到位,以上簡介只是拋磚引玉,相信這將可以再次點燃大家心中的Maker精神,重新把創意具現化,讓AI變成大家生活的小幫手,而不再是遙不可及的技術。 ## 參考文獻 [1] LASS環境感測器網路系統 https://lass-net.org/ [2] 許哲豪,"TinyML應用大全(30組案例分享)" https://hackmd.io/@OmniXRI-Jack/tinyML_30_porjects [] 許哲豪,"如何結合Google Colab及Intel OpenVINO來玩轉AIGC" https://omnixri.blogspot.com/2023/12/20231209devfest-taichunggoogle.html **本文同步發表在[【台灣自造者 vMaker】](https://vmaker.tw/)** --- OmniXRI 整理製作,歡迎點贊、收藏、訂閱、留言、分享, ###### tags: `vMaker` `Edge AI`

Import from clipboard

Paste your markdown or webpage here...

Advanced permission required

Your current role can only read. Ask the system administrator to acquire write and comment permission.

This team is disabled

Sorry, this team is disabled. You can't edit this note.

This note is locked

Sorry, only owner can edit this note.

Reach the limit

Sorry, you've reached the max length this note can be.
Please reduce the content or divide it to more notes, thank you!

Import from Gist

Import from Snippet

or

Export to Snippet

Are you sure?

Do you really want to delete this note?
All users will lose their connection.

Create a note from template

Create a note from template

Oops...
This template has been removed or transferred.
Upgrade
All
  • All
  • Team
No template.

Create a template

Upgrade

Delete template

Do you really want to delete this template?
Turn this template into a regular note and keep its content, versions, and comments.

This page need refresh

You have an incompatible client version.
Refresh to update.
New version available!
See releases notes here
Refresh to enjoy new features.
Your user state has changed.
Refresh to load new user state.

Sign in

Forgot password

or

By clicking below, you agree to our terms of service.

Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
Wallet ( )
Connect another wallet

New to HackMD? Sign up

Help

  • English
  • 中文
  • Français
  • Deutsch
  • 日本語
  • Español
  • Català
  • Ελληνικά
  • Português
  • italiano
  • Türkçe
  • Русский
  • Nederlands
  • hrvatski jezik
  • język polski
  • Українська
  • हिन्दी
  • svenska
  • Esperanto
  • dansk

Documents

Help & Tutorial

How to use Book mode

Slide Example

API Docs

Edit in VSCode

Install browser extension

Contacts

Feedback

Discord

Send us email

Resources

Releases

Pricing

Blog

Policy

Terms

Privacy

Cheatsheet

Syntax Example Reference
# Header Header 基本排版
- Unordered List
  • Unordered List
1. Ordered List
  1. Ordered List
- [ ] Todo List
  • Todo List
> Blockquote
Blockquote
**Bold font** Bold font
*Italics font* Italics font
~~Strikethrough~~ Strikethrough
19^th^ 19th
H~2~O H2O
++Inserted text++ Inserted text
==Marked text== Marked text
[link text](https:// "title") Link
![image alt](https:// "title") Image
`Code` Code 在筆記中貼入程式碼
```javascript
var i = 0;
```
var i = 0;
:smile: :smile: Emoji list
{%youtube youtube_id %} Externals
$L^aT_eX$ LaTeX
:::info
This is a alert area.
:::

This is a alert area.

Versions and GitHub Sync
Get Full History Access

  • Edit version name
  • Delete

revision author avatar     named on  

More Less

Note content is identical to the latest version.
Compare
    Choose a version
    No search result
    Version not found
Sign in to link this note to GitHub
Learn more
This note is not linked with GitHub
 

Feedback

Submission failed, please try again

Thanks for your support.

On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

Please give us some advice and help us improve HackMD.

 

Thanks for your feedback

Remove version name

Do you want to remove this version name and description?

Transfer ownership

Transfer to
    Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

      Link with GitHub

      Please authorize HackMD on GitHub
      • Please sign in to GitHub and install the HackMD app on your GitHub repo.
      • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
      Learn more  Sign in to GitHub

      Push the note to GitHub Push to GitHub Pull a file from GitHub

        Authorize again
       

      Choose which file to push to

      Select repo
      Refresh Authorize more repos
      Select branch
      Select file
      Select branch
      Choose version(s) to push
      • Save a new version and push
      • Choose from existing versions
      Include title and tags
      Available push count

      Pull from GitHub

       
      File from GitHub
      File from HackMD

      GitHub Link Settings

      File linked

      Linked by
      File path
      Last synced branch
      Available push count

      Danger Zone

      Unlink
      You will no longer receive notification when GitHub file changes after unlink.

      Syncing

      Push failed

      Push successfully