GooglePi
在網路上看到這篇文章,覺得很有興趣,Google Cloud 提供了$300 鎂 的免費試用,因此可以來試試。原本我還在學習圖型辨識,但我想最近AI 越來越強,自己也不是這領域的專家,與其重新學習去當巨人,不如直接站在巨人的肩頭上,看能不能當個巨人肩頭上的寄生蟲。
這裡有官方網頁的教學說明,更清楚:Overview
照著實作
第一步:啟動你的 RPi3
第二步:在Google Cloud 上設定 Google Assistant API
申請完 Google Clound後,首先新增一個專案
然後在Google Could Platform 上 選取 「API 管理員」裡的 「資訊主頁」
點選 在資訊主頁裡有項 「啟用API」
點選後,它會跳到 「API管理員」的 「資料庫」頁面,在搜尋欄裡,輸入「google assistant」,就可以看到 Google 自動幫你在它提供的100多個API 裡 filte 出來。 直接點選下面 filte 出來的 「Google Assistant API」
會看到頁面上針對 「Google Assistant API」的介紹與說明,然後點選頁面上的「啟用」
上面說明 「Google Assistant API」它使用的是 OAuth 2.0 的方式來存取使用者資料,因為它需要存取我們輸入給它的語音資料,因此需要授權。
點選 「OAuth 同意畫面」,如果沒有這個畫面,那先點選到「資料庫」,再點選「憑證」,應該就會有了。
點選「建立憑證」裡的 「OAuth 用戶端ID」
選擇「其它」,名稱用 google-assistant-rpi3, 或你自己取一個。
然後按 「建立」。
按下「確定」後,就可以看到你新建立的憑證。
第三步:在RPi 上設定 Google Assistant(不過我是在Mac上設定)
首先設定 Python 的 虛擬環境。真的很神奇,現在連程式語言都提供虛擬環境讓你測試,避免像我這種初學者把環境弄得亂七八糟,搞不回來。虛擬環境搞亂了,就刪掉重來就好。
在mac 下,用home-brew 下載 portaudio 模組
然後啟用python虛擬環境,我用的是 virtualenv , 你可以看到 它會新建立一個叫 myenv 的環境:
之後就可以啟動我們的虛擬環境了⋯⋯
你會看到前面的提示符號多了一個 (myenv),即表示我們已經進入虛擬環境內。
接下來就可以安裝 Google Assistant SDK
切換到 ./myenv/bin 下,可以看到已經有兩個googlesamples 的 程式:
googlesamples-assistant 和 googlesamples-assistant-auth
同時把剛才的憑證一併copy 到這裡來
接下來,我們要用 googlesamples-assistant-auth 程式來先做憑證認證。
你會發現程式少了 google.auth 模組,再安裝 google.auth 模組:
再驗證一次憑證:
又少了 requests 模組,再來裝 requests 模組:
還少了 google_auth_oauthlib 模組⋯⋯
再來裝 它 :
再驗證一次憑證:
再來裝它:
點選你要啟用的帳號,然後再「同意」即完成認證。
Browser 畫面會變成:
同時 terminal 會回到提示符號。
差不多,我們就可以試試看,記得將你的RPi或電腦接上麥克風和喇叭。
然後執行 googlesamples-assistant:
唉⋯⋯還是少了 tenacity 模組,再來裝一下:
再來執行 googlesamples-assistant:
又少了 sounddevice 模組,相信我,這是最後一個我們缺的模組了⋯⋯
用力給它執行下去吧 googlesamples-assistant:
哈哈哈哈⋯⋯
終於可以囉~
這時,你只要按下 「enter」,然後對著Mic 說你要問的東西,Google Assistant 就會從喇叭回應囉⋯⋯可惜的是,它並不懂台語或中文。
至此己完全成功,如果你聽到它回應:
“Actually there are some basic settings that need your permission first. Just go into the Google Home app for details.”
謝謝參與。