過度設計的人工智能算命師。搖晃,說話,看著ChatGPT召喚你的宇宙命運
我最近偶然發(fā)現(xiàn)了一個滿是灰塵的舊魔術8號球。它破裂了,漏出可疑的藍色液體,嘶啞地低聲呼喚著我的名字:“和我一起做點什么吧,否則我會一直縈繞在你的夢中?!憋@然,我別無選擇。
在一個純粹的靈感時刻,我決定將這個塑料神秘遺物與現(xiàn)代AI的不可阻擋的力量融合在一起。因為很明顯,一個簡單的隨機答案玩具缺少的是一個能夠生成更多隨機無意義內(nèi)容的完整ChatGPT管道。當上天交給你一個壞掉的算命師時,你就把它綁在互聯(lián)網(wǎng)上,看看會發(fā)生什么,對吧?
如果你也曾經(jīng)想過“我希望我的神奇8號球更……”自我意識”,那么這個構(gòu)建絕對適合你。
步驟1:打撈(或犧牲)一個魔法8球
突襲你的黑客空間,找一個舊的,可能壞了的魔術8號球。
如果它沒有壞,沒關系——只要明智地把它切成兩半就行了。(如果里面還滿是墨跡,請非常小心地做這件事——沒人希望意外的宇宙預言汁液弄得到處都是。)我沒有必要把我找到的那個切開,但我找到了這個有點令人尷尬的YouTube短片,它描述了那些需要幫助的人的過程。
小貼士:建議戴手套,除非你喜歡神秘藍手一個星期。
步驟2:3D打印自定義支架
打印出支架,將舒適地適合每一半的8球。
這些括號應該:
拿好你的電子設備(ESP32板,電池,麥克風等)。
提供一種方法將這兩部分擰在一起(或者讓您將它們分開),以便在代碼不可避免地出錯時進行瘋狂的調(diào)整。
第三步:減輕壓力
我想要一種方法讓Magic GPT8 Ball感覺類似于最初的Magic 8 Balls流體運動。我對裂縫的內(nèi)部沒有足夠的信心來填滿水,所以決定使用次佳的東西——沙子。
在8號球的一半里裝滿沙子——或者小石子,或者你剩下的希望和夢想——直到它裝滿2/3。
用熱熔膠把它封起來(萬能的萬能膠)。這個重量確保你的魔術GPT8球不會飄走或感覺太薄。
然后添加更多的熱熔膠,并將3D打印件放在每一面的頂部
警告:如果你加了太多的沙子,你就有可能把你的8號球變成石頭。目標是保持足夠的重量,讓沙子在你旋轉(zhuǎn)的時候移動
第四步:連接電子設備
是時候把你的新像素、振動馬達、模擬麥克風和電源開關組合成一個電路了:
Neopixel (WS2812B):
將Data引腳連接到微控制器(圖示中的GPIO3)。
相應連接VCC和GND。注意那些極性標記!
振動電機:
兩個總比一個好(比如立體震動)。
每個電機的正極引線連接到電機驅(qū)動器引腳(GPIO5和GPIO13),與微控制器接地。
為了盡量減少電線,我為振動電路創(chuàng)建了一個單層PCB。用臺式數(shù)控車床把它們銑出來。Gerber文件位于存儲庫中
麥克風(MAX9814):
VDD接3.3V, GND接GND,輸出引腳接模擬輸入(ADC用GPIO2)。
電源開關:
把它接上線,這樣你就可以關掉這個裝置了。
第五步:把它密封在8號球里
小心地把所有東西放到上半部分。
熱膠固定組件,這樣當你搖它的時候它們就不會發(fā)出嘎嘎聲。
步驟6:克隆存儲庫
啟動您的終端(或Git GUI)并運行:
步驟7:設置您的val.town帳戶
頭越過toval。并創(chuàng)建一個帳戶。
部署包含的val.town.js函數(shù)。這將在云中處理ChatGPT查詢。
步驟8:配置環(huán)境變量
OpenAI憑據(jù):在val.town設置中,使用仔細拼寫的OPENAI_API_KEY密鑰、OPENAI_ORG_ID和VALID_DEVICE_TOKEN設置環(huán)境。
設備。env文件:在本地項目中,將新的val.town端點與DEVICE_TOKEN一起添加到.env中。使用。env。作為啟動器的存儲庫中的示例。
步驟9:用PlatformIO閃存固件
在Visual Studio Code中使用PlatformIO擴展打開該項目。
如果需要,安裝依賴項:
查看日志,尋找成功的跡象或滑稽的錯誤信息。如果一切順利,你將擁有一個注入人工智能的球體,隨時準備噴出可疑的智慧!
第十步:打開它,搖一搖你是認真的
啟動你的全新魔法GPT8球。
搖、搖、滾——內(nèi)置的陀螺儀會感應到你的動作,并提示設備開始錄音。你會注意到它在錄音,因為設備會說“現(xiàn)在說話……”
堅定地說出你的問題(也許還有一點天賦)。
在說出你的問題后,設備將花費大約6秒的時間將你的問題發(fā)送到Val.town,然后收到回復。在此期間,設備將過渡到思考狀態(tài)
最后,凝視發(fā)光的顯示器,直到ChatGPT提供你的宇宙真相。
LED狀態(tài)指示燈
魔術(GPT)8球包括一個RGB LED作為快速診斷工具。
本文編譯自hackster.io